在目前互联网框架中,我们听得最多的三层架构,主要有controller、serivce、dao,所以就引入了一系列的按照包命名来区分各层次,比如entity、web、dao....,那么再细分还有VO、DTO、DO、PO...,今天就大概了解了一下,做个笔记~
其实我们也没有必要区分得非常细,大概知道就行了,可以进行合并在一起。
用户发出请求(可能是填写表单),表单的数据在展示层被匹配为VO。 展示层把VO转换为服务层对应方法所要求的DTO,传送给服务层。 服务层首先根据DTO的数据构造(或重建)一个DO,调用DO的业务方法完成具体业务。 服务层把DO转换为持久层对应的PO(可以使用ORM工具,也可以不用),调用持久层的持久化方法,把PO传递给它,完成持久化操作。 对于一个逆向操作,如读取数据,也是用类似的方式转换和传递,略。
DO:对应数据库表结构 VO:一般用于前端展示使用 DTO:用于数据传递。(接口入参和接口返回值都可以)
controller层:
public List<UserVO> getUsers(UserDTO userDto);
Service层:
List<UserDTO> getUsers(UserDTO userDto);
DAO层:
List<UserDTO> getUsers(UserDO userDo);
参考链接: https://www.cnblogs.com/zhangshiwen/p/7945064.html https://www.cnblogs.com/jpfss/p/9947811.html https://www.cnblogs.com/zxf330301/p/6534643.html https://blog.csdn.net/u011870547/article/details/81077153