<resultMap id="noticeMap" id="noticeResultMap" />
<result column="NOTICE_NO" property="notice_no"
<resultMap>
<select id="noticeSelect" resultMap="noticeResultMap">
SELECT * FROM NOTICE WHERE NOTICE_NO = #{notice_no}
</select>
resultMap은 vo 및 DTO를 사용하여 정해진 형태의 값들을 처리할 때 사용 컬럼이름을 as를 사용하지 않고 변경하여 사용할 수 있으며 resultMap을 사용할 시에는 resultMap의 id를 작성해야한다.
<resultMap type="hashMap" id="noticeResultMap" /><resultMap>
<select id="selectNotice" resultMap="noticeResultMap">
SELECT * FROM NOTICE WHERE NOTICE_NO = #{notice_no}
</select>
hashMap으로 가져올 수 있고 이 방법의 반환 값은 Map으로 qksghks ehlsmsep key값이
데이터베이스 컬럼명과 동일해진다. 따라서, jsp에서 사용ㅇ할 경우 key값을 대문자로 적어야 한다.
<p>게시글 번호 : ${notice.NOTICE_NO}
parameterMap은 vo를 사용하여 정해진 형태의 값들을 sql문에 전달아혀 사용할 때 사용한다.
<parameterMap id="noticeMap" type="notice.project.com.vo.noticeVO" />
<select id="noticeSelect" parameterMap="noticeMap">
SELECT * FROM NOTICE WHERE NOTICE_NO = #{notice_no}
</select>
resultType: 조회 결과 값을 저장하기 위한 데이터 타입 / 결과값이 여러개라면 domain의 class 형식으로 지정해주며 하 나일 시 자료형으로 지정한다.
parameterType: 전달받은 파라미터 데이터 타입 지정 / 전달받는 파라미터가 여러개라면 domain의 class 형식으로 지정 해주며 하나일 시 자료형으로 지정한다.
parameterType은 해당 파라미터의 자료형을 명시해준다.
<!-- 숫자형 -->
<select id="noticeSelect" parameterType="java.lang.Integer">
SELECT * FROM NOTICE WHERE NOTICE_NO = #{notice_no}
</select>
<!-- 문자형 -->
<select id="noticeSelect" parameterType="java.lang.String">
SELECT * FROM NOTICE WHERE NOTICE_NM = #{notice_nm}
</select>
resultType
<!-- 숫자형 -->
<select id="noticeSelect" resultType="java.lang.Integer">
SELECT * FROM NOTICE WHERE NOTICE_NO = #{notice_no}
</select>
<!-- 문자형 -->
<select id="noticeSelect" resultType="java.lang.String">
SELECT * FROM NOTICE WHERE NOTICE_NM = #{notice_nm}
</select>