springboot中对各个层的理解
1、entity层:实体层,数据库在项目中的类。也被称为model层,pojo层。
用于定义与数据库对象的属性,提供get/set方法,带参和无参的构造方法。
一般数据库一张表对应一个实体类,类属性同表字段一一对应。
2、dao:持久层,主要是和数据库进行交互。也被称为mapper层
dao层首先会创建dao接口,接着在配置文件中定义该接口的实现类,然后可以在模块中调用dao的接口进行数据业务的处理,不用关注此接口的具体实现是哪一类,dao层的数据源和数据库是在配置文件中进行配置的。
简单的说就是:dao层的作用为访问数据库,向数据库发送sql语句,完成数据的增删改查任务。
3、service层:业务层控制业务(业务逻辑层)
业务模块的逻辑应用设计,和dao层一样都是先设计接口,再创建要实现的类,然后在配置文件中进行配置其实现的关联。接下来就可以在service层调用接口进行业务逻辑应用的处理。
4、controller层:控制层,控制业务逻辑
具体的业务模块流程的控制,controller层主要调用service层里面的接口控制具体的业务流程,控制的配置也要在配置文件中进行。
也就是说,controller层的功能为请求和响应控制。负责前后端交互,接受前端请求,调用service层,接受service层返回的数据,最后返回具体的页面和数据到客户端。
好处:封装service层的业务逻辑有利于业务逻辑的独立性和重复利用性。
5、view层:主要负责前端jsp页面的表示
6、vo层:value object值对象/view object表现层对象
主要对应页面显示(web页面/swt、swing界面(swing就是java做的桌面应用))的数据对象。可以和表对应,也可以不对应,这需要根据业务的需求。
SpringBoot的流程:
前端发送请求,controller控制层接收请求信息,然后调用service层的接口以及接口实现类,实现类再调用dao层去操作数据库,dao层把数据返回给service层,然后再在service层进行业务处理,再接着把数据返回给controller控制层。