// Grid 출력하기
jQuery(document).ready(function(){
	jQuery("#list1").jqGrid({
		url:'bbsListAjax',
		datatype: 'json',
		mtype: 'POST',
		 jsonReader : { 
				page: "page", 
				total: "total", 
				root: "rows", 
				records: function(obj){return obj.length;},
				repeatitems: false, 
				id: "bbs_no"
			},
		colNames:['수정일자','게시글번호','입력구분','등록일자', '등록자','제목','내용'],
		colModel:[
          	{name:'MODI_DATE',index:'MODI_DATE', width:100, align:"center"},
          	{name:'BBS_NO',index:'BBS_NO', width:80, align:"center"},
          	{name:'BBS_DV_CD',index:'BBS_DV_CD', width:150, align:"center"},
          	{name:'REG_DATE',index:'REG_DATE', width:150, align:"center"},
          	{name:'REG_NO',index:'a.auth_nm', width:150, align:"center"},
          	{name:'SUBJECT',index:'SUBJECT', width:60, align:"center"},
          	{name:'CONTENT',index:'CONTENT', width:150, align:"center"},
        ],
		rowNum:20,
		autowidth: true,
		height:'auto',
		pager: jQuery('#pager1'),
		sortname: 'BBS_NO',
		viewrecords: true,
		sortorder: "desc",
		caption:"게시글목록",
		onSelectRow: function(id){
			if (id)	{
				ajaxEdit(id);
			}
		}
	}).navGrid("#pager1",{search:false,edit:false,add:false,del:false});			

});

데이터를 Json 객체로 받아와 화면에 JqGrid로 출력하려고 하는데 화면에 아무것도 출력되지 않았다.

DB에 아에 샘플 데이터가 없는 경우에는 다음과 같이 문제 없이 파싱이 잘 됐는데 샘플 데이터가 있는 경우에는 파싱이 되지 않는 것을 크롬 개발자 도구를 통해 확인할 수 있었다.

파싱 성공
파싱 실패

{"total":1,"record":1,"page":1,"rows":[{"MODI_DATE":"2020-02-02 02:02:02.0","BBS_NO":"1","BBS_DV_CD":"1","REG_DATE":"2020-06-19 00:16:08.0","SUBJECT":"This is Test","DEL_DATE":"2033-03-03 03:03:03.0","CONTENT":"I have a parsing problem"}]}

Json 객체를 보니 TIMESTAMP에 소수점까지 표시되고 있는걸 확인했다.

SQL SELECT문에서 날짜와 관련된 칼럼명을 모두 지우자 다음과 같이 문제없이 파싱이 되었다.

이를 해결하기 위해 mapper.xml에서 SELECT문에서 BBS.MODI_DATE를 다음과 같이 고치자 소수점이 더 이상 출력되지 않았고 파싱도 문제 없이 잘 되었다.

SELECT
	DATE_FORMAT(BBS.MODI_DATE,'%Y-%m-%d %H:%i:%s') AS MODI_DATE

+ Recent posts