controller层 —> service层(serviceImpl实现service接口)—> mapper / dao层 —> mapper.xml文件 ——> model / entity / pojo实体类 ——> 数据库表
解释:controller层调用了service层的具体功能和方法,service层由service对应的接口和实现类组成,serviceImpl实现service的相关接口同时完成相关的业务逻辑处理。service层(serviceImpl)再调用mapper层的接口进行业务逻辑应用的处理。mapper层的接口在对应的xml配置文件中进行配置、实现以及关联,故mapper层的任务就是向数据库发送sql语句,完成数据的处理任务。pojo层映射数据库,pojo层的一个实体类映射数据库中的一张表。
model(entity)
model是模型的意思,与entity、domain、pojo类似,是存放实体的类,类中定义了多个类属性,并与数据库表的字段保持一致,一张表对应一个model类。
主要用于定义与数据库对象应的属性,提供get/set方法,tostring方法,有参无参构造函数。
dao(mapper)
又被成为mapper层,叫数据持久层,先设计接口,然后在配置文件中进行配置其实现的关联。
dao层的作用为访问数据库,向数据库发送sql语句,完成数据的增删改查任务。
数据持久化操作就是指,把数据放到持久化的介质中,同时提供增删改查操作,比如数据通过hibernate插入到数据库中
service
业务逻辑层,完成功能的设计
和dao层一样都是先设计接口,再创建要实现的类,然后在配置文件中进行配置其实现的关联。接下来就可以在service层调用dao层的接口进行业务逻辑应用的处理。
service的impl是把mapper和service进行整合的文件
封装Service层的业务逻辑有利于业务逻辑的独立性和重复利用性。
controller
控制层,控制业务逻辑service,控制请求和响应,负责前后端交互
controller层主要调用Service层里面的接口控制具体的业务流程,控制的配置也要在配置文件中进行