Пример Spring 3 MVC и JSON

Пример Spring 3 MVC и JSON

В этом руководстве мы покажем вам, как выводить данные JSON в среде Spring MVC.

Используемые технологии:

  1. Весна 3.2.2. ВЫПУСК

  2. Джексон 1.9.10

  3. JDK 1.6

  4. Затмение 3.6

  5. Maven 3

_P.S In Spring 3, to output JSON data, just puts Jackson library in the project classpath.
_

1. Зависимости проекта

Получите зависимости Jackson и Spring.

pom.xml


    4.0.0
    com.example.common
    SpringMVC
    war
    1.0-SNAPSHOT
    SpringMVC Json Webapp
    http://maven.apache.org

    
        3.2.2.RELEASE
        1.9.10
        1.6
    

    

        
        
            org.springframework
            spring-core
            ${spring.version}
        

        
            org.springframework
            spring-web
            ${spring.version}
        

        
            org.springframework
            spring-webmvc
            ${spring.version}
        

        
        
            org.codehaus.jackson
            jackson-mapper-asl
            ${jackson.version}
        

    

    
        SpringMVC
        
          
            org.apache.maven.plugins
            maven-eclipse-plugin
            2.9
            
                true
                false
                2.0
            
          
          
            org.apache.maven.plugins
            maven-compiler-plugin
            2.3.2
            
                ${jdk.version}
                ${jdk.version}
            
          
        
    

2. модель

Простой POJO, позже выведите этот объект как данные в формате JSON.

package com.example.common.model;

public class Shop {

    String name;
    String staffName[];

    //getter and setter methods

}

3. контроллер

Добавьте@ResponseBody в качестве возвращаемого значения. Вен Спринг видит

  1. Библиотека Джексона существует в пути к классам проекта

  2. mvc:annotation-driven включен

  3. Метод возврата с аннотацией @ResponseBody

Spring автоматически обработает преобразование JSON.

JSONController.java

package com.example.common.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;
import com.example.common.model.Shop;

@Controller
@RequestMapping("/kfc/brands")
public class JSONController {

    @RequestMapping(value="{name}", method = RequestMethod.GET)
    public @ResponseBody Shop getShopInJSON(@PathVariable String name) {

        Shop shop = new Shop();
        shop.setName(name);
        shop.setStaffName(new String[]{"example1", "example2"});

        return shop;

    }

}

4. MVC: аннотация привод

Включитеmvc:annotation-driven в XML-файле конфигурации Spring.

mvc-dispatcher-servlet.xml



    

    

Скачать исходный код

Скачать -SpringMVC-Json-Example.zip (21 КБ)