快速业务通道

eclipse + JBoss 5 + EJB3开发指南(6):编写第一个实体Bean程序 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-15
  public void setPassword(String password)     {         this.password = password;     } }

eclipse + JBoss 5 + EJB3开发指南(6):编写第一个实体Bean程序(3)

时间:2011-09-18 blogjava 哈佛校训

三、配置persistence.xml文件

在META-INF目录中建立一个persistence.xml文件,代码如下:

<?xml version="1.0" encoding="UTF-8"?> <persistence xmlns="http://java.sun.com/xml/ns/persistence"     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"     xsi:schemaLocation="http://java.sun.com/xml/ns/persistence     http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd"     version="1.0">     <persistence-unit name="myentity">         <jta-data-source>java:/MyPIM</jta-data-source>         <properties>             <property name="hibernate.hbm2ddl.auto" value="none" />             <property name="hibernate.dialect"  value="org.hibernate.dialect.MySQL5Dialect" />         </properties>     </persistence-unit> </persistence>

其中<jta-data-source>元素的值就是mysql-ds.xml文件中配置的数据源名。如果使用注释配置 session bean,META-INF目录下只有两个文件即可:MANIFEST.MF和persistence.xml。

四、在session bean中调用实体bean

package service; import java.util.ArrayList; import java.util.List; import javax.ejb.Stateless; import javax.persistence.EntityManager; import javax.persistence.PersistenceContext; import entity.User; @Stateless public class UserBean implements UserBeanRemote {     @PersistenceContext(unitName="myentity")     protected EntityManager em;     @Override     public String getPassword()     {         User user = em.find(User.class, 1);         return user.getPassword();     } }

其中UserBeanRemote为远程接口。要注意的是,@PersistenceContext注释的unitName属性值必须和 persistence.xml文件中的<persistence-unit>元素的name属性值相同。

五、客户端调用session bean

InitialContext ctx = new InitialContext(); UserBeanRemote userBeanRemote = (UserBeanRemote) ctx.lookup ("MyEnterprise/UserBean/remote"); System.out.println(userBeanRemote.getPassword());

由于本书的程序都在一个ear包中,因此,默认的jndi名是MyEnterprise/UserBean/remote,如果直接 发布包含EJB的jar包,默认的jndi名称为UserBean/remote。

运行上面的代码后,将输出如下的字符串:

TaokQpoNJQb02eafO/JgYw==

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号