采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
为什么要组装vo呢?感觉和原来的pojo中的字段是差不多的额,这样子服务器端做了这么多setget,压力好大啊,直接给前台返回pojo对象不就是了,他要什么属性就取什么呀。
你好同学~
VO的意义是封装展示层需要的数据,比如CartProductVo,只用来组装页面需要的产品和购物车信息,如果这里不用VO的话是不是只能返回一个Map然后前端来取值了呢~
这里不用纠结什么 页面需要什么,如果需要的是多张表的数据,就用VO取只需要的数据
特别是那个shipping的那里,真的是无法理解,把东西全部get出来又set回去,就是换了个类名,前辈,拜托你能不能说说为啥啊,不知道为什么,总觉得这样好恼火,一点意义都没有
一般Vo有两种情况: 有些时候vo就是pojo的缩减版,去掉了前端用不着的信息或者不能让前端知道的信息 还有一种情况可能我一次要返回给前端多个pojo组装起来的数据,我就可以组装一个pojo返回给前端,前端一次性就拿到所有数据了 再说说CartProductVo,在getCartVoLimited()这个方法里,我门先查出购物车表中所有的Cart并存入到List中,我们的确可以将这个List<Cart>直接返回,但Cart中都有什么数据呢, private Integer id; private Integer userId; private Integer productId; private Integer quantity; private Integer checked; private Date createTime; private Date updateTime; 可以看到关于产品信息的只有一个productId,那么前端拿到这样的信息,又得拿着productId又去请求后端,那么作为后端人员,我们得到这个productId,可以很方便的关联查数据库,查到对应的Product,但是在Product一些数据是本次前端购物车业务用不到的,所以我们就封装一个CartProductVo,就可以将Cart的属性和对应的Product组装起来,就成了前端需要的CartProductVo
不知道现在兄弟你弄明白没?我现在也看到那里了。。感觉好乱
老哥,我也和你一样的想法,我看你是17年评论的这个,你现在想通了吗
我认为你可以把它认为是一种规范。
登录后可查看更多问答,登录/注册
前后端分离,数据库接口设计,架构设计,功能开发,上线运维
10.2k 10
1.9k 22
1.4k 21
2.2k 21
2.0k 18