SpringMVC,接受、处理Json,fastjson解析json,用Postman4发送json数据
2018-01-30 22:10
691 查看
这个博客用的demo是接着我的上一篇博客(SpringMVC的 get,post参数请求及重定向) 感兴趣的朋友可以去看看~
要用fastjson 要引入:
fastjson-1.1.41jar包
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xsi:schemaLocation="http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc-4.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-4.0.xsd
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd">
<!--加载解析json的组件(fastjson) 配置消息转换器-->
<mvc:annotation-driven>
<mvc:message-converters>
<bean id="fastJsonHttpMessageConverter" class="com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter">
<property name="supportedMediaTypes">
<list>
<!--这里顺序不能反,一定要先写text/html 不然ie下会出现下载提示-->
<value>text/html;charset=UTF-8</value>
<value>application/json;charset=UTF-8</value>
</list>
</property>
</bean>
</mvc:message-converters>
</mvc:annotation-driven>
<!--注意这里的顺序 一定要加载解析json的组件先加载 再开启springmvc的注解驱动 否则会报错,编译器也不会提示错误,很蛋疼-->
<!--开启springmvc的注解驱动-->
<mvc:annotation-driven/>
<!--配
4000
置包扫描-->
<context:component-scan base-package="com.dengweiquan.**" />
<!--配置viewResolver(视图解析器)-->
<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<!--getrequestdispature的时候要填的前缀 和后准都自动填好 注意斜号很关键 漏填个斜号都会错-->
<property name="prefix" value="/WEB-INF/view/"/>
<property name="suffix" value=".jsp"/>
<!--jsp要用到jstl-->
<property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/>
</bean>
</beans>
2.修改UserController:
//打了@Controller 都归springMVC管
//打了@Controller 是写请求路径的 假如请求路径里面是带user的 例如user/test.jsp 或者user/demo.jsp 这个请求就会分发到这个controller来处理
@Controller
@RequestMapping("user")
public class UserController {
//@ResponseBody 意思返回体是调用了 spring-mvc.xml 里的<mvc:message-converters>处理返回数据 转json输出了
@RequestMapping("/test")
@ResponseBody
public User testUser() {
User user=new User();
user.setId(12);
user.setName("haha");
return user;
}
@RequestMapping("/demo")
public String demoUser(){
//返回userspringmvc自动帮你加好了前后缀 就是我们要去的user.jsp 在viewResolver哪里已经配置好了路径的前后缀
return "demo";
}
}
输入网址 localhost:8080/user/test 页面上会显示json {"id":12,"name":"haha"}
@Controller
@RequestMapping("user")
public class UserController {
@RequestMapping("/test")
public String testUser(User user) {
return "user";
}
@RequestMapping("/demo")
public String demoUser(){
//返回userspringmvc自动帮你加好了前后缀 就是我们要去的user.jsp 在viewResolver哪里已经配置好了路径的前后缀
return "demo";
}
}
2.先要用谷歌浏览器的组件 Postman4模拟发送get/post请求 请自行百度下载方法
注意postman4发送的post请求 可以通过request请求获得的数据格式是 Body里的x-www-form-urlencoded格式的
按send发送之后 debug就可以发现user对象已经封装好了 id为12 name为haha
选Body里的raw 然后设置Text为JSON(application/json) 然后自行写要传向后端的json
2.设置UserController
//打了@Controller 都归springMVC管
//打了@Controller 是写请求路径的 假如请求路径里面是带user的 例如user/test.jsp 或者user/demo.jsp 这个请求就会分发到这个controller来处理
@Controller
@RequestMapping("user")
public class UserController {
//假如是@RequestMapping("/test",method=RequestMethod.GET) 限制前端的请求,意思是前端只能发送GET请求
//假如是@RequestMapping("/test",method=RequestMethod.POST) 意思是前端只能发送POST请求
//要加上@RequestBody 才能json自动转对象
@RequestMapping("/test")
public String testUser(@RequestBody User user) {
return "user";
}
@RequestMapping("/demo")
public String demoUser(){
//返回userspringmvc自动帮你加好了前后缀 就是我们要去的user.jsp 在viewResolver哪里已经配置好了路径的前后缀
return "demo";
}
}
postman4发送json之后 debug发现user对象已经封装好了 id为12 name为haha
要用fastjson 要引入:
fastjson-1.1.41jar包
SpringMVC 结合alibaba的fastjson 把对象转json输出
1.配置spring-mvc.xml:<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xsi:schemaLocation="http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc-4.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-4.0.xsd
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd">
<!--加载解析json的组件(fastjson) 配置消息转换器-->
<mvc:annotation-driven>
<mvc:message-converters>
<bean id="fastJsonHttpMessageConverter" class="com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter">
<property name="supportedMediaTypes">
<list>
<!--这里顺序不能反,一定要先写text/html 不然ie下会出现下载提示-->
<value>text/html;charset=UTF-8</value>
<value>application/json;charset=UTF-8</value>
</list>
</property>
</bean>
</mvc:message-converters>
</mvc:annotation-driven>
<!--注意这里的顺序 一定要加载解析json的组件先加载 再开启springmvc的注解驱动 否则会报错,编译器也不会提示错误,很蛋疼-->
<!--开启springmvc的注解驱动-->
<mvc:annotation-driven/>
<!--配
4000
置包扫描-->
<context:component-scan base-package="com.dengweiquan.**" />
<!--配置viewResolver(视图解析器)-->
<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<!--getrequestdispature的时候要填的前缀 和后准都自动填好 注意斜号很关键 漏填个斜号都会错-->
<property name="prefix" value="/WEB-INF/view/"/>
<property name="suffix" value=".jsp"/>
<!--jsp要用到jstl-->
<property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/>
</bean>
</beans>
2.修改UserController:
//打了@Controller 都归springMVC管
//打了@Controller 是写请求路径的 假如请求路径里面是带user的 例如user/test.jsp 或者user/demo.jsp 这个请求就会分发到这个controller来处理
@Controller
@RequestMapping("user")
public class UserController {
//@ResponseBody 意思返回体是调用了 spring-mvc.xml 里的<mvc:message-converters>处理返回数据 转json输出了
@RequestMapping("/test")
@ResponseBody
public User testUser() {
User user=new User();
user.setId(12);
user.setName("haha");
return user;
}
@RequestMapping("/demo")
public String demoUser(){
//返回userspringmvc自动帮你加好了前后缀 就是我们要去的user.jsp 在viewResolver哪里已经配置好了路径的前后缀
return "demo";
}
}
输入网址 localhost:8080/user/test 页面上会显示json {"id":12,"name":"haha"}
前端用PostMan4传来数据,并自动转为对象:
1.修改UserController@Controller
@RequestMapping("user")
public class UserController {
@RequestMapping("/test")
public String testUser(User user) {
return "user";
}
@RequestMapping("/demo")
public String demoUser(){
//返回userspringmvc自动帮你加好了前后缀 就是我们要去的user.jsp 在viewResolver哪里已经配置好了路径的前后缀
return "demo";
}
}
2.先要用谷歌浏览器的组件 Postman4模拟发送get/post请求 请自行百度下载方法
注意postman4发送的post请求 可以通过request请求获得的数据格式是 Body里的x-www-form-urlencoded格式的
按send发送之后 debug就可以发现user对象已经封装好了 id为12 name为haha
前端用PostMan4传来json 然后自动转为对象:
1.postman4要设置 发送数据为json格式选Body里的raw 然后设置Text为JSON(application/json) 然后自行写要传向后端的json
2.设置UserController
//打了@Controller 都归springMVC管
//打了@Controller 是写请求路径的 假如请求路径里面是带user的 例如user/test.jsp 或者user/demo.jsp 这个请求就会分发到这个controller来处理
@Controller
@RequestMapping("user")
public class UserController {
//假如是@RequestMapping("/test",method=RequestMethod.GET) 限制前端的请求,意思是前端只能发送GET请求
//假如是@RequestMapping("/test",method=RequestMethod.POST) 意思是前端只能发送POST请求
//要加上@RequestBody 才能json自动转对象
@RequestMapping("/test")
public String testUser(@RequestBody User user) {
return "user";
}
@RequestMapping("/demo")
public String demoUser(){
//返回userspringmvc自动帮你加好了前后缀 就是我们要去的user.jsp 在viewResolver哪里已经配置好了路径的前后缀
return "demo";
}
}
postman4发送json之后 debug发现user对象已经封装好了 id为12 name为haha
相关文章推荐
- springmvc 使用fastjson 处理 json 数据时中文乱码
- (九)springmvc之json的处理(服务端发送json数据到客户端)
- 66、fastJson 解析json数据时,如果key值不同怎么处理?
- Gson&FastJson解析异常Json的处理
- android 利用socket 发送和解析Json数据
- SpringMVC Bean接收POST发送的JSON数据
- springmvc之json数据的解析
- ext中对json数据的处理解析
- 《项目经验》--通过js获取前台数据向一般处理程序传递Json数据,并解析Json数据,将前台传来的Json数据写入数据库表中
- springMvc中前台ajax传json数据后台controller接受对象为null
- FastJson处理json数据时遇到一个问题
- 使用fastJSON解析HashMap中的数据
- SpringBoot学习:Spring Boot使用FastJson解析JSON数据
- 关于java 发送http json数据格式请求时,服务器端如何接收json数据并解析
- springmvc中,异步发送表单数据到Action,并响应Json文本返回(后端代码)
- 《项目经验》--通过js获取前台数据向一般处理程序传递Json数据,并解析Json数据,将前台传来的Json数据写入数据库表中
- SpringMVC如何处理JSON数据和运行流程
- springMVC框架下JQuery传递并解析Json数据
- 《项目经验》--后台一般处理程序向前台JS文件传递JSON,JS解析JSON,将数据显示在界面--显示在DropDownList 或 显示在动态创建的table中
- java环境下fastjson 数据解析过程