Java에서 json 형태로 화면으로 떨구기

 

1. pom.xml 설정(Maven 설정)

        <!-- Ajax jQuery -->
        <dependency>
            <groupId>net.sf.json-lib</groupId>
            <artifactId>json-lib-ext-spring</artifactId>
            <version>1.0.2</version>
            <exclusions>
                <exclusion>
                    <artifactId>servlet-api</artifactId>
                    <groupId>javax.servlet</groupId>
                </exclusion>
            </exclusions>
        </dependency>

 

2. action-servlet.xml 설정

    <!-- jsonView -->
    <bean id="jsonView" class="net.sf.json.spring.web.servlet.view.JsonView" >
        <property name="contentType" value="application/json;charset=UTF-8"></property>
    </bean>

 

3. Controller 설정

    @RequestMapping(value = "/biz/mkform/mkFormListJson.do")
    public ModelAndView selectMkFormListJson(CommandMap commandMap) throws Exception {
        ModelAndView mav = new ModelAndView("jsonView");
        Map<String,Object> resultMap = mkFormService.selectUserTableList(commandMap.getMap());
        mav.addObject("resultMap", resultMap);
       
        return mav;
    }

 

4. jsp 설정

 

        jQuery.ajax({
            type:'POST',
            url:'/biz/mkform/mkFormListJson.do',     
            data:'',
            async:false,
            dataType:'json',
            success:function(data){
                document.getElementById("wow").innerHTML = data.resultMap;
            }, 
            error:function(request,status,error){ 
                alert('[' + request.status + '] 에러가 발생하였습니다.');
            }
        });

 

※ 2. action-servlet.xml 설정에서 "net.sf.json.spring.web.servlet.view.JsonView" 대신 "org.springframework.web.servlet.view.json.MappingJacksonJsonView"를 사용해도 동일하게 동작된다.

차이점으로는 정렬순서와 null을 null로 처리할지 ""으로 처리할지 정도라는데 조금 더 자세한 사항은 검색!

반응형

+ Recent posts