동적 쿼리문이란?
- JSTL과 같이 <if> <when> <otherwise>를 사용하여 쿼리를 동적으로 사용할 수 있다.
예시)
<when test = '조건식'>
<when test = "조건식" >
- 자주 실수하는 부분 -
조건식에서 연산자 사용시 && || 가 아닌 and , or 를 사용
JSTL형태로 Mybatis에서 작성하는 경우
아래의 코드를 보면 Mapper에 choose 와 when , otherwise가 작성된것을 볼 수 있다 만약에 DAO에서 넘겨준 GAME_LEVEL의 값이 1단계일 경우 초보 , 2단계 일 경우 중수, 3단계 일 경우 고수로 데이터베이스에 저장된다
<insert id="insertGame" parameterType="String">
INSERT INTO GAME_EX (
GAME_LEVEL,
GAME_NAME)
VALUES (
<choose>
<when test="productName.equals('1단계')">
"초보"
</when>
<when test="productName.equals('2단계')">
"중수"
</when>
<when test="productName.equals('3단계')">
"고수"
</when>
<otherwise>
"게임을 시작해주세요"
</otherwise>
</choose>
,
#{GAME_NAME} )
</insert>
'몰아 넣기' 카테고리의 다른 글
[JAVA/Spring] @Autowired ,@Inject , @Resource 사용하기 (0) | 2021.08.03 |
---|---|
[JAVA/Spring] xml 파일을 통해 bean 설정하기! (0) | 2021.08.03 |
[JAVA/Spring/MyBatis] resultMap 이란? (0) | 2021.07.28 |
apache-tomcat 설치 및 설정 (0) | 2021.07.28 |
JDK 초기 환경설정 (0) | 2021.07.28 |