vo的构造方法注意小事项

1.有时候使用VO时,sql查询语句写的都对,要查询的字段也很明确,但是却查不到数据,

很有可能是VO中的构造方法的字段属性数量对不上,要注意一下。VO中的私有属性可

以很多,并且多个查询可以共用一个VO,但是要保证VO中的该构造方法中的参数数量

要与对应sql查询的字段数量要一致,否则就可能会导致查到的数据为空,或者如果使用

findBySql()的话,还可能会报数组下标越界的异常,很有可能就是构造方法属性的数量

跟sql返回的字段数量对不上导致的。

 

2.当使用vo接收sql查询的数据时,eg:

User user = userDao.findListBySql(UserVo.class, sql, params);

返回的user有多条数据,但是数据中的属性都为空

解决:
(1)首先要保证UserVO中的属性的数量与sql中查询的属性的数量一致。
(2)其次要保证sql中查询的各个属性的名称与UserVO中的属性的名称一致。
(3)然后要保证sql中查询的各个属性的前后顺序要与UserVO中的属性前后顺序一致。
(4)最后要保证UserVO中的构造方法的属性数量、名称要对。
多个查询可以公用一个vo,vo中的属性只可以多,不能少,要能与sql对的上,构造方法可以写多个,但是
属性数量和名称要对

3.还有一种情况是代码写的都对,也能查到多少多少条数据,但是返回的vo实体对象里的属性

都是空,全部都是null,这时可以尝试把vo中的lombok注解@Data去掉,改成手写的get和set

方法试一下。

 

<1>.可以通过@JsonFormat注解改变时间格式

@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date modifyTime;
posted @   sensen~||^_^|||&  阅读(85)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 记一次.NET内存居高不下排查解决与启示
点击右上角即可分享
微信分享提示