×

j2ee三层架构

什么是数据持久层?J2EE组件J2EE容器J2EE技术

admin admin 发表于2022-06-18 19:28:03 浏览102 评论0

抢沙发发表评论

什么是数据持久层


ta Persistence)和数据源层(Da
ta Source)。它其实是在三层架构中增加了两个中间层。控制/中介层位于表示层和领域层之间,数据持久层位于领域层和基础架构层之间。由于对象范例和关 系范例这两大领域之间存在阻抗不匹配,所以把数据持久层单独作为J2EE体系的一个层提出来的原因就是能够在对象-关系数据库之间提供一个成功的企业 级映射解决方案,尽最大可能弥补这两种范例之间的差异。
三种持久层主流解决方案1、JDBC许多开发者用JDBC进行数据库程序的开发。此中方式很多情况下都使用DAO模式,采用SQL进行查询。虽然用此方式可以使应用程序代码与具体的数 据库厂商和数据库位置无关,不过JDBC是低级别的数据库访问方式,JDBC并不支持面向对象的数据库表示。JDBC数据库表示完全围绕关系数据库模型。 在大型应用程序的DAO中书写这样的代码,维护量是非常大的。
2、EJB在J2EE的规范中,为EJB定义了两种持久化的解决方案:一种是BMP,另一种是CMP。其中CMP不需要将SQL语句加入到代码中。目前,在采 用J2EE的应用中,EJB CMP方式得到了广泛应用。更加引人注意的是,随着EJB规范的发展,CMP也包含了一些高级关系的内容。但是,CMP的使用比较复杂,对很多开发人员来 说比较难以掌握。而且,不是在所有的情况下都适合在系统中采用EJB,而且想要非常清楚的了解EJB规范也是非常费时的。在用EJB编码前,先要让专家理 解API,然后需要了解每一个容器部署时所要关注的技术
。此外,许多情况下商用容器的性能和支持也不是很好。
3、JDOJDO是一个存储java对象的规范,JDO规范1.0的提出可以使你将精力集中在设计Java对象模型,然后在企业应用软件架构的不同层面中存储 传统的Java对象(Plain Old Java Objects,简称POJOs),采用JDOQL语言进行SQL操作。一些公司(包括sun)企图根据JDO规范进行设计并实现JDO产品,然而他们都 不能很好的进行实现,并且性能优化上比较差。
持久就是对数据的保持,即对程序状态的保持。通常通过数据库实现持久层是把数据库实现这块当作一个独立逻辑拿出来。
说白了,就是数据库程序是在内存中的,为了使程序运行结束后状态得以保存,就要保存到数据库使用ORM(对象关系数据库映射)技术可以避免代码直接操作数据库,增加可移植性,可扩展性,可维护性。

J2EE组件J2EE容器J2EE技术


J2ee技术入门——缩写名词解释J2EE包括以下技术:
EJB:Enterprise JavaBeans 企业JavaBean组件
IDL:Interface Definition Language 接口定义语言
JMS:Java Message Service Java消息服务
JNDI:Java Naming and Directory Interface Java命名目录接口
RMI:Remote Method Invocation 远程方法调用
JTA:Java Transaction API Java事务API
JTS:Java Transaction Service Java事务服务
Object Serialization:对象序列化
JavaMail:Java邮件服务
JDBC:数据库访问API
JSP:Java Server Pages
Servlet:

EJB分为三种:
Session Bean(会话BEAN)
Entity Bean(实体BEAN)
Message Driver Bean(消息驱动BEAN)

Session Bean分为两种:
Stateless Session Bean(无状态会话Bean)
Statefull Session Bean(有状态会话Bean)

Entity Bean分为两种:
CMP:Container Manager Persistence(容器管理持久性)
BMP:Bean Manager Persistence(Bean管理持久性)

其他缩写名词:
DTO:Data Transport Object 数据传输对象
JDO:Java Data Object
DAO:Database Access Object 数据库访问对象
POJO:Proterozoic Java Object Java原生对象
VO:Value Object 值对象
SOAP:Simple Object Access Protocol 简单对象访问协议

j2ee三层架构和MVC的区别


MVC是一个框架模式,它强制性的使应用程序的输入、处理和输出分开。
三层,其实不是真正的三层,也可以多层哦,没有规定必须三层

具体的找一个MVC的例子,你研究一下,再加上你之前的理论,一下就能看明白了

UI层怎么分,这就是MVC了,找一个例子,看一下就能明白!
-j2ee三层架构