前言
在前面的API开发中,有一些朋友私信我对定义的VO、BO、PO对象存在疑问,不太明白各层定义的对象的好处!都是失血或贫血对象,对象的字段又很相近,传递时拷贝来拷贝去,感觉用起来更麻烦,这么做到底有什么好处呢?
你是否有什么类似的疑问?对于没有实际案例场景的同学,我认为这是很正常的想法。但实际的场景:Service层获取到PO对象后,会根据不同场景做不同的组装、计算等逻辑,所以BO就很必要了!你可以这么想:如果只是对数据库PO的直接映射,是不是Service层都显的鸡肋?所以往往在实际的项目里,Service层才是最厚的那层,才是与你打交道最多的地方,所以对于数据库的PO对象包装一层的BO就很重要,它可以做很多事,慢慢领会吧!这里举一个我见过的最典型的反面例子:用户接口返回了加密后的密码!天呐,这祭天不冤枉吧~~
本文,我会通过需求,完整写出我开发图书详情相关接口(管理员端)的思路,这才是真正的实战!
文章目录
一、需求
B端管理员端和C端学生端,都有图书详情的模块,大同小异,管理员侧重书评管理
,而学生侧重对自己有效的信息。主要区别如下:
- B端