ejb3 jpa初探

通过查询和插入来显示ejb3 jpa的例子:
db server:sql server 2005 (express)(db:zhou, table:SG_Simple)
tools:myeclipse6.1
app server:jboss 4.2.3 GA
jdk:5.0
ejb3 jpa 中使用注解来简化编码
在ejb3中,你只需创建一个interface,创建一个class,在class上加几行注解连关联interface。
在jpa中,你只需一个class和一些注解。加上persistence.xml文件。orm就形成了。
首先jboss中配置与数据库连接的jndi-name。如下图:


ejb3 jpa初探_第1张图片
在jpa的persistence.xml会配置如何获取datasource通过此jndi

jboss中的persistence.xml:

ejb3 jpa初探_第2张图片

websphere中的persistence.xml:

ejb3 jpa初探_第3张图片

本例可以在jboss和websphere中运行,因两者通过jndi获取ejb对象的字符串有点差别,所以通过建一个serverlet(继承GenericServlet)在程序启动的时候读取配置文件中的值来获取是用的哪个app server(jboss,websphere)。
配置文件(config001.properties)中的值:
application.server=jboss

application.server=websphere
下面是demo的工程结构图:

ejb3 jpa初探_第4张图片

db 截图:



本例是用ant进行编译打包的,打包后的工程:

ejb3 jpa初探_第5张图片

本例是以ear包的形式发布到app server中的:
可以用两个不同的ant文件分别对不同的server进行打包部署:

为了使用ejb3与jpa,项目中引用了jboss中的一些jar包,如图:因为你最后再jboss中跑程序,所以就没必要再把jar包拷到程序的lib下了。这里只要eclipse工程中编译能通过就可以了。
<classpathentry kind="lib" path="C:/Development/jboss-4.2.3.GA/server/default/lib/jboss-ejb3x.jar"/>
<classpathentry kind="lib" path="C:/Development/jboss-4.2.3.GA/server/default/lib/ejb3-persistence.jar"/>
<classpathentry kind="lib" path="C:/Development/jboss-4.2.3.GA/server/default/lib/servlet-api.jar"/>
ejb3 jpa初探_第6张图片

页面显示:

ejb3 jpa初探_第7张图片




你可能感兴趣的:(sql,jboss,server,ant,jpa,websphere)