WEB开发网
开发学院软件开发Java EJB 3.0 在 WAS V7 上开发部署的最佳实践 阅读

EJB 3.0 在 WAS V7 上开发部署的最佳实践

 2010-01-04 00:00:00 来源:WEB开发网   
核心提示: 避免使用 DAO 模型:当然我们也可以使用 RAD 提供的 JPA 工具(JPA Tools)来生成一种称之为“JPA 管理 Bean(JPA Manager Bean)”的对象来管理实体,这种管理 Bean 采用我们所熟知的 DAO 模型来构建管理体系,EJB 3.0

避免使用 DAO 模型:

当然我们也可以使用 RAD 提供的 JPA 工具(JPA Tools)来生成一种称之为“JPA 管理 Bean(JPA Manager Bean)”的对象来管理实体。这种管理 Bean 采用我们所熟知的 DAO 模型来构建管理体系,在 EntityManager 之上进行了一次封装,并提供基本的 CRUD 方法。但是在企业级应用中并不推荐使用 JPA 管理 Bean 而是使用之前的方法,依赖容器来注入 EntityManger,这样的优点是容器可以帮我们更好地管理和维护 EntityManager,并且能够轻松地将其加入到一个全局事务当中(JPA 管理 Bean 在全局事务中无法使用)。以下方法(会话 Bean 的一个方法)示例了 EntityManager 对象的使用:


清单 5. EntityManager 的使用
 public void insertDB(long id) { 
    Tablesample bo=new Tablesample(); 
    bo.setId(id); 
    bo.setName("test"+id); 
    em.persist(bo);    
 } 

事务策略最佳实践

事务是企业应用中非常重要的一环。通常情况下,存在三种事务模型:本地事务模型(Local Transaction Model),编程式事务模型(Programmatic Transaction Model),声明式事务模型(Declarative Transaction Model)。

本地事务模型 :

在本地事务模型中,事务由底层数据库(DBMS)或消息提供者(Message Provider)来管理维护,从开发者的角度来看,只需要管理使用连接(connections)而不需要管理事务。例如我们一般情况下的简单的 JDBC 应用开发。

本地事务模型在小型工程的简单更新操作中能够很好地工作,但是在更加复杂的应用场景下,这种模型会让开发者面对很多问题。一个问题就是在处理复杂逻辑时,面向连接的编程容易造成程序的错误。另一个问题是在一个 XA 全局事务中难以协调各资源的工作。

上一页  3 4 5 6 7 8 9 10  下一页

Tags:EJB WAS 开发

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接