땅콩북스프로젝트
검색시 날짜값이 null일때 매핑과 if문
나이많은 초보
2022. 10. 31. 16:04
지금 하는건 날짜로 검색할수 있는 부분을 코딩중!!! 날짜도 기본일테니깐 만들어봐야지...
input type=date가 있어서 값구하기는 쉬울껏 같은데
문제는 처음에 date값이 들어오지 않을 때 즉 null 일때 mapping 어떻게 해야하는것인가????
controller에서 날짜를 어떻게 줘야하나....
요즘은 계속 date와 싸우고 있다..ㅠㅠ
// if(csDate==null) {
// SimpleDateFormat sdf=new SimpleDateFormat("yy/MM/ss HH:mm:ss");
// cs.setCsDate(sdf.parse("00/00/00"));
// System.out.println(cs.getCsDate());
// }else {
cs.setCsDate(csDate);
// }
처음에 사실 이렇게 date값을 지정하고 싶었는데 암먹힘다......안먹힐 줄은 알았는데 똥도 먹어봐야 하니깐ㅋㅋ
string으로 변환될때는 simpledateformat이 먹히는데 그걸 다시 date할때는 그냥 null
null을 어떻게 매핑에 연결하는냐가 나왔는데......
<if test="csMemberId.toString()!='notId' and csDate.toString()=='00-00-00'"> 했는데 아닌 것 같고
<if test="csMemberId.toString()!='notId' and csDate=='null'">
1은 어쨋든 아니고........2번도 안되고......
일딴 결과는 이렇게 결론이 났음당!
cs.setCsDate(csDate);
컨트롤러에서는 어차피 null도 받고 날짜 값도 받을거라서 그냥 둔다.
/* $('input[type="date"]').val(); ==> '2022-10-24' */
이렇게 받을꺼니깐~~
<if test="csDate==null and csMemberId.toString()=='notId'">CS_RESULT !='N'</if>
<if test="csDate!=null and csMemberId.toString()=='notId'">TO_CHAR((CS_DATE),'YYYY-MM-DD')=${csDate } AND CS_RESULT !='N'</if>
<if test="csDate==null and csMemberId.toString()!='notId'">CS_MEMBERID=${csMemberId } AND CS_RESULT !='N'</if>
mapping에서 이렇게 조건을 달아줍니다....
나의 무식은 ==null에서 ' ' 자꾸 붙였다는것! null에서는 붙일 필요가 없었다.....
간단히 해결되었음..........오라클 나빳어!!!!