하단거 결국은 다른 페이지에서 똑같은 문제가 발생하였다.

날짜가 너무 길다.

/* '<td><fmt:formatDate value="${'+result[i].putDate+'}" pattern="yyyy년MM월dd일" /></td>'+ */

 

10월 27, 2022 11:41:30 오전 org.apache.catalina.core.ApplicationDispatcher invoke
심각: 서블릿 [jsp]을(를) 위한 Servlet.service() 호출이 예외를 발생시켰습니다.
javax.el.ELException: Cannot convert [+result[i].putDate+] of type [class java.lang.String] to [class java.util.Date]

역시나...안된다......데이터를  json으로 받아와서 json이 String인가....그런가........그런가보다..싶다.

핑퐁게임이 시작되었다..!!!

 

for(int i=0;i<wrList.size();i++) {
				WriterPay wp=wrList.get(i);
				String date=sdf.format(wp.getPutDate());
				try {
					wp.setPutDate(sdf.parse(date));
				} catch (ParseException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}
				wrList.set(i,wp);

controller에서 다시 날짜 형식을 변경해본다.

뭐지...되긴했는데.....뭔가 망가진 느낌!!!!!!!!!!!!

다시 data와 시키면 원상복구됨.........아무리 뭘해도 원상복구된다.. 된장!

다시 검색과의 씨름.......도대체 변경은 왜이렇게 안되는거야!!!!!!!!

그러던 와중!! 드뎌 발견..

https://jsikim1.tistory.com/196

 

day.js 사용 방법 - JavaScript 날짜 라이브러리

day.js 사용 방법 - JavaScript 날짜 라이브러리 day.js 는 많은 JavaScript 날짜 관련 라이브러리중 가장 가벼운 라이브러리입니다. 업데이트가 중단된 moment.js 보다 약 33배 가벼우며, immutable 한 구조라서.

jsikim1.tistory.com

 

드뎌 이분의 글을 발견하게 되었다.

<script src="https://cdnjs.cloudflare.com/ajax/libs/dayjs/1.10.7/dayjs.min.js"></script> 한줄 넣고

var date=dayjs(result[i].putDate,"yyyy-MM-dd HH:mm:ss");
var wrdate=date.format("YYYY.MM.DD. HH:mm:ss");
var a='<tr>'+
 '<td>'+result[i].wrpayNo+'</td>'+
 '<td>'+result[i].memberId+'</td>'+
 '<td>'+result[i].seriesNo+'</td>'+
 '<td>'+result[i].ori_bookNo+'</td>'+
 '<td>'+result[i].changeP+'</td>'+
 '<td>'+result[i].payment+'</td>'+							
 '<td>'+wrdate+'</td>'+
 '<td>'+result[i].bankName+'</td>'+
 '<td>'+result[i].bankNo+'</td>';

변경을 직접 td사이에 넣으려니 에러난다........돌아가자...현명하게....점심시간 다 되어가서 지쳐간다.....ㅋㅋㅋvar로 넣고

돌렸더니.

 

행복해졌다!!!!!!!!!! 이제 밥먹으러 가야것다.

 

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

그동안 배웠던 챕터를 기준으로 올렸었는데....지금은 그렇게 나누기가 모호해서 프로젝트 부분으로 올려본다.

일을 하다보면 날짜 표기를 내맘대로 해야하는데 그방법을 정리 해본다.

 

List<Consult> conList = cService.nowChatList(titleNo);		
		JSONArray jsonArr = new JSONArray();

		if (!(conList.isEmpty())) {
			for( int i=0; i<conList.size(); i++) { 
				Consult consult = conList.get(i);				
				JSONObject jsonObj = new JSONObject();
				jsonObj.put("consultNo",consult.getConsultNo()); 	
				jsonObj.put("cMemberId",consult.getcMemberId()); 			
				jsonObj.put("cContexts", consult.getcContexts());
				//데이트형 문자열로 바꾸기
				SimpleDateFormat format1=new SimpleDateFormat("HH:mm:ss");
				String cDate="";					 
				cDate=format1.format(consult.getcDate());					
				jsonObj.put("cDate",cDate); 
				jsonArr.add(jsonObj);				
			}

simpleDateFormat....형식으로 바꿔서 ...잘 써먹었으나.....json이아니라 conList인  list에 다시 넣어주려니 

string이라고 빨간 x가 난리다. data로 바꾸면 string으로 바꾸고 string으로 하면 date 안된다고 한다....어쩌라는 것인가!!!!!

아직 지식부족으로 해결이 안되어서 강사님 찬스!!!!!

<fmt:formatDate value="${PeanutPoint.ppDate }" pattern="yyyy년MM월dd일 HH시 mm분 ss초" />

jsp화면에서 이거 한줄 넣으니 간편하게 변경되었다........

오라클에서 입력시 변경하는 것은 앞서서 했는데 그냥 sysdaya 쓰고 jsp에서 하는게 빠르고 간편할것같다....

괜시리 controller에서 바꾸느라 이것도 2시간 걸렸다.

+ Recent posts