Configuration
typeAliases를 사용해서 자주 사용하는 type 의 별칭을 등록해 놓고 Mapper xml에서 사용할 수 있다.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<!-- 자주 사용하는 type 의 별칭을 등록해 놓고 Mapper xml에서 사용할 수 있다. -->
<typeAliases>
<typeAlias type="com.gura.step03.member.dto.MemberDto" alias="memberDto"/>
</typeAliases>
<!-- 사용할 Mapper xml 문서 등록하기 -->
<mappers>
<mapper resource="com/gura/step03/mybatis/MemberMapper.xml"/>
<mapper resource="com/gura/step03/mybatis/TodoMapper.xml"/>
</mappers>
</configuration>
기존 MemberMapper.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="member">
<insert id="insert" parameterType="com.gura.step03.member.dto.MemberDto">
INSERT INTO member
(num, name, addr)
VALUES(member_seq.NEXTVAL, #{name}, #{addr})
</insert>
<update id="update" parameterType="com.gura.step03.member.dto.MemberDto">
UPDATE member
SET name=#{name}, addr=#{addr}
WHERE num=#{num}
</update>
<delete id="delete" parameterType="int">
DELETE FROM member
WHERE num=#{num}
</delete>
<!-- resultType="select 된 row 하나를 담을 데이터 type" -->
<select id="getData" parameterType="int"
resultType="com.gura.step03.member.dto.MemberDto">
SELECT num, name, addr
FROM member
WHERE num=#{num}
</select>
<select id="getList" resultType="com.gura.step03.member.dto.MemberDto">
SELECT num, name, addr
FROM member
ORDER BY num ASC
</select>
</mapper>
변경된 MemberMapper.xml
parameterType 를 configuration에서 typeAliases로 등록해둔 것으로 변경
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="member">
<insert id="insert" parameterType="memberDto">
INSERT INTO member
(num, name, addr)
VALUES(member_seq.NEXTVAL, #{name}, #{addr})
</insert>
<update id="update" parameterType="memberDto">
UPDATE member
SET name=#{name}, addr=#{addr}
WHERE num=#{num}
</update>
<delete id="delete" parameterType="int">
DELETE FROM member
WHERE num=#{num}
</delete>
<!-- resultType="select 된 row 하나를 담을 데이터 type" -->
<select id="getData" parameterType="int"
resultType="memberDto">
SELECT num, name, addr
FROM member
WHERE num=#{num}
</select>
<select id="getList" resultType="memberDto">
SELECT num, name, addr
FROM member
ORDER BY num ASC
</select>
</mapper>
'spring > spring' 카테고리의 다른 글
Step03_MyBatis (aspect) (0) | 2022.09.02 |
---|---|
스프링 프레임 워크 개념 정리 (0) | 2022.09.02 |
Step03_MyBatis ( @service ) (0) | 2022.09.01 |
Step03_MyBatis (ModelAndView, redirect) (0) | 2022.09.01 |
Step03_todo list 만들기 (0) | 2022.08.31 |