request获取json请求参数_servlet接收json数据

request获取json请求参数_servlet接收json数据SpringMVC HttpMessageConverter接口处理Json

大家好,又见面了,我是你们的朋友全栈君。

一、SpringMVC处理json的使用

1.添加依赖jar包

<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-annotations</artifactId>
    <version>2.8.7</version>
</dependency>
<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-core</artifactId>
    <version>2.8.7</version>
</dependency>
<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-databind</artifactId>
    <version>2.8.7</version>
</dependency>

2、编写目标方法,使其返回 JSON 对应的象或集合,在方法上添加@ResponseBody注解:

@Controller
@RequestMapping("/user")
public class UserController
{
    @Autowired
    private UserService userService;
    
    @RequestMapping("/getUserList")
    @ResponseBody
    public Map<String, Object> getUserList(Model model)
    {
        List<User> userlist = userService.getUserList();
        Map<String, Object> map = new HashMap<>();
        map.put("aaData", userlist);
        return map;
    }
}

二、HttpMessageConverter

1.HttpMessageConverter信息

    HttpMessageConverter<T> 是 Spring3.0 新添加的一个接口,负责将请求信息转换为一个对象(类型为 T),将对象(类型为 T)输出为响应信息 

request获取json请求参数_servlet接收json数据

2、HttpMessageConverter 运行原理

request获取json请求参数_servlet接收json数据 

(1)HttpInputMessage 将请求的信息先转为 InputStream 对象,InputStream 再由 HttpMessageConverter 转换为 SpringMVC 需要的java对象;

(2)SpringMVC 返回一个 java 对象, 并通过 HttpMessageConverter 转为响应信息,接着 HttpOutputMessage 将响应的信息转换为 OutputStream,接着给出响应。

3.HttpMessageConveter 的实现类

request获取json请求参数_servlet接收json数据

4.SpringMVC 默认加载的 HttpMessageConverter 实现类

(1)DispatcherServlet 默认加载 HttpMessageConveter 的6个实现类,如下所示:

request获取json请求参数_servlet接收json数据

(2)加入 jackson jar包后,启动的时候加载 7个 HttpMessageConverter 的实现类,如下所示:

request获取json请求参数_servlet接收json数据

 5、使用 HttpMessageConverter

request获取json请求参数_servlet接收json数据

(1) @ResponseBody 和 @RequestBody 示例:

request获取json请求参数_servlet接收json数据

(2) HttpEntity 和 ResponseEntity 示例

request获取json请求参数_servlet接收json数据

request获取json请求参数_servlet接收json数据

转载于:https://my.oschina.net/langwanghuangshifu/blog/2052183

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/107307.html原文链接:https://javaforall.net

(1)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • collections判断list是否为空_collectionutils

    collections判断list是否为空_collectionutils项目中引用的明明是commons.collections-3.2.1.jar(3.2版的),但服务器启动后,调用CollectionUtils.isNotEmpty方法时,却总是报NoSuchMethodError:org.apache.commons.collections.CollectionUtils.isNotEmpty(Ljava/util/Collection;)Z

    2022年10月7日
    1
  • 苹果app测试_ios上架app费用

    苹果app测试_ios上架app费用详细操作地址http://www.applicationloader.net/blog/zh/88.html苹果iOSAPP真机调试测试和上架AppStore视频教程优酷http://v.youku.com/v_show/id_XMzk0MTMyNDM2NA==.html?spm=a2hzp.8244740.0.0转载于:https://www.cnblogs.com/…

    2022年9月6日
    3
  • 禁用360浏览器6.2自带的Flash Player

    禁用360浏览器6.2自带的Flash Player360浏览器6.2自带了FlashPlayer,版本为11.6,而我需要使用最新版的FlashPlayer11.9,我安装了最新版的FlashPlayer11.9后,浏览网页时,360浏览器6.2默认使用的是自带的FlashPlayer11.6因此我们必须禁用掉360浏览器自带的FlashPlayer11.6——————————

    2022年6月11日
    44
  • 字符串分割方法代码

    字符串分割方法代码

    2021年8月24日
    63
  • 通用权限管理组件

    通用权限管理组件

     
     
    整体数字化建设项目
    QQ群:42706992一起学习
    ASP.NETC#.NET
    通用权限管理组件
    使用说明书
     
     

     
     
     
     
     
     
                      开发单位:技术研发部
                编制日期:2010年10月
     

    2022年6月16日
    23
  • QFile详解

    QFile详解1、QFile::QFile()构造一个没有名字的QFile对象2、QFile::QFile(constQString&name)构造一个以name为文件名的QFile对象。注:也可以QFile::QFile(),然后调用setName()方法来实现类似动作。3、bootQFile::atEnd()const[虚函数]如果已经到达文件末尾则返回TRUE,否则返回FAL

    2022年4月30日
    160

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号