Java项目中的各种层

 

1、Dao层(持久层、数据访问层)

2、Controller层(控制层、action层)

3、Service层(业务层、biz)

4、Entity层(实体层、domain层)

5、view层(负责前台jsp页面的表示)

6config层(负责ssm的整体配置,主要包含spring,springmvc,mybatis的配置文件)

7、dto层(数据传输对象层)

 

工作流程:

用户发出请求到Controller
- Controller调用Service的业务方法
- Service调用Dao访问数据库,并返回数据
- Service返回数据到Controller
- Controller跳转到视图,并渲染数据
- 将视图响应给用户

DTO 与 Entity 差别和使用条件

entity:实体类,是用于说明某实体中所包含的所有属性,与数据库中的字段是保持一致的

DTO:数据传输对象,顾名思义,DTO是用于数据传输的,是根据实际的业务需求来决定这个对象具体包含哪些属性。是根据实际的业务需求来,将所要的数据返回给前端,以免造成不必要的资源浪费和数据暴露,造成不必要的安全问题。

举个例子
现有学生实体类(entity),属性包括:id、学号、姓名、班级、性别、院系、专业;
但是现在前端的业务只需要返回学生的 学号、姓名、班级、专业 ,这时如果使用entity返回对象数据则会造成不必要的数据泄露(id、性别等),所以,这里采用数据传输对象(DTO)会更好一些,这个DTO只需要包含需要的属性即可。

posted @ 2023-10-06 19:00  Collect  阅读(708)  评论(0)    收藏  举报