springMVC接受前台传值

今天,用ajax向springMVC的控制器传参数,是一个json对象。({"test":"test","test1":"test1""test2":"test2"})开始的想法是用一个对象来接收这个json对象。但是又不知道具体用什么对象,开始用了一个Object,名字和json对象属性名相同,但是得不到

@RequestMapping("/test")
 public void test(HttpServletResponse
response,Ojbect data);

后来想想json是不是以String对象传进来又换成了String

@RequestMapping("/test")

public void test(HttpServletResponse response,String data);

这样还是没有得到前台的json对象,后来见data换成了其中的一个属性的键名

@RequestMapping("/test")

public void test(HttpServletResponse response,String test);

这样就得到了test键对应的值了。

后来感觉突然恍然大悟了,springMVC会将json对象中的一个个键值对传进来,好像不是讲json对象传进来,这样就需要将json对象的所有键值对写在方法的参数中。

这是一种方法,但是确实很繁琐,难道就不能有一个对象,springMVC将json对象注入到这个对象中吗?

后来找到了,可以定义一个数据类JSONData,类中的属性名字要和json对象中所有键值对的键名相同,并且需要有get,set方法(就是一个数据bean)

@RequestMapping("/test")

public void test(HttpServletResponse response,JSONData test);

这样就可以用test对象来访问其中的属性,springMVC会将属性值注入到test对象中的属性中。

时间: 2024-08-30 13:56:20

springMVC接受前台传值的相关文章

springmvc 接受特殊类型字段的处理方法

springmvc接受前台传入的数据时如果该字段类型无法被封装(如Date),则会出现400 Bad Request错误,解决方法如下. 1.在需要处理的字段前加上注解: @DateTimeFormat( pattern = "yyyy-MM-dd" ) 然后在项目中引入joda-time.jar包,最后在在 SpringMVC 配置 xml 文件中中加入配置: <mvc:annotation-driven /> .这一句配置是一种简写,其实是给 spring 容 器中注入

springmvc 中前后台传值

1.前台往后台传值: login.jsp输入框设置,主要是name属性 <h1>登录页面</h1> <form method="post" action=""> 用户名:<input type="text" name="userName"><br> 密 码:<input type="text" name="password"

后台数值往前台传值,能获取到值,页面显示不出来的问题

今天遇到一个很头疼的问题,就是后的集合转成json后,网前台传值,可以获取到值,但是页面显示不出来.查了好多的资料都没有得到解决. 查看了资料后发现,ajax少写了一个属性就是dataType:"json"这个属性,这个属性是返回值的格式,这个属性必须要写的.朋友们写代码的时候一定要注意,不要大意. 这些小细节问题很难发现. 1 @RequestMapping("manger") 2 @ResponseBody 3 public String selectAllUs

【SpringMVC学习09】SpringMVC与前台的json数据交互

json数据格式在接口调用中.html页面中比较常用,json格式比较简单,解析也比较方便,所以使用很普遍.在springmvc中,也支持对json数据的解析和转换,这篇文章主要总结一下springmvc中如何和前台交互json数据. 1. 两种交互形式 springmvc和前台交互主要有两种形式,如下图所示: 可以看出,前台传过来的方式有两种,一种是传json格式的数据过来,另一种就是在url的末尾传普通的key/value串过来,针对这两种方式,在controller中会有不同的解析,但是在

springmvc前后端传值总结

1      前端向后端传参 1.1    普通方式传参 1.1.1         页面 参数需要解析成json对象:JSON.parse(JSON.stringify(query)) $.getJSON("${serverUrl}/store/brand/getBrand", JSON.parse(JSON.stringify(query)), function(data){}); 1.1.2         后端 使用普通的参数即可,不需要配置 @RequestMapping(&

jsp forward 转到springMVC的 controller传值问题

jsp forward 转到springMVC的 controller传值问题 总是404等各种错误 网上查询各种做法 都很曲折 各种尝试只有豁然开朗 1 在JSP页面上面获取传来的各个参数 <jsp:forward page="/product/showList.do"> <jsp:param name="queryType" value="<%= queryType %>" /> <jsp:param

springMVC接受json类型数据

springMVC接受json格式的数据很简单 使用@RequestBody 注解,标识从请求的body中取值 服务端示例代码 @RequestMapping(value = "/t4", method = RequestMethod.POST) @ResponseBody public Result t3(@RequestBody SysUser user) { Result r = Result.success(); r.setData(user); return r; } 客户端

SpringMVC学习(十)——SpringMVC与前台的json数据交互

json数据格式在接口调用中.html页面中比较常用,json格式比较简单,解析也比较方便,所以使用很普遍.在SpringMVC中,也支持对json数据的解析和转换,这篇文章主要总结一下在SpringMVC中如何和前台交互json数据. 两种交互形式 SpringMVC和前台交互主要有两种形式,如下图所示: 可以看出,前台传过来的方式有两种,一种是传json格式的数据过来,另一种就是在url的末尾传普通的key/value串过来,针对这两种方式,在Controller类中会有不同的解析,但是在C

SpringCloud中服务消费者接受前台传参问题(报错415)

服务消费者clientFeign,接受前台form表单post提交的数据,虽然传递参数是对象类型,但是后台不能添加@RequestBody注解!!!,form表单提交的数据不是json格式!!! 1. 前端 <form class="layui-form" action="/menu/save" method="post"> <div class="layui-form-item"> <label