`
daodan988
  • 浏览: 30606 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

EJB3.0与JBOSS4.0.4GA集群部署实战(一)

阅读更多
EJB中的三种bean

会话bean(session bean)

负责与客户端交互,是编写业务逻辑的地方,在会话bean中可以通过jdbc直接操作数据库,但大多数情况下都是通过实体bean来完成对数据库的操作。

实体bean(entity bean)

它实际上属于java持久化规范(简称JPA)里的技术,JPA的出现主要是为了简化现有的持久化开发工作和整合ORM技术,结束现在Hibernate、TopLink等ORM框架各自为营的局面。

消息驱动bean(message-driven bean)

它是专门用于异步处理java消息的组件,具有处理大量并发消息的能力。



会话bean

无状态会话bean

平常,我们使用最多的是无状态bean,因为它的bean实例可供多个用户使用,所以它的性能比有状态bean高,正因为一个bean实例被多个用户使用,那么,前一个用户设置的值有可能被后一个用户所修改,所以它无法正确保存某个用户设置的值,因此是无状态的。

有状态会话bean

有状态bean平常使用的并不多,因为它的一个bean实例只供一个用户使用,所以性能开销比较大,正因为它的实例只被一个用户使用,那么,用户设置的值是不会被其他用户所修改,所以可以正确保存用户设置的值,因此是有状态的。

EJB3.0开发一个无状态会话bean

编写EJB3.0接口类
public interface HelloWorld {  
public String sayHello(String name);  


编写EJB3.0实现类

import javax.ejb.EJB;
import javax.ejb.Remote;
import javax.ejb.Local;
import javax.ejb.Stateless;
import wang.ejb3.HelloWorld;
import wang.ejb3.HelloWorldLocal;
import wang.ejb3.Other;
@Stateless
@Remote(HelloWorld.class)
public class HelloWorldBean implements HelloWorld, HelloWorldLocal {
@EJB Other other;
public String sayHello(String name) {
return name + "说:你好,世界";
}
}

编写项目的构建文件build.xml

<?xml version="1.0" encoding="utf-8"?>
<project name="HelloWorld" basedir=".">
<property name="src.dir" value="${basedir}\src" />
<property environment="evn" />
<property name="jboss.home" value="E:\jboss-5.0.1.GA"/>
<property name="jboss.server.config" value="default"/>
<property name="build.dir" value="${basedir}\build"/>
   
<path id="build.classpath">
<fileset dir="${jboss.home}\client">
    <include name="*.jar"/>
</fileset>
<pathelement location="${build.dir}"/>
</path>

    <target name="prepare">
    <delete dir="${build.dir}"/>
    <mkdir dir="${build.dir}"/>
    </target>

<target name="compile" depends="prepare" description="编译">
<javac srcdir="${src.dir}" destdir="${build.dir}">
<classpath refid="build.classpath"/>
</javac>
</target>
<target name="ejbjar" depends="compile" description="创建EJB发布包">
<jar destfile="${build.dir}\${ant.project.name}.jar">
<fileset dir="${build.dir}">
<include name="**/*.class"/>
</fileset>
</jar>
</target>

<target name="deploy" depends="ejbjar" description="发布EJB">
<copy file="${build.dir}\${ant.project.name}.jar" todir="${jboss.home}\server\${jboss.server.config}\deploy"/>
</target>

<target name="undeploy" depends="deploy" description="卸载EJB">
<delete file="${jboss.home}\server\${jboss.server.config}\deploy\${ant.project.name}.jar"/>
</target>
</project>
利用构建文件把该项目打成jar包,发布到jboss服务器中

编写jndi属性文件jndi.properties,在该文中配置相关属性,以便在客户端中利用jndi查找EJB业务类

import javax.naming.InitialContext;  
import javax.naming.NamingException;  
import wang.ejb3.HelloWorld;  
public class EJBClient {  

  public static void main(String[] args) {          
       try {  
            InitialContext ctx = new InitialContext();  
            HelloWorld helloworld = (HelloWorld)ctx.lookup("HelloWorldBean/remote");  
           System.out.println(helloworld.sayHello("李四"));  
        } catch (NamingException e) {  
            e.printStackTrace();  
        }  
    }  


运行jboss服务器,运行客户端类的main方法,得到执行结果:

李四说:你好,世界

从结果说明,客户端调用ejb业务方法成功。


本文来自CSDN博客,转载请标明出处:开发一个远程接口无状态会话bean%20-%20天空的云%20-%20CSDN博客.htm
分享到:
评论

相关推荐

    EJB3.0+JBOSS4.2.2GA集群

    NULL 博文链接:https://xjl712.iteye.com/blog/2077838

    ejb3.0配置jboss7.1.1数据源

    ejb3.0配置使用jboss7.1.1的数据源

    EJB3.0+JBOSS+MyEclipse初体验(完整代码和过程)

    在Myeclipse,基于JBOSS EJB3.0实现了EJB3.0的初次体验,确实比EJB2.0方便了许多。文中有完整的过程和代码。

    ejb3.0 +jboss4.2 实例开发

    ejb3.0+ jboss4.2详细教程 包括: 会话bean 实体bean

    ejb3.0及JBoss配置运行动画全过程

    ejb3.0及JBoss配置运行动画全过程,用抓屏抓的,不过很详细

    EJB3.0入门经典(PDF)

    《EJB3.0入门经典》内容丰富,讲解由浅入深,全面系统,在讲解EJB 3.0最新开发技术的同时,精心设计了与章节内容相关的实例,给出了开发过程中运用到的技巧和注意事项,相信读者一定能从中获益。

    ejb3.0实例教程

    虽然 EJB3.0 最终规范出来了一段时间,但对 EJB3.0 的应用还停留在介 绍之中,应用实例更是少之又少,所以作者拟写本书,以简单的实例展现 EJB3.0 的开发过程,希望对大家有所帮 助。 EJB3 最激动人心的是 POJO 编程...

    ejb3.0+Weblogic+Jboss安装配置及入门例子

    ejb3.0+Weblogic+Jboss安装配置及入门例子 基础知识+详细例子+weblogic部署+Jboss部署,非常详细,值得初学者学习

    精通EJB3.0 中文版 3/3

    《精通EJB3.0》共分为4个部分:第一部分对EJB编程基础进行介绍,概要性地对EJB进行了阐述;第二部分重点关注EJB编程的具体内容和过程,向开发者展示了如何使用会话Bean、将会话Bean发布为Web服务、消息驱动Bean;第...

    ejb3.0入门图文教程

    ejb3.0入门图文教程,包括EJB3.0开发Entity.pdf、EJB3.0开发Message Driven Bean.pdf、EJB3.0开发Session Bean.pdf

    精通EJB3.0 中文版 1/3

    《精通EJB3.0》共分为4个部分:第一部分对EJB编程基础进行介绍,概要性地对EJB进行了阐述;第二部分重点关注EJB编程的具体内容和过程,向开发者展示了如何使用会话Bean、将会话Bean发布为Web服务、消息驱动Bean;第...

    EJB3.0中文文档

    EJB3.0中文文档,实例教程.EJB3.0中文文档,实例教程.EJB3.0中文文档,实例教程.EJB3.0中文文档,实例教程.

    jboss ejb3.0开发介绍

    期待已久的 ejb3.0 今天做了以下,总结了一下,希望对大家有所帮助

    ejb3.0开发规范PDF

    ejb3.0开发规范,开发ejb3.0过程中的参考文档

    传智播客EJB3.0_EJB3.0企业开发_Jboss_ppt_pptx_黎活明.rar

    2、传智播客EJB3.0.ppt--&gt;是以《传智播客EJB3.0.pptx》为源文件的简单复制与粘贴后的结果,其格式与源文件有些不同,更为简洁,但没有源文件美观。该文件office 97 - office 2003及以上版本都能打开。 下载资源后...

    Jboss 7 + EJB 3.0 + Eclipse环境配置

    Jboss 7 + EJB 3.0 + Eclipse环境配置

    ejb3.0 Jboss安装配置

    ejb3.0+Weblogic+Jboss安装配置及入门例子

    jboss EJB3.0实例教程

    jboss EJB3.0实例教程 jboss EJB3.0实例教程 jboss EJB3.0实例教程

Global site tag (gtag.js) - Google Analytics