- 2024.02.24.금.day382024년 02월 23일 11시 48분 45초에 업로드 된 글입니다.작성자: 202401to07
마이바티스 프레임 웍
-라이브러리 사용해서 보자 sql실행하는 '구조적으로 jdbc dao구현'
반복되는 코드를 없애보자 (swl파라미터와 자바 객체의 매핑)
-마이바티스는 jdbc로 처리하는 상당부분의 코드와 파라미터 설정 및 결과 매칟ㅇ을 대신해준다
-마이바티스구현 방법 중에는 xml파일을 사용하는것이 제일 많이 사용됩니다
xml: html과 같이 태그를 사용하면 데이터를 저장합니다
단. html과 같이 지정된 태그를 사용하지 않거 여러가지 형식을
만들어내는 방법이 있습니다 .
xml파일은 설정, 데이터 저장 목적으로 사용됩니다
예시: 톰캣의 서버 port설정은 결국은 server.xml파일내용입니다마이바티스 설치
https://github.com/mybatis/mybatis-3/releases
Releases · mybatis/mybatis-3
MyBatis SQL mapper framework for Java. Contribute to mybatis/mybatis-3 development by creating an account on GitHub.
github.com
0223.txt0.00MB
tbl_custom
tbl_product
tbl_buy
이렇게 3개이다
tbl_buy- BuyDao에 selectCustomerBuyList 추가하여
selectCustomerBuyList 를 실행해보자
위의 테이블에 대한 마이바티스 Dao만들자.1단계
mybatis-config.xml에
<typeAlias type="day4.mybatis.dto.BuyDto" alias="BuyDto"/>
<typeAlias type="day4.mybatis.dto.ProductDto" alias="ProductDto"/>
<typeAlias type="day4.mybatis.dto.CustomerDto" alias="CustomerDto"/>
<typeAlias type="day4.mybatis.dto.CustomBuyDto" alias="CustomBuyDto"/>
넣고
<mapper resource="mybatis/buys.xml"/>
<mapper resource="mybatis/customer.xml"/>
<mapper resource="mybatis/products.xml"/>
넣기
2단계
dto 가 vo
xml. 가 dao
기존의 파일들 마이바티스를위한 파일로 새로 만들어서 복붙하기Dao보고 xml옮기는 법
ex) buys.xml - selectCustomerBuyList 메서드
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "https://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!-- 이 파일의 이름은 SQL 매퍼입니다. 실행할 sql만 모아놓은 파일입니다. 1. dml명령어 insert, update, delete, select과 동일한 태그에 작성하기 2. dao 메소드에서 지정했던 메소드의 인자, 리턴타입 정하기 주의 : 자바 객체의 변수(속성)명과 ${}파라미터 이름을 동일하게 해야합니다 parameterType가 Map일때는 key이름과 파라미터이름을 동일하게 해야한다. 기본형식, String은 변수 선언 키워드와 동일하게 합니다. --> <mapper namespace="tblbuy"> <!--리턴타입이 List일때에는 제너틱 타입만 설정하면 됩니다 --> <select id="selectAll" resultType="BuyDto"> select * from tbl_buy </select> <!-- insert,delete,update는 리턴타입 지정안합니다. 그래도 값은 리턴해줍니다 --> <insert id="insert" parameterType="BuyDto"> INSERT INTO TBL_BUY VALUES (buy_pk_seq.nextval, #{customid},#{pcode},#{quantity},sysdate) </insert> <update id="update" parameterType="java.util.Map"> UPDATE tbl_buy SET QUANTITY = #{quantity} WHERE BUY_IDX = #{buy_idx} </update > <delete id= "delete"> DELETE FROM tbl_buy WHERE BUY_IDX= #{buy_idx} </delete> <select id="selectCustomerBuyList" parameterType="String" resultType="CustomBuyDto"> SELECT BUY_IDX ,tb.PCODE , PNAME, PRICE, QUANTITY ,BUY_DATE FROM TBL_BUY tb JOIN TBL_PRODUCT tp ON tb.PCODE = tp.PCODE WHERE tb.CUSTOMID =#{customerid} ORDER BY BUY_DATE DESC </select> </mapper>
3단계 이제 마이바티스 dao만들기
4단계 마지막 MybatisSessionTest 을 자바로 실행하기
이제 다른 product, customer도 이렇게 하기
'보안' 카테고리의 다른 글
2024.02.27.화.day40 (0) 2024.03.04 2024.02.26.월.day39 (0) 2024.02.26 2024.02.22.목.day37 (0) 2024.02.23 2024.02.21.수.day36 (0) 2024.02.21 2024.02.20.화.day35 (0) 2024.02.20 다음글이 없습니다.이전글이 없습니다.댓글