基于J2EE轨范的中间件——EJB开发示例1
前言:
上一篇讲解了EJB的环境搭建,今天就来看看EJB的实例开发。
正题:
我将EJB的开发分为了九个步骤:
1.新建ejb项目(服务端)
新建项目——选择其他项目——选择Ejb项目即可(输入项目名,我们命名为Ejb01,点击完成即可)。
2.新建java类,编写类
需要新建一个接口和一个实现类,写法跟以前的类写法一样。
接口类:FirstEjb.java
packagecom.tgb.ejb;
publicinterface FirstEjb {
publicString saySomething(String name);
}
实现类:FirstEjbBean.java
packagecom.tgb.ejb;
publicclass FirstEjbBean implements FirstEjb {
@Override
publicString saySomething(String name) {
return"hello" + name;
}
}
3.配置ejb(使用注解配置)
对刚才写的实现类FirstEjbBean.java加上ejb的相关注解,则该类就变成了ejb的java类。
packagecom.tgb.ejb;
importjavax.ejb.Remote;
importjavax.ejb.Stateless;
@Stateless
@Remote
publicclass FirstEjbBean implements FirstEjb {
@Override
publicString saySomething(String name) {
return"hello" + name;
}
}
4.部署ejb项目
即部署到jboss的server/default/deploy下:将ejb项目add到jboss中即可。
5.新建java项目(客户端)
再新建一个Java项目,我们命名为Ejb01_Client,来作为我们刚才的ejb项目的客户端。
6.引入jar包:
1)将ejb项目的接口类FirstEjb.java打包成jar包,然后添加到Java项目的客户端。
2)添加user library(包含jboss的client文件夹)
将我们的客户端与jboss进行配置,把jboss下(jboss的安装目录,即解压的目录)的client文件夹下的所有jar包添加进客户端项目,为了方便起见,我们新建一个user library来存放这些jar包。然后客户端只需引入该userlibrary即可。
7.编写jndi.properties配置文件
我们自己新建一个文件,命名为jndi.properties(放到src文件夹下),然后里面内容如下:(这个是来配置jndi服务。)
java.naming.factory.initial= org.jnp.interfaces.NamingContextFactory
java.naming.factory.url.pkgs= org.jboss.naming:org.jnp.interfaces
java.naming.provider.url= localhost
8.编写客户端
在客户端新建一个java类,用来调用ejb项目的相关方法。
packagecom.tgb.ejb;
importjavax.naming.InitialContext;
publicclass FirstEjbClient {
publicstatic void main(String[] args) throws Exception{
//InitialContext是JNDI对象,需要声明异常
InitialContextcontext = new InitialContext();
//查找远程调用方式的FirstEjbBean类
FirstEjbfirstEjb = (FirstEjb)context.lookup("FirstEjbBean/remote");
//调用该类的saySomething方法
Strings = firstEjb.saySomething("赵丹丹");
System.out.println(s);
}
}
9.运行客户端(启动jboss服务器)
以上八个步骤完成后,即可启动服务器(跟tomcat启动一样),然后运行客户端的FirstEjbClient类,即可完成调用ejb的SaySomething方法。
执行结果:hello赵丹丹。