쓸만한 JSP 홈페이지 만들기
file-query.xml
엉으니
2019. 6. 21. 19:28
첨부파일에 해당하는 모든 쿼리를 여기에 모아놓는다.
첨부파일은 공통기능으로 만든다. 첨부파일 외의 공통기능은 이런식으로 정의하면 되겠다.
<mapper namespace="common.file">
<sql id="defaultWhere">
<if test="delYn != '' and delYn != null">
AND A.DEL_YN = #{delYn}
</if>
<if test="tempYn != null and tempYn != ''">
AND B.TMP_YN = #{tempYn}
</if>
</sql>
<select id="selectAtchFileId" resultType="fileVO">
SELECT IFNULL(MAX(ATCH_FILE_ID), 0)+1 FROM YE_ATCH_FILE
</select>
<select id="selectFileInfo" parameterType="fileVO" resultType="fileVO">
SELECT A.ATCH_FILE_ID atchFileId
, A.FILE_DTL
, A.USE_YN useYn
, A.REG_DATE regDate
, A.TMP_YN tempYn
FROM YE_ATCH_FILE A
</select>
<select id="selectFile" parameterType="fileVO" resultType="fileVO">
SELECT A.ATCH_FILE_ID atchFileId
, A.TMP_YN tempYn
, B.FILE_SEQ fileSeq
, B.ORGIN_FILE_NM orginFileNm
, B.STRGE_FILE_NM strgeFileNm
, B.STRGE_PATH strgePath
, B.FILE_EXT fileExtsnmn
, B.FILE_SZ fileSize
, B.FILE_DTL fileDesc
, B.REG_DATE regDate
FROM YE_ATCH_FILE A INNER JOIN YE_ATCH_FILE_DTL B ON A.ATCH_FILE_ID = B.ATCH_FILE_ID
WHERE A.ATCH_FILE_ID = #{atchFileId}
<include refid="defaultWhere"/>
ORDER BY B.FILE_SEQ ASC
</select>
</mapper>
defaultWhere을 정의하여 단순히 복붙하여 소스를 만들기 쉽게 했다.
추후에 공통으로 적용할 조건이 있으면 include문을 사용하여 불러올 수 있다.
반응형