springmvc json数据传递参数
json数组json对象(POJO)json数组(POJO)(1)加入 json的依赖dependencygroupIdcom.fasterxml.jackson.core/groupIdartifactIdjackson-databind/artifactIdversion2.9.0/version/dependencypostman里面发送json数据GET:Body--raw--Text--JSON ;(2)SpringMvcConfig类中添加:EnableWebMvc可以开启由JSON数据转换为对象的功能。它的功能不止如此开启JSON数据转换为对象的功能只是其中一个。//json对象RequestMapping(/listParamForJson)ResponseBodypublic String listParamForJson(RequestBody ListString likes){System.out.println(list common(json)参数传递 list likes);return {module:list common for json param};}package com.ycl.config; import org.springframework.lang.NonNull; import org.springframework.lang.Nullable; import org.springframework.web.filter.CharacterEncodingFilter; import org.springframework.web.servlet.support.AbstractAnnotationConfigDispatcherServletInitializer; import javax.servlet.Filter; public class ServletContainersInitConfig extends AbstractAnnotationConfigDispatcherServletInitializer { Override NonNull protected Class?[] getRootConfigClasses(){ return new Class[0];} Override NonNull protected Class?[] getServletConfigClasses(){ return new Class[]{SpringMvcConfig.class};} Override NonNull protected String[] getServletMappings(){ return new String[]{/}; } //乱码处理 使用过滤器; Nullable Override protected Filter[] getServletFilters() { CharacterEncodingFilter filter new CharacterEncodingFilter(); filter.setEncoding(UTF-8); return new Filter[]{filter}; //如果有多个多虑器就写成:return new Filter[]{filter1,filter2,filter3}; } } package com.ycl.config; import org.springframework.context.annotation.ComponentScan; import org.springframework.context.annotation.Configuration; import org.springframework.web.servlet.config.annotation.EnableWebMvc; Configuration ComponentScan(com.ycl.controller) EnableWebMvc public class SpringMvcConfig { } package com.ycl.controller; import com.ycl.domain.User; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.ResponseBody; import java.util.Arrays; import java.util.List; Controller RequestMapping(/user) public class UserController { RequestMapping(/commonParam) ResponseBody public String commonParam(RequestParam(name) String username, int age){ System.out.println(普通参数传递 nameusername); System.out.println(普通参数传递 ageage); return {module:common param}; } RequestMapping(/save) ResponseBody public String save(){ System.out.println(save usercontroller); return {module:user save}; } RequestMapping(/delete) ResponseBody public String delete(){ System.out.println(delete usercontroller); return {module:user delete}; } RequestMapping(/pojoParam) ResponseBody public String pojoParam(User user){ System.out.println(pojo参数传递 user user); return {module:pojo param}; } RequestMapping(/pojoContainPojoParam) ResponseBody public String pojoContainPojoParam(User user){ System.out.println(pojo参数传递 user user); return {module:pojo contain pojo param}; } RequestMapping(/arrayParam) ResponseBody public String arrayParam(String[] likes){ System.out.println(pojo参数传递 likes Arrays.toString(likes)); return {module:pojo contain pojo param}; } //集合参数 RequestMapping(/listParam) ResponseBody public String listParam(RequestParam ListString likes){ System.out.println(集合参数传递 likes likes); return {module:list param}; } //json对象 RequestMapping(/listParamForJson) ResponseBody public String listParamForJson(RequestBody ListString likes){ System.out.println(list common(json)参数传递 list likes); return {module:list common for json param}; } } package com.ycl.domain; public class User { private String name; private int age; private Address address; Override public String toString() { return User{ name name \ , age age , address address }; } public Address getAddress() { return address; } public void setAddress(Address address) { this.address address; } public String getName() { return name; } public void setName(String name) { this.name name; } public int getAge() { return age; } public void setAge(int age) { this.age age; } }\ package com.ycl.domain; public class Address { private String province; private String city; Override public String toString(){ return Address{ province province \ ,city city \ }; } public String getProvince() { return province; } public void setProvince(String province) { this.province province; } public String getCity() { return city; } public void setCity(String city) { this.city city; } }//pojo参数:json格式; RequestMapping(/pojoParamForJson) ResponseBody public String pojoParamForJson(RequestBody User user){ System.out.println(pojo(json)参数传递 useruser); return {module:pojo for json param}; }//集合参数 :json格式 RequestMapping(/listPojoParamForJson) ResponseBody public String listPojoParamForJson(RequestBody ListUser list){ System.out.println(list pojo(json)参数传递listlist); return {module:list pojo for json param}; } #传入值; [ {name:程序员,age:15}, {name:德玛,age:21} ]