读书人

开发第一个EJB使用

发布时间: 2013-03-19 17:22:05 作者: rapoo

开发第一个EJB应用

服务器:jboss-6.1.0.Final

项目结构如图:

开发第一个EJB使用

服务器端开发:

1.新建EJB Project

2.编写EJB代码(接口、实现类)

接口:FirstEjb.java

实现类:FirstEjbBean.java

3.利用注解配置EJB(定义EJB的类型和访问方式)

FirstEjb.java

public interface FirstEjb {public String saySomething(String name);}

FirstEjbBean.java

import javax.ejb.Remote;import javax.ejb.Stateless;@Stateless@Remotepublic class FirstEjbBean implements FirstEjb {@Overridepublic String saySomething(String name) {return "你好," + name;}}

4.部署到JBoss并启动JBoss

客户端开发:

5.开发应用客户端-新建一个Java项目

6.将客户端的依赖包添加到项目的类路径中
* JBOSS_HOME/clietn/*.jar
可行性:可以新建User Library,添加Library。

Windows - Preferences - Java - Build Path - User Libraries

开发第一个EJB使用

然后在Project的Build Path中引入Library,

Configure Build Path - Library - Add Library - User Library - 选中。

7.将EJB项目的接口打包(客户端只需要EJB的接口即可),并把这个jar包加入到客户端项目的类路径中(Export - jar)

将EJB项目添加到客户端项目中(Add Project)

8.编写客户端代码
调用方法:
(1)初始化上下文
InitialContext context = new InitialContext();
(2)获得接口的实例(在命名空间里查找,EJB名称/访问方式)
FirstEjb firstEjb = (FirstEjb)context.lookup("FirstEjbBean/remote");
(3)调用方法
firstEjb.saySomething("张三");

import javax.naming.InitialContext;public class FirstEjbClient {public static void main(String[] args) throws Exception {InitialContext context = new InitialContext();FirstEjb firstEjb = (FirstEjb)context.lookup("FirstEjbBean/remote");String s = firstEjb.saySomething("张三");System.out.println(s);}}


9.在客户端源代码目录下添加jndi.properties文件,这是为了客户端的应用程序能够使用JNDI来查找EJB对象

java.naming.factory.initial=org.jnp.interfaces.NamingContextFactoryjava.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfacesjava.naming.provider.url=localhost


10.运行客户端,测试程序,Run as - Java Application

开发第一个EJB使用

1楼lb85858585前天 21:25
很有效率啊~

读书人网 >编程

热点推荐