SpringMVC过程中@RequestBody接收Json的问题 总是报415

在SpringMVC中用@RequestBody接收Json的问题,总是报415,经过一翻查找

前台js的post:

var postdata = '{"title":"这是一个标题","describe":"这是一个描述"}';
            $.ajax({
                type : 'POST',
                contentType : 'application/json',
                url : '/home/requestbodybind',
                processData : false,
                dataType : 'json',
                data : postdata,
                success : function(data) {
                    alert('title : '+data.title+'\ndescribe : '+data.describe);
                },
                error : function() {
                    alert('error...');
                }
            });

该有的都有

后台:

 @RequestMapping(value = "modelautobind", method = RequestMethod.POST)
    public String modelAutoBind(HttpServletRequest request, @ModelAttribute("accountmodel") NewsModel newsModel, @ModelAttribute("sessionaccountmodel") NewsModel newsModel1) {
        newsModel.setTitle("视图");
        newsModel1.setTitle("session视图");
        //model.addAttribute("accountmodel", newsModel);
        return "modelautobind";//视图名字
    }

网上说需要加入 consumes = "application/json",加了 还是一样报错,后面去掉后也没影响

springmvc的配置文件中有:<mvc:annotation-driven />  

后来有查到对json的解析需要引入

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

在springmvc配置中用得到

            <bean
                class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">
                <property name="objectMapper">
                    <bean class="com.fasterxml.jackson.databind.ObjectMapper">
                        <property name="dateFormat">
                            <bean class="java.text.SimpleDateFormat">
                                <constructor-arg type="java.lang.String" value="yyyy-MM-dd HH:mm:ss" />
                            </bean>
                        </property>
                    </bean>
                </property>
            </bean> 

加上重新跑,这时通过

以上就是整个解决过程。

 

时间: 2024-10-30 12:58:13

SpringMVC过程中@RequestBody接收Json的问题 总是报415的相关文章

springmvc @requestbody 接收json字符串的原理

问题描述 springmvc @requestbody 接收json字符串的原理 问题如上.贴出代码 @RequestMapping(value = "/sk/api/users", method = RequestMethod.POST) public void entitys(@RequestBody List users, HttpServletRequest request, HttpServletResponse response) { System.out.println(

struts2改springmvc过程中问题及解决办法记录

我们目前的系统中使用了struts2框架,该版本是2.3.32,但近期Apache struts发布了一项struts的安全漏洞说明,具体如下: Apache Struts2 远程代码执行漏洞(S2-048) 发布日期:2017年7月7日 CVE ID:CVE-2017-9791 受影响的版本: Apache Struts Version: 2.3.x 不受影响的版本: Apache Struts Version:2.5.10.1 综述: 2017年7月7日,Apache Struts发布最新的

spring mvc-springMVC controller中方法接收参数问题,怎么接收json对象

问题描述 springMVC controller中方法接收参数问题,怎么接收json对象 后台配置及代码 <bean id=""paramMethodResolver"" class=""org.springframework.web.servlet.mvc.multiaction.ParameterMethodNameResolver""> <property name=""param

联想ThinkPad Helix2 BIOS从1.80升级到1.82过程中显示“Flash Authentication Verification Failure”

故障现象: Helix 2笔记本BIOS版本从1.80更新到1.82,重启以后,可能会显示"Flash Authentication Verification Failure"的报错信息,然后系统会关机,BIOS更新失败. 影响机型:ThinkPad Helix 2 (20CG and 20CH) 影响系统:All 解决方案: BIOS从1.80升级到1.82的过程中并不是100%都会报错,如果遇到此类报错请参考以下指导操作: 1. 首先确认下机器当前BIOS版本,如果BIOS版本是1

详解springmvc 接收json对象的两种方式_javascript技巧

最近学习了springmvc 接收json对象的两种方式,现在整理出来,具体如下:  1.以实体类方式接收 前端 ajax 提交数据: function fAddObj() { var obj = {}; obj['objname'] = "obj"; obj['pid'] = 1 ; $.ajax({ url: 'admin/Obj/addObj.do', method: 'post', contentType: 'application/json', // 这句不加出现415错误:

SpringMVC restful 注解之@RequestBody进行json与object转换_javascript技巧

由于快过年的原因,项目组没有太多任务,闲来无事研究了一下spring中restful调用.发现spring竟然已经强大到如此境界,程序员已经不需要在关心在写接口的过程中数据的转换以及调用,只需要专注业务.下面我总结一下步骤及其在研究过程的遇到的问题. 步骤:            1.git clone https://github.com/spring-guides/gs-rest-service.git 从spring官网上下载了源码            2.进行maven编译(gradl

springmvc怎么接收json对象 springmvc接收json对象的方式

springmvc接收json对象的方式介绍: 1.以实体类方式接收 前端 ajax 提交数据: function fAddObj() { var obj = {}; obj['objname'] = "obj"; obj['pid'] = 1 ; $.ajax({ url: 'admin/Obj/addObj.do', method: 'post', contentType: 'application/json', // 这句不加出现415错误:Unsupported Media T

java 路由器心跳包-java中怎么接收服务器传过来的json呢?谢谢大家

问题描述 java中怎么接收服务器传过来的json呢?谢谢大家 最近最到了一个关于路由器心跳包,需要用java实现,在取值方面,路由器传过来的是一串json { "gwmac":"c8:3a:35:29:bc:80","gwaddr":"192.168.1.10","gwport":"8080","usrnum":"0", "versio

运行springmvc框架过程中遇到的问题,求大神帮忙!

问题描述 运行springmvc框架过程中遇到的问题,求大神帮忙! 八月 31, 2015 9:28:48 上午 org.apache.catalina.core.ContainerBase startInternal 严重: A child container failed during start java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start c