位置: IT常识 - 正文

SpringMVC的数据响应(二)(springmvc常见问题)

编辑:rootadmin
SpringMVC的数据响应(二) 4.6.SpringMVC的数据响应-回写数据-直接回写字符串(应用)

推荐整理分享SpringMVC的数据响应(二)(springmvc常见问题),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:springmvc 数据库,springmvc怎么处理请求,springmvc响应的两种方式,springmvc数据响应,springmvc dispatcher,springmvc怎么处理请求,springmvc响应的两种方式,springmvc响应的两种方式,内容如对您有帮助,希望把文章链接给更多的朋友!

通过SpringMVC框架注入的response对象,使用response.getWriter().print(“hello world”) 回写数据,此时不需要视图跳转,业务方法返回值为void

将需要回写的字符串直接返回,但此时需要通过@ResponseBody注解告知SpringMVC框架,方法返回的字符串不是跳转是直接在http响应体中返回

@RequestMapping(value = "/login6") //请求地址 public void login6(HttpServletResponse response) throws IOException { response.setContentType("text/html;charset=UTF-8");//设置编码格式 response.getWriter().print("你好!"); } @RequestMapping(value = "/login7") //请求地址 @ResponseBody //告诉springMVC框架,该方法不进行视图跳转,直接进行数据响应 public String login7() throws IOException { return "hello world"; }4.7.SpringMVC的数据响应-回写数据-直接回写json格式字符串(应用) @RequestMapping(value = "/login8") //请求地址 @ResponseBody //告诉springMVC框架,该方法不进行视图跳转,直接进行数据响应 public String login8() throws IOException { return "{\"username\":\"NanYu\",\"age\":18}"; }

手动拼接json格式字符串的方式很麻烦,开发中往往要将复杂的java对象转换成json格式的字符串,我们可以使用web阶段学习过的json转换工具jackson进行转换,通过jackson转换json格式字符串,回写字符串

@RequestMapping(value = "/login9") //请求地址 @ResponseBody //告诉springMVC框架,该方法不进行视图跳转,直接进行数据响应 public String login9() throws IOException { User user = new User(); user.setName("zhangsan"); user.setAge("18"); //使用json的转换工具将对象转换成json对象或字符串 ObjectMapper objectMapper = new ObjectMapper(); String string = objectMapper.writeValueAsString(user); return string; }4.8.SpringMVC的数据响应-回写数据-返回对象或集合(应用)

通过SpringMVC帮助我们对对象或集合进行json字符串的转换并回写,为处理器适配器配置消息转换参数,指定使用jackson进行对象或集合的转换,因此需要在spring-mvc.xml中进行如下配置:

<bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter"> <property name="messageConverters"> <list> <bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter"/> </list> </property> </bean> @RequestMapping(value = "/login10") //请求地址 @ResponseBody //告诉springMVC框架,该方法不进行视图跳转,直接进行数据响应 //期望springMVC自动将User转换成json格式的字符串 public User login10() throws IOException { User user = new User(); user.setName("zhangsan"); user.setAge("18"); return user; }4.9.SpringMVC的数据响应-回写数据-返回对象或集合2(应用)

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

开启mvc的自动注解驱动<mvc:annotation-driven/>

在 SpringMVC 的各个组件中,处理器映射器、处理器适配器、视图解析器称为 SpringMVC 的三大组件。

使用<mvc:annotation-driven />自动加载 RequestMappingHandlerMapping(处理映射器)和

SpringMVC的数据响应(二)(springmvc常见问题)

RequestMappingHandlerAdapter( 处 理 适 配 器 ),可用在Spring-xml.xml配置文件中使用

<mvc:annotation-driven />替代注解处理器和适配器的配置。

同时使用<mvc:annotation-driven />

默认底层就会集成jackson进行对象或集合的json格式字符串的转换

4.10.SpringMVC的数据响应-知识要点小结(理解,记忆)

1) 页面跳转

直接返回字符串

通过ModelAndView对象返回

2) 回写数据

直接返回字符串

HttpServletResponse 对象直接写回数据,HttpServletRequest对象带回数据,Model对象带回数据或者@ResponseBody将字符串数据写回

返回对象或集合

@ResponseBody+<mvc:annotation-driven/>

本文链接地址:https://www.jiuchutong.com/zhishi/300036.html 转载请保留说明!

上一篇:【前端修炼场】 — HTML常用的标志语言(web前端修炼之道)

下一篇:【6G 新技术】6G数据面介绍

  • iphone11pro max的屏幕刷新率是多少(iphone11promax的屏幕是什么屏)

  • 苹果如何识别图片二维码(苹果如何识别图片转文字)

  • 华为荣耀20Pro怎么才能恢复出厂设置(华为荣耀20pro怎么恢复出厂设置)

  • oppo录屏怎么关闭麦克风(oppo录屏怎么关闭悬浮窗)

  • 手机版问卷星怎么导出(手机版问卷星怎么导出到word)

  • 文件不小心替换能恢复吗(文件不小心替换了还能恢复吗)

  • 微信反复点赞会反复提醒吗(微信点赞会自动取消吗)

  • 手机黑屏是内屏坏了吗(手机黑屏是内屏坏了还是外屏)

  • word excel属于什么软件(wordexcel属于什么软件图片)

  • 小米10与荣耀v30pro对比(小米10与荣耀60)

  • 微信运动几分钟更新一次(微信运动几分钟更新步数)

  • ora12170连接超时(ora12535连接超时)

  • 短信通知栏不显示消息(短信不出现在通知栏)

  • 骁龙865什么时候出(骁龙865什么时候出的)

  • ipad和ipad air区别(ipad十代和ipad air)

  • ipad10.5支持快充吗(ipad支持快充的机型)

  • 嘀嗒出行的邀请码是什么(嘀嗒出行邀请接单啥意思)

  • 小米mix2支持5a快充吗(小米mix2可以用5a快充吗)

  • 如何关闭自动扣费功能(如何关闭自动扣费支付宝)

  • 手机支付宝网络出错咋处理(手机支付宝网络异常怎么办)

  • 手机锁了怎么解锁(手机锁了怎么解锁苹果)

  • 手机上一个月亮是什么(手机上一个月亮图标是什么意思)

  • iphone11支持30w快充吗(iphone11支持三十瓦快充吗)

  • 手机steam怎么激活key(手机steam怎么激活充值卡)

  • 详解Linux系统中su和sudo命令的用法(linux sl)

  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设 电脑维修 湖南楚通运网络