반응형
1) 검색처리
제목 / 내용 / 작성자 ---> 단일 항목 검색
제목 or 내용 / 제목 or 작성자 / 내용 or 작성자 / 제목 or 내용 or 작성자 ---> 다중 항목 검색
2) Mybaits의 동적 태그들
if
WHERE --('T') 제목으로 키워드 검색 <if test="type=='T'"> BOARDTITLE LIKE '%'||#{keyword}||'%' </if> --('C') 내용으로 키워드 검색 <if test="type=='T'"> BOARDCONTENTS LIKE '%'||#{keyword}||'%' </if> --('W') 제목으로 키워드 검색 <if test="type=='W'"> BOARDWRITER LIKE '%'||#{keyword}||'%' </if>
choose(when, otherwise)
WHERE --('T') 제목으로 키워드 검색 <choose> <when test="type=='T'"> BOARDTITLE LIKE '%'||#{keyword}||'%' </when> --('C') 내용으로 키워드 검색 <when test="type=='C'"> BOARDCONTENTS LIKE '%'||#{keyword}||'%' </when> --('W') 제목으로 키워드 검색 <otherwise> BOARDWRITER LIKE '%'||#{keyword}||'%' </otherwise> </choose>
where
SELECT * FROM SPRING_BOARD WHERE BOARDNUM=#{boardnum} SELECT * FROM SPRING_BOARD <where> <if test="boardnum != null"> BOARDNUM = #{boardnum} </if> </where>
trim
--prefix : 내부 문장 맨 앞에 속성으로 주어준 값이 붙여준다. SELECT * FROM SPRING_BOARD <trim prefix="WHERE"> BOARDNUM=#{boardnum} </trim> --밑의 구문과 동일함 SELECT * FROM SPRING_BOARD WHERE BOARDNUM=#{boardnum} ----------------- --prefixOverrides : 내부 문장 맨 앞에 속성으로 주어준 값이 있다면 지워준다. <trim prefixOverrides="OR"> OR BOARDTITLE=#{keyword} </trim> BOARDTITLE=#{keyword} ----------------- --suffix : 내부 문장 맨 뒤에 속성으로 주어준 값을 붙여준다. <trim suffix=")"> </trim> ) ----------------- --suffixOverrides : 내부 문장 맨 뒤에 속성으로 주어준 값이 있다면 지워준다. <trim suffixOverrides=","> BOARDTITLE=#{keyword}, </trim> BOARDTITLE=#{keyword}
foreach
String[] list = {"T","C","W"} HashMap<String, Object> datas = new HashMap<>(); datas.put("list", list); <foreach collection="list" item="type"> <if test="type=='T'"> BOARDTITLE=#{keyword} </if> ... </foreach> <foreach collection="map" index="key값" item="value값"> </foreach>
반응형
'Back-End > Spring' 카테고리의 다른 글
[Spring] 게시판 만들어보기(기획, 구성) (0) | 2021.09.03 |
---|---|
[Spring] 스프링 MVC 프로젝트의 기본 구성 (0) | 2021.09.02 |
[Spring] Exception 처리 (0) | 2021.08.31 |
[Spring] Controller 패턴과 MVC 구조 알아보기 (0) | 2021.08.30 |
[Spring] 스프링 MVC 기본 구조 (0) | 2021.08.27 |