`
xiaoshan5634
  • 浏览: 71913 次
  • 性别: Icon_minigender_1
  • 来自: 东莞
社区版块
存档分类
最新评论

HelloWorld--ejb3

    博客分类:
  • ejb
阅读更多

若要使用ejb,必须要有ejb的容器,现在的容器有jboss,weblogic等,现使用jboss编写第一个ejb程序。

http://downloads.sourceforge.net/sourceforge/jboss/地址去下载jboss,ejb3必须下jboss4以上的版本,ejb2下载jboss3就可以了。需在工程中引入jbossall-client.jar。

首先创建一个ejb项目,注意需选择ejb3.

创建一个接口

public interface HelloWorld {   
	public String SayHello(String name);   
}  

 

然后新建一个无关态会话Bean,一般的命名规则是:接口名+Bean。实现上面的接口要加入两个注释@Remote和@Stateless。
@Stateless表示无状态会话Bean,@Remote表示这个无状态会话Bean的remote接口。。无状态会话Bean 是一个简单的POJO(纯粹的面向对象思想的java 对象),EJB3.0 容器自动地实例化及管理这个Bean。HelloWorldBean.java代码如下:

import javax.ejb.Remote;
import javax.ejb.Stateless;

@Stateless   
@Remote ({HelloWorld.class}) 
public class HelloWorldBean implements HelloWorld {
	public String SayHello(String name) {   
		return name +"说:Hello World.";   
	}   

}
 这样,就把EJB模块开发完成!可以发布到Jboss中去,(注意:Jboss的版本要在4.0.5以上,以前的版本可能出现报错现象)。启动jboss容器,打印出如下信息
17:33:58,062 INFO  [DLQ] Bound to JNDI name: queue/DLQ
17:33:58,203 INFO  [ConnectionFactoryBindingService] Bound ConnectionManager 'jboss.jca:service=ConnectionFactoryBinding,name=JmsXA' to JNDI name 'java:JmsXA'
17:33:58,609 INFO  [JmxKernelAbstraction] creating wrapper delegate for: org.jboss.ejb3.stateless.StatelessContainer
17:33:58,625 INFO  [JmxKernelAbstraction] installing MBean: jboss.j2ee:jar=TestEJB3.jar,name=HelloWorldBean,service=EJB3 with dependencies:
17:33:58,906 INFO  [EJBContainer] STARTED EJB: com.sample.HelloWorldBean ejbName: HelloWorldBean
17:33:58,968 INFO  [EJB3Deployer] Deployed: file:/E:/developTools/jboss-4.2.0.GA/server/default/deploy/TestEJB3.jar/
17:33:59,015 INFO  [TomcatDeployer] deploy, ctxPath=/jmx-console, warUrl=.../deploy/jmx-console.war/
17:33:59,281 INFO  [Http11Protocol] Starting Coyote HTTP/1.1 on http-127.0.0.1-8080
17:33:59,312 INFO  [AjpProtocol] Starting Coyote AJP/1.3 on ajp-127.0.0.1-8009
17:33:59,343 INFO  [Server] JBoss (MX MicroKernel) [4.2.0.GA (build: SVNTag=JBoss_4_2_0_GA date=200705111440)] Started in 17s:15ms
 说明发布成功,然后可以到http://localhost:8080>>JMX Console >>service=JNDIView >>invoke>>Global JNDI Namespace找到发布的响应服务,若没有找到jndi,则发布服务失败。成功后即可以打开客户端去访问。 
第二步:开了一个客户端来访问这个EJB。当一个无状态会话Bean 发布到EJB 容器时,容器就会为她创建一个对象stub,并把她注册进容器的JNDI 目录,客户端代码使用她的JNDI 名从容器获得他的stub。通过这个stub,客户端可以调用她的业务方法。例子代码如下:
import java.util.Properties;

import javax.naming.InitialContext;

public class HelloWorleClient {

	public static void main(String[] args) {
		Properties props = new Properties();
		props.setProperty("java.naming.factory.initial", "org.jnp.interfaces.NamingContextFactory");
		props.setProperty("java.naming.provider.url", "localhost:1099");
		props.setProperty("java.naming.factory.url.pkgs", "org.jboss.naming");
		//props.setProperty("", "");   
		System.getProperties();
		try {
			InitialContext ctx = new InitialContext(props);

			HelloWorld helloworld = (HelloWorld) ctx.lookup("HelloWorldBean/remote");
			System.out.println(helloworld.SayHello("大家"));
		} catch (Exception ex) {
			System.out.println(ex.getMessage());
		}
	}

}
 在JBoss容器中发布TestEJB3,然后执行HelloWorldClient.java将得到“大家说:Hello World.”结果。
分享到:
评论
1 楼 水草平居 2011-09-01  
水货,只知道抄袭,别出来丢人了

相关推荐

    EJB HelloWorld

    HelloWorld helloworld = (HelloWorld) ctx.lookup("HelloWorldBean/remote"); out.println(helloworld.SayHello("佛山人")); 5.用ant或eclipse,把客户端文件打成war包,发布到jboss上 6.输入...

    EJB3.0之HelloWorld

    这是EJB3.0的第一个例子HelloWorld

    EJB3 maven helloworld项目

    EJB3 基于maven项目测试,适合初学者,需要自行瞎子安装jboss5

    ejb_helloworld

    一个简单的ejb,helloworld例子,里面有注释。

    ejb3.0 helloworld例子

    初学ejb,一个入门例子。 两个project,一个为ejb,一为客户端。 软件版本:jboss-4.2.3.GA,Jdk1.6.0,myeclipse 10.0 部署ejb后,客户端导入jboss的client下的所有jar包。

    EJB2.0一个完整的Helloworld

    EJB2.0一个完整的Helloworld

    eclipse + JBoss 5 + EJB3开发指南

    [9] 使用 ANT 建立 EJB-JAR 并执行 Client 程序: 20 MyEclipse EJB 3.0 Tutorial 22 Table of Contents 22 1. Introduction 22 2. Suggested Audience 22 3. System Requirements 23 4. Getting Started 23 5. ...

    weblogic JNDI helloworld实例

    把文件用weblogic部署上去,然后反编译jar中的bind类 执行主方法weblogic就有打印出hello ejb的字样了,很好的一个ejb实例。

    1.EJB的HelloWorld!

    NULL 博文链接:https://taoistwar.iteye.com/blog/344186

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

    1,下载安装JDK1.6; 2,下载安装MyEclispse8.5; 3,下载安装JBoss4; 4,在MyEclispse8.5环境下配置JBoss4;...5,新建一个EJB3项目; 6,新建一个远程的无状态的SessionBean; 远程接口代码如下:

    JBoss7.1与eclipse(indigo)集成,创建EJB3.x项目(HelloWorld)非常详细的图解步骤

    JBoss7.1与eclipse(indigo)集成,创建EJB3.x项目(HelloWorld)非常详细的图解步骤,内容包含下载连接地址,包含常见错误解答,新版本注意事项等

    complete working ejb3 helloworld session bean jbos

    工程源代码 博文链接:https://hintcnuie.iteye.com/blog/243520

    学习EJB1

    HELLOWORLD,学习EJB1 代码

    使用JBoss 4.2书写EJB3.0无状态会话Bean + JPA + MySql 5.0的Hello World Java EE应用

    3. 把该项目导出为EJB格式的jar包到jboss-4.2.1.GA\server\default\deploy\目录 4. 在Eclipse中启动服务器 5. 运行app.Test客户端测试类 使用Eclipse 3.4 Ganymede开发EJB3.0的JavaEE应用比较简化和方便。该示例使用...

    完整EJB3.0第一个HelloWord,

    如果你想少走一些弯路,可以快速搭建出EJB3.0项目就从这里开始。因为第一次学习EJB3.0在网上找了一些实例却不是那么完整,索性自己动手配置了一边上传上来大家一起共享。

    演示EJB3.0 + JPA + MySQL5.0 + C3P0连接池技术实战编程(Top-Down的XP开发方式)

    如果运行一切正常,那么你会看到使用EJB 3.0组件与JPA技术层技术完成的Hello world演示应用。 注意:配置JBoss服务器和调试的动作参见readme.txt文档,有详细说明怎样匹配连接池,以及可能遇到的问题及解决办法。该...

    Java EJB简单例子.rar

    Java EJB简单例子,这是HelloWorldBean的Home接口,... HelloWorld hello= home.create();  //调用EJB对象方法printHelloWorld(),EJB对象把调用委派给Bean  System.out.println (hello.printHelloWorld());  }

    一个简单的EJB

    一个简单的EJB,helloworld,很适合初学者

    jboss-as-7.1.1.Final

    EJB3.1 JBoss7.0.2 EclipseJuno-helloworld实现 2013-01-06 02:59:54 分类: Java EJB3.1 JBoss7.1 Eclipse3.7---helloworld实现 一、环境配置: JDK:正常配置 Eclipse:正常下载,解压(V3.7) JBoss:正常下载,...

    ejb 3.0实用教程

    心动不如行动,赶快说声HelloWorld 吧。 虽然使用EJB3 做项目非常好,但如果你的团队里没有一个对实体Bean 熟悉的人,最好先熟悉完了再开展项目, 否则将会给项目带有巨大的性能问题。 作者对一些新的概念...

Global site tag (gtag.js) - Google Analytics