首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 其他教程 > 其他相关 >

EJB 三 学习笔记: HelloWorld Stateless SessionBean

2012-10-29 
EJB 3 学习笔记: HelloWorld Stateless SessionBean我的开发环境是eclipse 3.4 + glassfish-v2?1。下载安装

EJB 3 学习笔记: HelloWorld Stateless SessionBean

我的开发环境是eclipse 3.4 + glassfish-v2

?

1。下载安装glassfish-v2,具体步骤就不说了,此处省略500字。。。

2。运行asadmin start-appserv启动应用服务器。

3。登陆admin console, http://localhost:4848


EJB 三 学习笔记: HelloWorld Stateless SessionBean

?

4。创建eclipse project


EJB 三 学习笔记: HelloWorld Stateless SessionBean


EJB 三 学习笔记: HelloWorld Stateless SessionBean

?

从%glassfish_home%/lib中找到javaee.jar和appserv-rt.jar这两个文件,加入到project Libraries中。


EJB 三 学习笔记: HelloWorld Stateless SessionBean

?

5。编写HelloWorld EJB

?

IHelloWorld.java (remote interface):

package ejb;import javax.ejb.Remote;@Remotepublic interface IHelloWorld{public String sayHello();}

?

HelloWorld.java (stateless session bean)

package ejb;import javax.ejb.Stateless;@Stateless(name="HelloWorldBean", mappedName="ejb/HelloWorldBeanJNDI")public class HelloWorld implements IHelloWorld{public String sayHello(){return ("Hello World! This is my first EJB3 Stateless SessionBean!");}}

?

mappedName定义了HelloWorld的jndi name,稍后客户端测试程序需要用这个名字来做lookup。

?

6。编写ant build.xml

<?xml version="1.0"?><project name="helloWorld" default="deploy" basedir="."><property name="build.dir" value="${basedir}/class"/><property name="glassfish.home" value="F:/glassfish-v2ur2"/><property name="deploy.dir" value="${glassfish.home}/domains/domain1/autodeploy"/><target name="jar"><jar destfile="helloWorld.jar"><fileset dir="${build.dir}"><include name="ejb/*.class"/></fileset></jar></target><target name="deploy" depends="jar"><copy file="${basedir}/helloWorld.jar" todir="${deploy.dir}"/></target></project>

?

7。打包,部署。

?

运行build.xml,把程序打包成helloWorld.jar并拷贝到glassfish的自动部署目录。如果部署成功,在glassfish的admin console中,Applications->EJB Modules下面可以找到我们的HelloWorldBean。如果程序中没有设置mappedName,去Application Server->General->JNDI Browsing也可以找到对应的jndi name。


EJB 三 学习笔记: HelloWorld Stateless SessionBean


EJB 三 学习笔记: HelloWorld Stateless SessionBean

?

8。编写客户端测试程序。

package test;import javax.naming.InitialContext;import ejb.IHelloWorld;public class Test{public void runTest() throws Exception{InitialContext ctx = new InitialContext();IHelloWorld bean = (IHelloWorld)ctx.lookup("ejb/HelloWorldBeanJNDI");System.out.println(bean.sayHello());}public static void main(String[] args){try{Test t = new Test();t.runTest();}catch(Exception e){e.printStackTrace();}}}

?

运行测试程序,成功打印出: Hello World! This is my first EJB3 Stateless SessionBean!

?

感觉ejb3比ejb2少了一堆繁琐的文件和xml配置,而且支持pojo风格的编程,开发效率和可移植性都比以前要好得多。

热点排行