快速业务通道

关于EJB的持久化对象技术分析 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-23
</entity> </enterprise-beans> <assembly-descriptor> <container-transaction> <method> <ejb-name>UserEJB</ejb-name> <method-name>*</method-name> </method> <trans-attribute>Required</trans-attribute> </container-transaction> </assembly-descriptor> </ejb-jar>

列表2描述了主键的名字和类型,以及实体EJB的哪些域将被持久化。如果关系数据库中没有一个名为"UserEJB"的表的话,那容器会自动建立一个相应的表。

在列表3中,每一个域都定义了一个相应的cmp-field元素。当容器自动建立一个新表时,它会由此得知要创建那些新的字段,并将域与特定的字段对应起来。

列表3. jaws.xml部署描述文件

<?xml version="1.0" encoding="ISO-8859-1"?> <jaws> <datasource>java:/DefaultDS</datasource> <type-mapping>Hypersonic SQL</type-mapping> <enterprise-beans> <entity> <ejb-name>UserEJB</ejb-name> <create-table>true</create-table> <table-name>UserEJB</table-name> <remove-table>false</remove-table> <tuned-updates>false</tuned-updates> <read-only>false</read-only> <time-out>300</time-out> <cmp-field> <field-name>USERID</field-name> <column-name>USERID</column-name> </cmp-field> <cmp-field> <field-name>FULLNAME</field-name> <column-name>FULLNAME</column-name> </cmp-field> <cmp-field> <field-name>ADDRESS</field-name> <column-name>ADDRESS</column-name> </cmp-field> <cmp-field> <field-name>CITY</field-name> <column-name>CITY</column-name> </cmp-field> <cmp-field> <field-name>STATE</field-name> <column-name>STATE</column-name> </cmp-field> <cmp-field> <field-name>ZIP</field-name> <column-name>ZIP</column-name> </cmp-field> </entity> </enterprise-beans> </jaws>

UserEJB的部署方法如下:先将部署描述文件与编译好的类一起打成一个jar包,然后将这个包放在JBoss服务器的deploy目录下就可以了,JBoss会自动发现这个包,并自动进行部署。

关于EJB的持久化对象技术分析(6)

时间:2010-12-04

EJB客户端

在本例中,你可以在同一JVM虚拟机中访问EJB。这种设计简化了我们的一些工作,要获得EJB的home接口,我们需要进行一个特殊的下溯造型。列表4简述了UserService对象,它用来访问我们的EJB。

列表4. UserService对象

public class UserService {  private static LocalUserHome home = null;  private static LocalUserHome getUserHome()  throws NamingException  {   if (home != null)   {    return home;   }   // 取得一个上下文   InitialContext ctx = new InitialContext();   // 取得对UserEJB的一个引用   System.out.println("Looking up EJB...");   Object objRef = ctx.lookup("local/UserEJB");   // 取得UserEJB的home接口   home = (LocalUserHome)objRef;   return home;  }  public static UserInfo getUser(String userID)  {   UserI

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站: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号