java各层_java web开发中的各种层

java后端开发前,还是应该将各种层划分好,知道各自的作用,今天做一下总结。

Dao层、Entity层、Service层、Controller层、view层

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

功能:只负责与数据库的数据进行交互,dao层是在Mybatis框架下通过@MyBatisDao连接后台代码与数据库的。@Repository用于标注数据访问组件Dao层。

DAO层首先会创建DAO接口,然后会在配置文件中定义该接口的实现类,接着就可以在模块中就可以调用DAO 的接口进行数据业务的而处理。

Dao层用来访问数据库实现数据的持久化(把内存中的数据永久保存到硬盘中)。

个人理解:Dao层用于定义方法接口,然后在service层和serviceimpl层实现接口的方法,从而达到操作数据库的目的。对数据库进行数据持久化操作,方法语句主要是针对数据库的,主要实现一些增删改查操作,在Mybatis中的方法主要与xx.xml内相互一一映射。Dao层内容列表

UserDao.java内部代码:UserDao文件代码

可见,Dao文件里只是定义接口,并标注上注解@Repository

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

功能:控制业务逻辑

Controller层负责具体的业务模块流程的控制,controller层主要调用Service层里面的接口控制具体的业务流程,控制的配置也需要在配置文件中进行。Action是管理业务(Service)调度和管理跳转的。

Service是管理具体的功能的。

Action只负责管理,而Service负责实施。

3、Service层(业务层、biz)

功能:Service层用于实现操作的具体方法,包含了对页面操作模块的代码。

Service用于存放业务逻辑处理,不直接和数据库打交道,为controller层提供方法接口,Service层不仅有接口也有接口的实现方法,接口的实现方法在impl文件里。service层里面的.java文件是接口文件,让impl文件里面的文件来实现impl文件目录Service层里面的ClazzService.java文件

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

功能:entity层用于定义实体,定义各个属性以及各个属性的getter()和setter()方法。

实体层,用于存放实体类,与数据库中的属性值基本保持一致,实现setter()和getter()方法。entity层目录entity层的clazz.java文件entity层的Student.java文件

5、view层

功能:此层与Controller层联系紧密,需要协同开发。view层主要负责前台jsp页面的表示 。注:Dao层,Service层这两个层都可以单独开发,互相的耦合度很低,完全可以独立进行,这样的一种模式在开发大项目的过程中尤其有优势。

Controller,View层因为耦合度比较高,因而要结合在一起开发,但是也可以看作一个整体独立于前两个层进行开发。这样,在层与层之前我们只需要知道接口的定义,调用接口即可完成所需要的逻辑单元应用,一切显得非常清晰简单。

  • 8
    点赞
  • 31
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值