1.JSONUtils类:
public class JSONUtils { // 定义jackson对象 private static final ObjectMapper MAPPER = new ObjectMapper(); /** * 将对象转换成json字符串。 * <p>Title: pojoToJson</p> * <p>Description: </p> * @param data * @return */ public static String objectToJson(Object data) { try { String string = MAPPER.writeValueAsString(data); return string; } catch (JsonProcessingException e) { e.printStackTrace(); } return null; } /** * 将json结果集转化为对象 * * @param jsonData json数据 * @param 对象中的object类型 * @return */ public static <T> T jsonToPojo(String jsonData, Class<T> beanType) { try { T t = MAPPER.readValue(jsonData, beanType); return t; } catch (Exception e) { e.printStackTrace(); } return null; } /** * 将json数据转换成pojo对象list * <p>Title: jsonToList</p> * <p>Description: </p> * @param jsonData * @param beanType * @return */ public static <T>List<T> jsonToList(String jsonData, Class<T> beanType) { JavaType javaType = MAPPER.getTypeFactory().constructParametricType(List.class, beanType); try { List<T> list = MAPPER.readValue(jsonData, javaType); return list; } catch (Exception e) { e.printStackTrace(); } return null; } }
实体类:
public class User{ private Long id; private String userType; private String userName; private String userStudentId; public Long getId() { return id; } public void setId(Long id) { this.id = id; } public String getUserType() { return userType; } public void setUserType(String userType) { this.userType = userType; } public String getUserName() { return userName; } public void setUserName(String userName) { this.userName = userName; } public String getUserStudentId() { return userStudentId; } public void setUserStudentId(String userStudentId) { this.userStudentId = userStudentId; }}
测试类:
@Controller @RequestMapping("test-api/test") public class TestController { private static final Logger LOGGER = LoggerFactory.getLogger(TestController.class); @RequestMapping(value = "add", method = RequestMethod.POST) @ResponseBody public ResultTO addCommentaryUserPapers(String s) { try { User user = Json.jsonToPojo(s,User.class); System.out.println(user); } catch (Exception e) { return ResultTO.newFailResultTO("添加失败", null); } return ResultTO.newSuccessResultTO("添加成功", null); } }请求路径及参数:POST请求 ====> http://localhost:8080/test-api/test/add
参数 ====> s: {"id": 1,"userType": "1","userName": "蔡清宇","userStudentId": "110106200402274211"}
运行结果:
User{id=1,userName=蔡清宇,userStudentId=110106200402274211,userType=1}