`
tigers20010
  • 浏览: 47254 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

jboss实体bean详解

阅读更多

它属于java持久化规范规范(JPA)里的技术,实体bean可以和数据库表之间建立映射关系。那么程序员就可以随心所欲的用操作对象的方式来操作数据库了。JPA的出现是为了简化持久化开发工作和整合ORM技术。目前实现JPA的规范的主流产品有HIberanteg,TopLinkOpenJPA。在jboss中采用Hiberante作为其持久化实现产品。

根据JPA规范:在实体bean应用中,我们要在应用的类路径下的META-INF目录加入持久化配置文件persistence.xml

在该文件中:

<persistence-unit name=”tiger” transaction-type=”JTA”></persistence-unit>为持久化单元 name为单元名称.transaction-type:为事务类型,默认为JTA

<jta-data-source> java:tigerDS </jta-data-source>为数据源,java:tigerDS为数据源名称

 

创建与数据库映射的实体bean

  @Entity

@Table (name=”person”)

   public class Person  implements Serializable{

@Id @Column(name=”id”)@GeneratedValue(strategy=GenerationType.IDENTITY)

private Integer id;

@Column(name=”name”,length=20,nullable==”false”)

private String name;

    public Integer getId() {

       return id;

    }

 

    public void setId(Integer id) {

       this.id = id;

    }

 

    public String getName() {

       return name;

    }

 

    public void setName(String name) {

       this.name = name;

  }

}

对实体的增删改查,是通过实体管理器(EntityManager)来完成的。它可以通过

@PersistenceContext(unitName=”tiger”) EnittyManager em 得到。如下:

Public class PersonServiceBean {

@PersistenceContext(unitName=”tiger”) EnittyManager em

Public void delete(Interger personId){

   em.rmove(em.getReference(Person.class,personid));

}

      

Public List<Person> getPersons(){

return em.createQuery(“select o from Person o”).getResultList();

}

Public void save(Person person){

     em.persist(person);

}

 

 

 

 

 

 

 

 

0
1
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics