前端JSON传入后台解析

data =[{optionId:"1",topicId:"2"},{optionId:"2",topicId:"3"},{optionId:"3",topicId:"4"}]

 

@ResponseBody
    @RequestMapping(value = "/isVerifyPass")
    public Map isisVerifyPass(String data) {
        Map resultMap = new HashMap();
        NtbUser user =this.checkUserLogin();
        List list = BaseTools.jsonToList(data, NtbOptionRegister.class);
        Res resultModel = topicRegisterService.isVerifyPass(list ,user.getId());
        resultMap = this.createResultMap(resultModel.isSuccess(), resultModel.getErrorCode(), resultModel.getMessage(),
                resultModel.getResult());
        return resultMap;
  String data) {
        Map resultMap = new HashMap();
        NtbUser user =this.checkUserLogin();
        List list = BaseTools.jsonToList(data, NtbOptionRegister.class);
        Res resultModel = topicRegisterService.isVerifyPass(list ,user.getId());
        resultMap = this.createResultMap(resultModel.isSuccess(), resultModel.getErrorCode(), resultModel.getMessage(),
                resultModel.getResult());
        return resultMap;
  

在Controller中所用到了BaseTools.JsonToList来把传过来的Json格式转化成了对象。

以下是jsonToList的具体实现代码:

 // 定义jackson对象
    private static final ObjectMapper MAPPER = new ObjectMapper();
	  /**
     * 将json数据转换成pojo对象list
     * 

Title: jsonToList

*

Description:

* @param jsonData * @param beanType * @return */ public static List jsonToList(String jsonData, Class beanType) { JavaType javaType = MAPPER.getTypeFactory().constructParametricType(List.class, beanType); try { List list = MAPPER.readValue(jsonData, javaType); return list; } catch (Exception e) { e.printStackTrace(); } return null; }
ObjectMapper MAPPER = new ObjectMapper(); /** * 将json数据转换成pojo对象list *

Title: jsonToList

*

Description:

* @param jsonData * @param beanType * @return */ public static List jsonToList(String jsonData, Class beanType) { JavaType javaType = MAPPER.getTypeFactory().constructParametricType(List.class, beanType); try { List list = MAPPER.readValue(jsonData, javaType); return list; } catch (Exception e) { e.printStackTrace(); } return null; }

这里的objectMapper是Jackson库的主要类,她提供一些功能将转成成java对象匹配json结构。

http://www.yiibai.com/jackson/jackson_objectmapper.html  这是ObjectMapper方法的一些解释
 

============================================手动分割===========================================

现在使用的是阿里的fastjson 我把使用过程贴出来。

1.在pom.xml文件添加:

	
		
			com.alibaba
			fastjson
			1.2.12
		

2.使用方式:

import com.alibaba.fastjson.JSON;


String json=JSON.toJSONString(Object o);

结束了。

你可能感兴趣的:(java代码集合)