返回json格式 不忽略null字段
如题,一个实体的某个字段如果为null,在转json后,没有这个属性,需要有什么设置可以显示空数据字段
![](https://nutz.cn/assets/yvr/logo/Octocat_32.png)
@Ok("json:full")
@wendal 是加到对应字段还是实体,还是哪?
![](https://nutz.cn/assets/yvr/logo/Octocat_32.png)
@qq_640d75e3 说的不是入口方法的返回吗?
@wendal 实体类上
@wendal 例如Jackson的@JsonInclude
![](https://nutz.cn/assets/yvr/logo/Octocat_32.png)
实体没有这种配置
Json.toJson方法的话
Json.toJson(obj, JsonFormat.full());
@wendal 个人觉得nutz需要关注一下https://nutz.cn/yvr/t/7fmfpb9oguivrqck7add0u7i1r这个问题
![](https://nutz.cn/assets/yvr/logo/Octocat_32.png)
我添加了@Ok("json:full")之后null字段还是没有显示
![](https://nutz.cn/assets/yvr/logo/Octocat_32.png)
@fengjidong1991 上代码
![](https://nutz.cn/assets/yvr/logo/Octocat_32.png)
@IocBean
@Ok("json:full")
@Fail("http:500")
@At("/facManageCar")
public class FacManagerCarModule extends BaseModule{
@At
public Object queryFacManageCar(FacManageCarReq req){ FacManageCarResp resp = new FacManageCarResp();Pager pager = dao.createPager(req.page,20);Cnd where = Cnd.NEW();where.and("facId","=",req.factoryId); if(req.carStatus==1){where.and("carStatus","=",false);}else if(req.carStatus==2){where.and("carStatus","=",true);}//车牌号if(Strings.isNotBlank(req.carLicence)){where.and("carLicence","like","%"+req.carLicence+"%");}//车主手机号if(Strings.isNotBlank(req.cellPhone)){where.and("cellPhone","like","%"+req.cellPhone+"%");}//车主姓名if(Strings.isNotBlank(req.realName)){where.and("realName","like","%"+req.realName+"%");}//保养到期if(req.carNextTime!=null){where.and("carNextTime","<=",req.carNextTime);}//保险到期if(req.insuranceEndDate!=null){ where.and("insuranceEndDate","<=",req.insuranceEndDate); }//年检到期if(req.checkEndDate!=null){where.and("checkEndDate","<=",req.checkEndDate);} //根据字段名字排序if (req.sortType == null) {where.orderBy("createTime", "desc");} else {where.orderBy("convert (" + req.sortType.getName() + " using gbk)","" + req.sortType.getSorts() + "");} List <FacManageCarView> fmcvs = dao.query(FacManageCarView.class, where,pager);int count =dao.count(FacManageCarView.class,where);if(fmcvs==null||fmcvs.size()==0){resp.requestCode=-1;return resp;}List<FacManageCarEntity> fmces = new ArrayList<FacManageCarEntity>();List<Dictionary> dcs = dao.query(Dictionary.class,Cnd.where("type","=","car_state"));for(int i=0;i<fmcvs.size();i++){FacManageCarEntity fmce = new FacManageCarEntity(); fmce.SNumber = (req.page-1)*20+i+1;//序号赋值int code;if(fmcvs.get(i).isCarStatus()==false){code = 1;}else{code = 2;}for(int j=0;j<dcs.size();j++){if(dcs.get(j).getVal().equals(""+code)){fmce.carStatusDesc = dcs.get(j).getItems();//车辆状态描述break;}}fmce.fmcv = fmcvs.get(i);fmces.add(fmce);} pager.setRecordCount(count);resp.pageCount = pager.getPageCount();resp.count = count;resp.fmces = fmces;return resp;
}
@At
public Object fetchFacManageCar(FacManageCarReq req){FacManageCarResp resp = new FacManageCarResp();//车辆idif(req.Id<=0){resp.requestCode=-1;return resp;}FacManageCarView fmcv = dao.fetch(FacManageCarView.class,Cnd.where("id","=",req.Id));if(fmcv==null){resp.requestCode=-1;return resp;}FacManageCarEntity fmce = new FacManageCarEntity();fmce.fmcv = fmcv;int code;if(fmcv.isCarStatus()==false){code = 1;}else{code = 2;}Dictionary dc = dao.fetch(Dictionary.class,Cnd.where("type","=","car_state").and("val","=",code));fmce.carStatusDesc = dc.getItems();//车辆使用状态描述resp.requestCode=0;resp.fmce = fmce;return resp;
}
@At
public Object queryFacManageRecord(FacManageCarReq req){FacManageCarResp resp = new FacManageCarResp();Pager pager = dao.createPager(req.page, 20);if(req.carId<=0){resp.requestCode = -1;return resp;}Cnd where = Cnd.where("carId","=",req.carId);if (req.sortType == null) {where.orderBy("createTime", "desc");} else {where.orderBy("convert (" + req.sortType.getName() + " using gbk)","" + req.sortType.getSorts() + "");}List<RepairRecord> rrs = dao.query(RepairRecord.class,where,pager);if(rrs==null||rrs.size()==0){resp.requestCode =-1;return resp;}int count = dao.count(RepairRecord.class,where);pager.setRecordCount(count);List<FacManageRepairRecordEntity> fmrres = new ArrayList<FacManageRepairRecordEntity>();List<Dictionary> dr = dao.query(Dictionary.class,Cnd.where("type","=","repairrecord_type"));for(int i=0;i<rrs.size();i++){FacManageRepairRecordEntity fmrre = new FacManageRepairRecordEntity();fmrre.rr = rrs.get(i);fmrre.SNmuber = (req.page-1)*20+i+1;for(Dictionary d : dr){if(d.getVal().equals(""+rrs.get(i).getType()+1)){fmrre.typeDesc = d.getItems();//维修保养记录类型描述}}fmrres.add(fmrre);}resp.requestCode=0;resp.fmrres = fmrres;resp.count = count;resp.pageCount = pager.getPageCount();return resp;}
/*** 维修保养项目接口* @author fjd * @param req* @return*/
@At
public Object queryFacManageOrderItme(FacManageOrderItmeReq req){FacManageOrderItmeResp resp = new FacManageOrderItmeResp();if(req.id<=0){resp.requestCode = -1;return resp;}List<OrderItme> ois = dao.query(OrderItme.class, Cnd.where("rrId","=",req.id)); if(ois==null||ois.size()==0){resp.requestCode = -1;return resp;}int count = dao.count(OrderItme.class,Cnd.where("rrId","=",req.id));List<FacManageOrderItmeEntity> fmoies = new ArrayList<FacManageOrderItmeEntity>();List<Dictionary> dlist = dao.query(Dictionary.class,Cnd.where("type","=","repairrecord_type"));for(int i=0;i<ois.size();i++){FacManageOrderItmeEntity fmoie = new FacManageOrderItmeEntity();fmoie.oi = ois.get(i);fmoie.SNumber = (req.page-1)*20+i+1;//序号for(Dictionary d : dlist){if(d.getVal().equals(""+ois.get(i).getType())){fmoie.typeDesc = d.getItems();//维修保养记录描述}}fmoies.add(fmoie);}resp.count = count;resp.fmoies = fmoies;return resp;
}
}
![](https://nutz.cn/assets/yvr/logo/Octocat_32.png)
好复杂, 先弄个demo试吧
转载于:https://www.cnblogs.com/telwanggs/p/7850167.html
返回json格式 不忽略null字段相关推荐
- java json 返回null,[] Spring4 MVC 返回json格式时候 设置不返回null值属性的有关问题...
[求助] Spring4 MVC 返回json格式时候 设置不返回null值属性的问题 本帖最后由 bighong0404 于 2015-10-06 12:45:38 编辑 背景: 使用@respon ...
- (八): 查询结果直接返回Json格式数据
Bee简单易用:单表操作.多表关联操作,可以不用写sql,极少语句就可以完成SQL操作:10分钟即可学会使用. Bee功能强大:复杂查询也支持向对象方式,分页查询性能更高,一级缓存即可支持个性化优化. ...
- 返回json格式数据乱码
本文为博主原创,未经允许不得转载: 原本返回json格式数据的代码: @ResponseBody@RequestMapping(value = "getListByTime", m ...
- ajax后台如何把对象转为json_57. Django 2.1.7 查询数据返回json格式
需求问题 在日常工作中,对于前端发送过来的请求,后端django大部分都是采用json格式返回,也有采用模板返回视图的方式. 在模板返回视图的方式的确很方便,但是如果涉及到动静分离.ajax请求这类, ...
- Spring MVC--使用Jackson返回JSON格式数据
使用Jackson返回JSON格式数据 index.jsp <%@ page language="java" contentType="text/html; cha ...
- django mysql返回json_Django 1.8.11 查询数据库返回JSON格式数据
Django 1.8.11 查询数据库返回JSON格式数据 和前端交互全部使用JSON,如何将数据库查询结果转换成JSON格式 环境 Win10 Python2.7 Django 1.8.11 返回多 ...
- struts2控制器及拦截器返回JSON格式数据
1. JSON插件 想要使用json必定会用到jquery. 1.1 导入相关的Ajax-jar包-01资料中ajax文件中. commons-beanutils-1.8.0.j ...
- python response.json()报错_Django JsonResponse json格式报错 解决Django响应JsonResponse返回json格式数据报错问题...
想了解解决Django响应JsonResponse返回json格式数据报错问题的相关内容吗,彭世瑜在本文为您仔细讲解Django JsonResponse json格式报错的相关知识和一些Code实例 ...
- @ReponseBody返回json格式的数据
springmvc返回json格式的数据
最新文章
- Java中的回调函数学习-深入浅出
- Windows Phone开发(35):使用Express Blend绘图 转:http://blog.csdn.net/tcjiaan/article/details/7493010...
- 广西大学计算机专业研究生录取分数线,广西大学电子信息(专硕)专业考研录取分数线-研究生分数线-历年分数线...
- java gc 触发_Java GC种类和触发时机
- html折叠菜单列子,基于Vue.js+bootstrap4的左侧可伸缩式菜单
- 博文视点大讲堂第6、7期开课
- win7 mysql 未响应_求助啊 WIN7下安装mysql出问题 老是说未响应~!!
- 汉仪字体安装后PPT找不到_字体不知道去哪下载?我教您
- keil中函数变量定位方法
- C++经典程序代码大全
- 报修管理系统微信小程序源码 带前端后端源码
- CSS calc()函数的用法
- php中句柄是什么意思,“句柄”到底是什么意思啊
- 全球500强企业里用的两字母域名!
- Qt编写安防视频监控系统68-兼容Qt4到Qt6
- XiaoHu日志 11/22~12/3
- 为什么PHP项目运行报错502,php为什么会出现502错误
- 精诚EAS-WMS条码化仓库物流软件
- (转)DVD转换RMVB格式的方法
- Educational Codeforces Round 105 (Rated for Div. 2) 题解