Springmvc 简明教程

Spring MVC - Generate JSON Example

以下示例展示如何使用 Spring Web MVC 框架生成 JSON。首先,让我们有一个正在运行的 Eclipse IDE,并考虑以下步骤以使用 Spring Web 框架开发一个可动态创建表单的 Web 应用程序 -

The following example shows how to generate JSON using the Spring Web MVC Framework. To start with, let us have a working Eclipse IDE in place and consider the following steps to develop a Dynamic Form based Web Application using the Spring Web Framework −

Step

Description

1

Create a project with a name TestWeb under a package com.tutorialspoint as explained in the Spring MVC - Hello World chapter.

2

Create a Java classes User, UserController under the com.tutorialspoint package.

3

Download Jackson libraries Jackson Core, Jackson Databind and Jackson Annotations from maven repository page. Put them in your CLASSPATH.

4

The final step is to create the content of all the source and configuration files and export the application as explained below.

User.java

package com.tutorialspoint;

public class User {
   private String name;
   private int id;
   public String getName() {
      return name;
   }
   public void setName(String name) {
      this.name = name;
   }
   public int getId() {
      return id;
   }
   public void setId(int id) {
      this.id = id;
   }
}

UserController.java

package com.tutorialspoint;

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;

@Controller
@RequestMapping("/user")
public class UserController {

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

      User user = new User();

      user.setName(name);
      user.setId(1);
      return user;
   }
}

TestWeb-servlet.xml

<beans xmlns = http://www.springframework.org/schema/beans"
   xmlns:context = http://www.springframework.org/schema/context"
   xmlns:xsi = http://www.w3.org/2001/XMLSchema-instance"
   xmlns:mvc = http://www.springframework.org/schema/mvc"
   xsi:schemaLocation =
   http://www.springframework.org/schema/beans
   http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
   http://www.springframework.org/schema/context
   http://www.springframework.org/schema/context/spring-context-3.0.xsd
   http://www.springframework.org/schema/mvc
   http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd">
   <context:component-scan base-package = com.tutorialspoint" />
   <mvc:annotation-driven />
</beans>

在这里,我们创建了一个简单的 POJO User,并且在 UserController 中,我们返回了 User。Spring 会根据 RequestMapping 和类路径中存在的 Jackson jar 自动处理 JSON 转换。

Here, we have created a Simple POJO User and in UserController we have returned the User. Spring automatically handles the JSON conversion based on RequestMapping and Jackson jar present in the classpath.

创建源文件和配置文件后,导出应用程序。右键单击应用程序,使用 Export → WAR File 选项,将你的 TestWeb.war 文件保存到 Tomcat 的 webapps 文件夹中。

Once you are done with creating source and configuration files, export your application. Right click on your application, use Export → WAR File option and save your TestWeb.war file in Tomcat’s webapps folder.

现在,启动 Tomcat 服务器,确保可以使用标准浏览器访问 webapps 文件夹中的其他网页。尝试一个 URL - http://localhost:8080/TestWeb/mahesh ,我们将看到以下屏幕。

Now, start the Tomcat server and make sure you are able to access other webpages from the webapps folder using a standard browser. Try a URL – http://localhost:8080/TestWeb/mahesh and we will see the following screen.

spring json result