SSM框架|SpringMVC回写数据方式方法

目录
回写数据
1、直接返回字符串
【SSM框架|SpringMVC回写数据方式方法】将字符串转成json格式回传到客户端
2、直接返回对象或集合
使用SpringMVC自动将对象或集合转化为json格式
注解方式优化转化json
mvc命名空间


回写数据 1、直接返回字符串 Web基础截断,客户端访问服务器端,如果想直接回写字符串作为响应题返回的话,只需要使用response.getWrite().print("KCandZH")即可,所以在Controller中想直接回写字符串,可以直接在方法中写入response。

方法1:通过SpringMVC框架注入的response对象,使用response.getWrite().print("hello")回写数据,此时不需要视图跳转,业务方法返回值为void
//配置类,使用注解把这个类放到容器中 @Controller @RequestMapping(value="https://www.it610.com/article/user") public class userController { @RequestMapping("/quick6") public void save6(HttpServletResponse response) throws IOException { response.getWriter().print("hello itcase"); } }

SSM框架|SpringMVC回写数据方式方法
文章图片

②将需要回写的字符串直接返回,但需要通过@ResponseBody注解告知SpringMVC框架,方法返回的字符串不是跳转某个视图,而是直接在http响应体重返回。(加上则不会进行前后缀拼接)
//配置类,使用注解把这个类放到容器中 @Controller @RequestMapping(value="https://www.it610.com/article/user") @ResponseBody//告诉SpringMVC框架不进行视图跳转,而是直接进行数据响应 public class userController { @RequestMapping("/quick7") public Stringsave7(HttpServletResponse response) throws IOException { return "hello itcase"; } }

SSM框架|SpringMVC回写数据方式方法
文章图片

将字符串转成json格式回传到客户端
user类下
package com.pojo; public class User { private int age; private String username; public User() {} public void setAge(int age) { this.age = age; }public void setName(String username) { this.username = username; } }

userController类下
//配置类,使用注解把这个类放到容器中 @Controller @RequestMapping(value="https://www.it610.com/article/user") public class userController { @RequestMapping("/quick9") @ResponseBody public String save9() throws JsonProcessingException { User user=new User(); user.setAge(30); user.setName("lisi"); //使用json的转换工具将对象转换成json格式字符串再返回 ObjectMapper objectMapper=new ObjectMapper(); String json = objectMapper.writeValueAsString(user); return json; } }

要使用json转换工具,还得导入依赖
com.fasterxml.jackson.core jackson-core 2.9.0 com.fasterxml.jackson.core jackson-databind 2.9.0 com.fasterxml.jackson.core jackson-annotations 2.9.0

运行结果
SSM框架|SpringMVC回写数据方式方法
文章图片

2、直接返回对象或集合 使用SpringMVC自动将对象或集合转化为json格式
通过SpringMVC帮助我们对对象或集合进行json字符串的转换并回写,为处理器适配器配置消息转换参数是,指定使用jackson进行对象或集合的转换,因此需要在spring-mvc.xml中进行这样配置
配置spring-mvc.xml中处理器映射器

在userController类中

//配置类,使用注解把这个类放到容器中 @Controller@RequestMapping(value="https://www.it610.com/article/user") public class userController {@RequestMapping("/quick10") @ResponseBody //配置完成处理器映射器后,SpringMVC会将USer转化为json格式 public User save10() throws JsonProcessingException { User user=new User(); user.setAge(32); user.setName("lisi2"); return user; } }

运行结果
SSM框架|SpringMVC回写数据方式方法
文章图片

注解方式优化转化json
在方法上添加@ResponseBody就可以返回json格式的字符串,但是这样配置比较麻烦,配置的代码比较多,因此,我们可以使用mvc的注解驱动代替上述配置。


在SpringMVC的各个组件中,处理器映射器、处理器适配器、视图解析器称为SpringMVC的三大组件。使用自动加载RequestMappingHandlerMapping(处理映射器)和RequestMappingHandlerAdapter(处理适配器),可用在Spring-xml.xml配置文件中使用替代注解处理器和适配器的配置。
同时使用默认底层就会集成jackson进行对象或集合的json格式字符串的转换
mvc命名空间
因为使用了mvc命名空间,所以得导入mvc

在spring-mvc.xml配置文件中

SSM框架|SpringMVC回写数据方式方法
文章图片

这样就完成了注解配置

    推荐阅读