티스토리 뷰
parameterType="string"
으로하고
<if test="value==''">
이게 안먹었는데 뭐 ''와 ""를 변경해서 하라는 둥 여러 이야기가 있었다.
근데 다안되어서 결국엔 아래와 같은 이유를 찾고
parameterType을 Map으로 해서 넘겨서 해결했다.
출처 : http://seongsland.tistory.com/131
- ibatis부터 있던 고질적 버그
1. ${test} <-- parameterType을 String으로 주고 java단에서 파라미터를 String으로 넘겨 줄 경우 에러 발생함.
2. #{test}는 잘됨.
3. int, map, VO등은 또 잘됨.. String만 안됨..
4. mybatis로 넘어왔는데도.. 고쳐지지 않았음.. String이 원래 그렇게 쓰면 안되는 거면.. int는 왜되냥!!
- mybatis 버그
1. map 형식으로 값을 String형식으로 1자리값(A)을 넣어서 보냄..
2. 다이나믹 쿼리에서 test="tttt = 'A'" 식으로 처리함.
3. 처리가 안됨... A를 NumberFormat 으로 변환할수 없다는 Exception만 발생함.
4. String인데 강제로 char나 Integer형으로 파싱하려한다고 생각함.
5. 다이나믹 쿼리에서 test="ttt = 'A' + ''" 식으로 처리함. 잘됨.
6. test="" 표현식 안에 들어갈수 있는 ognl 표현식을 보고 +'' 방식을 찾아냄.. 아래는 표현식 전부
"," ...
"=" ...
"?" ...
"||" ...
"or" ...
"&&" ...
"and" ...
"|" ...
"bor" ...
"^" ...
"xor" ...
"&" ...
"band" ...
"==" ...
"eq" ...
"!=" ...
"neq" ...
"<" ...
"lt" ...
">" ...
"gt" ...
"<=" ...
"lte" ...
">=" ...
"gte" ...
"in" ...
"not" ...
"<<" ...
"shl" ...
">>" ...
"shr" ...
">>>" ...
"ushr" ...
"+" ...
"-" ...
"*" ...
"/" ...
"%" ...
"instanceof" ...
"." ...
"(" ...
"[" ... <-- [] 는 배열이나 하위 속성의 값을 불러올때 쓰이는듯.. ['t']
- mybatis 에 mysql 연동시 버그 (원인은 밝히지 못했음..)
1. 가끔 컬럼들을 대문자, 소문자 중복해서 가져오는 경향이 있음.. (t1,t2,t3,T1,T2,T3 식..)
2. 가끔 컬럼들을 대문자, 소문자 섞어서 가져오는 경향이 있음.. (t1,T2, t3 식..)
- view 를 이용해서 여러 테이블을 조인했을때 이경우가 발생했음..
- jakarta project에서 Map을 확장해서 만든 라이브러리가 있는데 이것을 사용시 소문자로 일괄변경됨.
- ibatis때에도 비슷한 문제 때문에 ibatis에서 put 하는 부분을 디코딩해서 따로 소스에 포함시켜서 처리한적이 있음.
3. 가끔 컬럼의 매핑을 엉뚱하게 하는 경향이 있음..
- column t1 이 L1010 이었는데 이것을 String으로 가져오지 못함.
- mysql 쿼리에서 convert(t1 as char) 로 변환하니 String으로 제대로 처리됨.
현재 구글에서 mybatis 에 대한 이슈가 많이 올라오고 있어서 뜯어 고치느라 분주하다고 들었음..
버젼업이 되면 안정적이 될것이라 생각함.
아직은 불안한 점이 많아 보임..
'Web Development > Spring' 카테고리의 다른 글
Spring interceptor request.setAttribute 전달 (0) | 2016.10.27 |
---|---|
spring controller redirect post로 전달하는 방법 (0) | 2016.10.27 |
CSRF prevention 관련 설정 내용 입니다. (0) | 2016.08.12 |
spring interceptor request.setAttribute 전달 (0) | 2016.08.12 |
Spring AOP 예제 및 정리 (2) | 2016.04.19 |
- Total
- Today
- Yesterday
- 코루틴
- jstl foreach
- jstl 커스텀 태그
- coroutine
- java 압축 풀기
- github image 첨부시 주의할점
- Database#transaction
- JSP 세션
- POI EXCEL
- JSTL
- 전자정부프레임워크 tiles
- POE Excel 만들기
- java 폴더구조 구하기
- mybatis Merge
- spring ExcelView
- java 설정
- jstl split
- java 특정문자 갯수구하기
- java calendar
- Kotlin
- java 설치
- spring property
- MyBatis 팁
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |