Spring MVC作为时下最流行的前端开发框架之一,对JSON数据的返回提供了良好的支持,配置完成后什么都不用管靠注解就可以轻松返回JSON格式的数据。本文为小伙伴们带来Spring MVC知识中的硬货—Spring MVC返回json数据三种方式。
在正式介绍这三种Spring MVC返回json数据的方式之前,我们需要做一些简单的准备工作。首先我们明确一下Maven配置文件应该添加哪些包?除了Spring MVC的核心包之外,还要加上JSON相关的依赖。此外,Spring配置文件中除了和视图相关的bean要配置外,还需要配置和JSON有关的bean。
最后一步准备工作—创建model类
package com.learn.model;
public class User {
private String name;
private String id;
private String email;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
}
下面是Spring MVC返回json数据的三种方式:
先创建一个Controller,这也是下面几种方式要用到的。
package com.learn.Controller;
import com.learn.model.User;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
@RequestMapping("json")
@Controller
public class UserController {
}
然后直接在控制器内加上下面的代码:
@RequestMapping(value = "/user/first")
@ResponseBody
public User getUserJSONInfo(){
System.out.println("请求JSON数据!!!");
User user = new User();
user.setName("today");
user.setId("10086");
user.setEmail("123@gmail.com");
return user;
}
在上面的代码中,有 @ResponseBody注解,表明此方法返回的不是视图,而直接是responseBody。这个方法返回的是User类型的对象,但是在运行过程中会被自动转变成JSON对象返回给前端。
运行结果:
在控制器中加上如下代码:
@RequestMapping(value="/user/second")
public ResponseEntity getUserJSONInfo2(){
User user = new User();
user.setId("10086111");
user.setName("second");
user.setEmail("second@gmail.com");
return new ResponseEntity(user, HttpStatus.OK);
}
运行结果:
这个方法很简单,就是自己把返回格式设成json格式就可以了
在控制器中加入如下代码:
@RequestMapping(value = "/user/third")
public void getUserJSONInfo3(HttpServletResponse response) throws IOException {
response.setContentType("application/json");
response.getWriter().println("{\"name\":\"third\",\"id\":\"10086\",\"email\":\"third@gmail.com\"}");
运行结果:
总的来说,Spring MVC返回json数据三种方式还是不难掌握的,相对于其他的复杂知识点还是很好理解的。当然,如果想要深入了解Spring MVC知识体系的小伙伴可以观看本站的Spring MVC视频教程,学习更多精彩给力的Spring MVC知识!
QCode09-04 14:38
Code大师09-04 14:50
不写代码你养我啊08-23 11:14
不写代码你养我啊09-17 18:02
要学习了06-18 18:13