ENTITY/DTO/VO关系
在刚开始接触项目代码的时候,看到项目中的代码对于数据库操作的对象都会有具体的类用来存储,但是又分为entity(实体),DTO(数据传输类),VO(视图层显示)三种类型。
- entity
实体类是在对数据库操作时使用的,所有字段与数据库对应表格字段对齐,并且表设计时应该严格遵循“实体这个概念”,一个可以被具象化的数据体才能叫做实体,而不是表格上显示什么字段,就把这些字段抽象为所谓的一个“实体”。 - DTO
数据传输类的存在是为了将实体类的数据经过适当的筛选(增加或减少相应的字段)提供给外部,暴露在外部的接口返回值不允许是实体类,这是对数据库的一种保护,无论如何提供给外部的接口不可以直接获取到数据库的数据。而实体类与DTO一般通过DTO中的静态方法进行相互转换。 - VO
提供给视图层的数据类,与用户所见界面展示字段一致,但是我的实际工作中很少使用VO类。