WEB开发网
开发学院软件开发Java 使用 Apache OpenJPA 开发 EJB 3.0 应用,第 8 部... 阅读

使用 Apache OpenJPA 开发 EJB 3.0 应用,第 8 部分: 在 Java EE 环境下开发、部署 OpenJPA 应用

 2010-04-19 00:00:00 来源:WEB开发网   
核心提示: ILocalAnimal 接口类的全部源代码如下:1.packageorg.vivianj.jpademo;2.3.importjavax.ejb.Local;4.5.importorg.vivianj.jpademo.beans.Animal;6.7.@Local8.publicinterfa

ILocalAnimal 接口类的全部源代码如下:

1.    package org.vivianj.jpademo; 
2.    
3.    import javax.ejb.Local; 
4.    
5.    import org.vivianj.jpademo.beans.Animal; 
6.    
7.    @Local 
8.    public interface ILocalAnimalDAO { 
9.     public void persistAnimal(Animal animal); 
10.   } 

AnimalDAO 实现类中实现了上面定义的两个接口 IAnimalDAO、ILocalAnimalDAO,并且提供了基于 OpenJPA、Java EE 容器的实体访问实现代码。实例中我们选择 @ javax.persistence.PersistenceContext 注释向会话 Bean 中注入 EntityManager 对象,根据实际需求的不同,还可以选择使用 @PersistenceUnit 注释向会话 Bean 中注入 EntityManagerFactory 对象。

AnimalDAO 中还使用了 javax.ejb.Stateless 注释,它用于声明当前的会话 Bean 是一个无状态的会话 Bean。

1.    package org.vivianj.jpademo; 
2.    
3.    import javax.ejb.Stateless; 
4.    import javax.persistence.EntityManager; 
5.    import javax.persistence.PersistenceContext; 
6.    
7.    import org.vivianj.jpademo.beans.Animal; 
8.    
9.    @Stateless 
10.   public class AnimalDAO implements IAnimalDAO,ILocalAnimalDAO { 
11.    // 由 Java EE 容器向会话 Bean 中注入 EntityManager 对象 
12.    @PersistenceContext 
13.    EntityManager em; 
14.    
15.    public void persistAnimal(Animal animal) { 
16.      /* 由于 EntityManager 的事务已经委托给 Java EE 容器的 JTA 事务,因此 
17.      * 这里直接持久化实体 , 不再需要使用 begin()、commit() 显式的处理实体 
18.     * 操作时候的事务 
19.     */ 
20.      em.persist(animal); 
21.    } 
22.  
23.   } 

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

Tags:使用 Apache OpenJPA

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