`
logicgate
  • 浏览: 97741 次
  • 性别: Icon_minigender_1
  • 来自: 新力吐皮
社区版块
存档分类
最新评论

EJB 3 学习笔记: HelloWorld Stateless SessionBean

    博客分类:
  • Java
阅读更多

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

 

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

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

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


 

4。创建eclipse project



 

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


 

5。编写HelloWorld EJB

 

IHelloWorld.java (remote interface):

package ejb;

import javax.ejb.Remote;

@Remote
public 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。



 

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风格的编程,开发效率和可移植性都比以前要好得多。

  • 大小: 54.8 KB
  • 大小: 70.1 KB
  • 大小: 76.1 KB
  • 大小: 62 KB
  • 大小: 48.9 KB
  • 大小: 56.9 KB
分享到:
评论

相关推荐

    EJB3.0无状态SessionBean例子

    在示例中,`EJB-HelloWorld`可能包含了名为`HelloWorldLocal`的本地接口,其中定义了业务方法,如`sayHello()`。然后,在Bean类中,通过`@Local`注解声明这个接口,并实现其方法。 4. **远程接口的SessionBean** ...

    EJB3开发第一个无状态会话bean

    无状态会话 Bean(Stateless Session Bean)是企业级 Java(EJB)3.0 中的核心组件,主要用于实现业务逻辑,它不保存任何特定客户端的状态信息。本篇文章将深入讲解如何在 EJB3 中开发第一个无状态会话 Bean,以及...

    EJB2.0一个完整的Helloworld

    在"一个完整的Helloworld"示例中,通常会创建一个简单的Stateless Session Bean,实现一个返回“Hello, World!”的业务方法。客户端通过查找Bean的Home Interface并调用其`create()`方法获取Bean实例,然后调用...

    EJB3.0之HelloWorld

    通过学习这个"HelloWorld"示例,开发者可以快速理解EJB3.0的基础操作,并进一步探索更复杂的EJB特性和应用场景,如会话bean、消息驱动bean以及定时器服务等。实践中,结合JPA和JSF等Java EE组件,可以构建出强大的...

    ejb_helloworld

    在本示例中,我们探讨的是一个简单的EJB2.0 HelloWorld程序,主要涉及EJB的三个核心部分:Bean类、组件接口和Home接口,以及配置文件ejb-jar.xml。 1. **Bean类**: Bean类是EJB的核心,它实现了业务逻辑。在这个...

    eclipse + JBoss 5 + EJB3开发指南

    #### (8):JBoss EJB3(HelloWorld)备忘记 这部分提供了一个简单的HelloWorld示例,用于演示如何从头开始构建EJB项目。 总结起来,这篇教程涵盖了从配置开发环境到编写和测试Session Bean的所有基本步骤。它不仅...

    JBOSS使用指南

    3.1 HelloWorld实例 3.2 程序代码 3.3 配置文件jboss-service.xml 3.4 将实例部署到JBOSS 3.5 MBean的效果 s四.EJB3.0使用说明 1. Enterprice JavaBeans(EJB)的概念 1.1 会话 Bean: 1.2 实体Bean: 1.3 消息驱动...

    南京大学软件学院J2EE课件(SessionBean)

    【南京大学软件学院J2EE课件:SessionBean详解】 J2EE(Java Enterprise Edition)是一种用于构建企业级分布式应用程序的框架,它包含了多种服务、APIs和协议,旨在简化开发、部署和管理大型系统的过程。Session ...

    EJB3 示例有状态和无状态会话bean

    在EJB3中,我们通过在接口上添加`@Stateless`注解来定义一个无状态会话Bean。 ### 4. 测试EJB3会话Bean 在给定的描述中提到的`Test.jsp`是一个用于测试远程无状态会话bean的页面。这个页面通常会被包含在Web应用...

    EJB3.0 - 学习笔记

    例如,`HelloWorldBean`类实现了`HelloWorld`接口,并通过`@Stateless`和`@Remote(HelloWorld.class)`注解进行配置。如果不指定`@Remote`,默认实现的是本地接口。 完成EJB组件的开发后,接下来需要将其部署到...

    MyEclipse+EJB3+JBoss4部署EBJ+web项目HelloWorld详解

    ### MyEclipse+EJB3+JBoss4部署EJB+Web项目HelloWorld详解 #### 一、环境搭建 ##### 1. 安装 JDK 1.6 在开始之前,请确保您的开发环境中已经安装了 Java 开发工具包 (JDK) 1.6 版本。如果尚未安装,请访问 Oracle ...

    EJB Dev 1: EJB入门例子

    - `com.ejb.helloworld`:这部分可能包含EJB的实现,例如一个简单的会话Bean。Bean通常定义为带有特定注解(如`@Stateless`或`@Stateful`)的Java类,表示其生命周期和行为。此外,还可以有对应的接口,供客户端调用...

    《Java高手真经:Java Web高级开发技术》读书笔记模板.pptx

    + 无状态会话Bean(Stateless Session Bean) + 有状态会话Bean(Stateful Session Bean) + 会话Bean扩展开发 * 第5课:消息驱动Bean(Message-Driven Bean)——接收JMS消息 + JMS与消息驱动Bean的工作原理 +...

    Ejb学习

    - **会话bean(Session Beans)**:代表客户端的业务逻辑,分为有状态(Stateful)和无状态(Stateless)两种。有状态会话bean维护与特定客户端的交互状态,而无状态会话bean不保留任何客户端状态信息,对每个请求都...

    ejb hellow world入门

    创建一个简单的EJB HelloWorld案例,我们需要以下步骤: 1. **创建EJB项目**:首先,我们需要一个支持Java EE的开发环境,如Eclipse或NetBeans,然后创建一个新的Java EE项目,并添加EJB模块。 2. **定义Bean类**...

    完整EJB3.0第一个HelloWord,

    在EJB3.0的第一个"Hello, World"项目中,我们将学习如何创建和配置一个简单的EJB组件。首先,我们需要了解EJB的基本概念。EJB分为三种类型:会话bean(Session Beans)、实体bean(Entity Beans)和消息驱动bean...

    ejb3 第6讲--开发具有本地接口的无状态bean

    在压缩包文件`ejb3HelloWorld`中,可能包含了这个示例项目的源代码。这个项目可能包含以下组件: 1. `HelloWorldBean.java`: 实现无状态bean的类。 2. `HelloWorldLocal.java`: 定义本地接口的类。 3. `ejb-jar.xml`...

    EJB新手必备,EJB新手必备,EJB新手必备

    9. **EJB Hello World**:通常的EJB Hello World示例会展示如何创建和使用一个简单的EJB组件,例如一个实体Bean,用于输出“Hello, World!”。 在学习EJB时,理解这些基础概念和操作是至关重要的。通过编写和部署...

Global site tag (gtag.js) - Google Analytics