MyBatis从数据库取值的时候,当某一字段为null时,如何在返回前端的时候,也包含有这个字段

来源:互联网 发布:无限制的网络访问 编辑:程序博客网 时间:2024/05/17 03:45

MyBatis的配置文件中有一个配置是

<configuration>   <settings>      <setting name="callSettersOnNulls" value="true"/> <!-- 返回空字段 -->   </settings></configuration>



这就是即便数据库中的某个字段为空也会返回null的属性,这样配置是完全没有问题的,但是刚开始的时候我的控制层的代码如下边被注释掉的

@ResponseBody@RequestMapping(value="/queryById",method= RequestMethod.POST,produces = "application/json;charset=UTF-8")public String queryById(String id){    Map<Object,Object> map = userServiceImp.queryById(id);    System.out.println("map:"+map);    Gson gsonSerializeNull = new GsonBuilder().serializeNulls().create();    String gson = gsonSerializeNull.toJson(map);    System.out.println(gson);    return gson;    /*Map<Object,Object> map = userServiceImp.queryById(id);    return map;*/}



这样会导致前端拿不到把鞋字段为null的属性。原因出在了对象向json字符串转化的时候,当改成了上图中未被注释掉的样子的时候,前端就可以取到即便属性值为空的那些属性了。


返回数据库中字段为空的值也可以参考:http://www.open-open.com/lib/view/open1432694378801.html

阅读全文
0 0
原创粉丝点击