您的位置:首页 > 其它

Ejb框架搭建

2015-12-09 20:24 218 查看
前几篇博客简单的介绍了EJB,下边我们来说一下我们该如何搭建一个EJB框架。本人搭建框架使用的Myeclipse10+jboss6.0。搭建这个框架只需要你的IDE支持EJB就可以了,但是并不是所有的服务器都支持EJB,Tomcat就不支持EJB的部署,而weblogic,WebSphere,JBoss都是支持的,因为JBoss是开源免费的的,所以我选择的服务器是JBoss服务器。

配置JBoss服务器,选择Windows—》Perference,然后选择Server—>JBossàJBoss6.x ,然后配置我们的jboss路径,并选择Enable。



选择JDK后,配置jdk的路径,至于jdk的版本,要选择支持jboss6的版本,可以自己百度一下如果用jboss6的话,jdk最好别低于1.6就可以了!这样我们的jboss就配置好了!



准备好服务器环境以后,我们直接创建EJB应用程序就可以了!直接Newà EJB Project,



名称为FirstEjb,j2ee版本选择javaEE5.0–EJB3.0 ,这次我们只考虑框架不使用JPA,所以持久化选择None。



服务端创建完毕后,目录结构如下!



我们创建一个接口,FirstEjb,

<span style="font-size:18px;">package com.tgb.ejb;
 
public interfaceFirstEjb {
  
   public StringsaySomething(String name);
 
}</span>


在添加一个实现类,该实现类添加注解,@Stateless表示该类是无状态bean,@Remote表示是远程调用。
@Stateless
@Remote
public classFirstEjbBean implements FirstEjb {
  
   public StringsaySomething(String name) {
     
      return "hi" + name;
   }
}

这样我们的服务端就创建好了,我们直接部署到服务器上就可以了!而客户端的创建一样是非常的简单,我们需要建立一个普通的java项目,直接newàJavaProject,名称为FisrtEjb_Client。

.


我们还要为这个项目添加jar引用,简单的做法,我们建立一个自己的用户类库(如何建立请百度!),然后将jboss-6.1.0.Final\client 下的所有jar包先放入到类库中(其中可能有一些用不到,作为初学者,都放入就好可,就与哪些是有用的,哪些是没用的,以后在考虑)。在将类库引入到我们的项目中!最后我们要讲我们建立的EJB项目导出JAR包,然后在将该JAR包引入到我们的项目中!最终项目结构如图所示




我们在客户端要对服务器上发布的服务进行远程调用,所以要在客户端配置JNDI,配置如下, url地址,写服务器的地址,本地的写localhost。

<span style="font-size:18px;">java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory
java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces
java.naming.provider.url=localhost</span>

建立一个本地测试类,Main函数就可以。

<span style="font-size:18px;">  public staticvoidmain(String[] args) throws Exception {
      //获取上下文对象
      InitialContextinitialContext = newInitialContext();
      //获取远程服务的,并进行强制转换
      FirstEjbfirstEjb = (FirstEjb) initialContext.lookup("FirstEjbBean/remote");
      //调用远程方法
      String  string=firstEjb.saySomething("hongjie");
      System.out.println(string);
   }</span>


然后我们直接运行main方法,就可以看到控制台会打印出如下信息!就表明我们的调用成功了!EJB项目也就可以跑起来了!



EJB的学习,只是分布式的一个入门,在分布式的世界里,还有好多的东西需要学习,加油!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: