땅콩북스프로젝트

검색시 날짜값이 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에서는 붙일 필요가 없었다.....

간단히 해결되었음..........오라클 나빳어!!!!