J2EE相关组件知识总结

面试官问你J2EE有哪些组件,是不是会一脸懵圈,组件是什么鬼?

其实我们的JavaEE应用程序就是由组件构成的,JavaEE组件是具有独立功能的单元,它们通过相关的类和文件进行组装,成为应用程序,并且与其他组件交互。

例如:控制器组件、EAO组件(DAO层也被称为EAO层),表现层组件等等。下面我们就根据JavaEE的分层模型来说说各层组件的详细情况。

表现层组件:

主要负责收集用户输入数据,或者向客户显示系统状态。最常用的表现层技术是JSP,但JSP并不是唯一的表现层技术。表现层还可以由Velocity、FreeMaker和Tapestry等技术完成,或者使用普通的应用程序充当表现层组件,甚至可以是小型智能设备

控制器组件:

对于spring MVC框架而言,框架提供了一个前端核心控制器dispatchServlet,而核心控制器负责拦截用户请求,并将请求转发给用户实现的控制器组件。而这些用户实现的控制器则负责处理调用业务逻辑方法,处理用户请求。

业务逻辑组件:

这些组件是系统的核心组件,实现系统的业务逻辑。通常,一个业务逻辑方法对应一次用户操作。一个业务逻辑方法应该是一个整体的,因此我们要求对业务逻辑方法增加事务性。业务逻辑方法仅仅负责实现业务逻辑,不应该进行数据库访问。因此,业务逻辑组件中不应该出现原始的Hibernate。JDBC等API。

为什么要将业务逻辑实现与持久层的技术分离呢?一个很重要的原因是:当系统需要在不同的持久层技术之间切换时,系统的业务逻辑组件无须做任何改变。

DAO组件:

Data Access Object,也被称为数据访问对象。这个类型的对象比较缺乏变化,每个DAO组件都提供Domain Object对象基本的创建、查询、更新和删除等操作,这些操作对应于数据表的CRUD等原子操作。当然,如果采用不同的持久层访问技术,DAO组件的实现会完全不同。为了业务逻辑组件的实现与DAO组件的实现分离,我们为每个DAO组件都提供接口,业务逻辑组件面向DAO接口编程,从而提供更好的解耦。

领域对象组件:

领域对象(Domain Object)抽象了系统的对象模型。通常而言,这些领域对象的状态都必须保存在数据库里面。因此,每个领域对象通常对应一个或多个数据表,领域对象通常需要提供对数据记录的访问方式。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值