服务器端代码:
HelloWorld.java:
1import javax.ejb.Remote;
2
3@Remote
4public interface HelloWorld {
5 public String sayHello(String s);
6}
7
HelloWorldBean.java
1import javax.ejb.Stateless;
2
3import org.jboss.annotation.ejb.Clustered;
4
5import cn.HelloWorld;
6
7@Stateless
8@Clustered
9public class HelloWorldBean implements HelloWorld {
10
11 public String sayHello(String s) {
12 System.out.println(s);
13 return s;
14 }
15
16}
上面第8行的@Clustered是必须的,因为我们需要使用Stateless Bean的集群功能。
分别在IP地址为:192.168.1.88和192.168.1.99机器上面安装JBOSS4.0.5GA,JBOSS4.0.5可以去下载文件名为jboss-installer-1.2.0.GA.jar的安装,安装的时候选择ejb3-clustered,再下面有一步时选择Advance,再在Name输入框输入all,其它默认就可以了。
两台机器上面都安装好之后,分别在两台机器上面启动jboss,启动的时候需要加参数:如IP为192.168.1.88的机器启动JBOSS,则为:run -c all -b 192.168.1.88
当两台机器的JBOSS都正常启动后,将上面的Stateless Bean打包成jar包,发布到其中一台%JBOSS_HOME%\server\all\farm目录下面,这样集群中的其它结点将自动发布这个jar包。
当发布完成之后,我们编写客户端:
Client.java
1import java.util.Properties;
2
3import javax.naming.InitialContext;
4import javax.naming.NamingException;
5
6public class Client {
7
8 public static void main(String[] args) {
9 Properties prop = new Properties();
10 prop.setProperty("java.naming.factory.initial",
11 "org.jnp.interfaces.NamingContextFactory");
12 prop.setProperty("java.naming.factory.url.pkgs",
13 "org.jboss.naming:org.jnp.interfaces");
14 prop.setProperty("java.naming.provider.url",
15 "192.168.1.88:1099,192.168.1.99:1099");
16
17 try {
18 InitialContext ict = new InitialContext(prop);
19 HelloWorld helloWorld = (HelloWorld) ict
20 .lookup("HelloWorldBean/remote");
21 for (int i = 0; i < 10; i++) {
22 helloWorld.sayHello("HelloWorld");
23 }
24 } catch (NamingException e) {
25 e.printStackTrace();
26 }
27 }
28}
29
上面这个客户端配置了JBOSS服务器IP地址及端口,调用远程接口的HelloWorldBean,并连续调用10次sayHello方法。在JBOSS控制台上面可以看到打印出HelloWorld。
程序运行结果发现:在192.168.1.88 的JBOSS控制台上面打印出4个HelloWorld,另一个JBOSS控制台上面则打印出6个HelloWorld。加起来正好10个HelloWorld,可以发现两台JBOSS已经实现了负载均衡。
集群中的任何一个结点挂掉之后,程序都可以正常运行,
-----------------------------------------------------------------------------
那里可能在客户端写100 IP,只写上集群中的任一个IP就可以了
分享到:
相关推荐
在"**EJB3.0+JBOSS+MyEclipse初体验(完整代码和过程).txt**"文件中,你将找到一个完整的示例,涵盖了上述所有步骤,包括具体的代码片段和执行过程,这对于初学者来说是一个很好的起点,可以快速理解并实践EJB 3.0在...
**EJB 3.0 和 JBoss 4.2.2 GA 集群详解** EJB(Enterprise JavaBeans)3.0 是Java EE(Java Platform, Enterprise Edition)中的一个核心组件,它提供了用于构建可扩展、分布式和事务处理的企业级应用程序的框架。...
**ejb3.0简介** ...总之,EJB3.0、WebLogic和JBoss是企业级Java开发的重要组成部分。通过学习这些材料,初学者可以掌握如何在不同的应用服务器上部署和管理EJB组件,从而提升其在企业级Java开发中的技能。
**ejb3.0 + jboss4.2 实例开发** EJB 3.0 (Enterprise JavaBeans 3.0) 是 Java 平台企业版 (Java EE) 的一部分,它简化了Java 应用服务器中的组件开发。在这个实例开发过程中,我们将探讨如何在 JBoss 4.2 服务器上...
Jboss 7 + EJB 3.0 + Eclipse环境配置
EJB3.0+Struts2.0+Jboss Enterprise Application Project 示例 用jboss数据源可连接mysql ms-sql oracle 本地远程接口用单态模式实现
【JBoss4.2.3GA + EJB3.0 + JAAS】是企业级Java应用服务器、EJB(Enterprise JavaBeans)版本和安全性框架JAAS(Java Authentication and Authorization Service)的一个经典组合。这个组合在Java开发领域具有重要的...
【EJB3.0+weblogic操作文档】详解 EJB (Enterprise JavaBeans) 是Java EE平台中的核心组件,用于构建分布式、事务处理和安全的企业级应用。EJB3.0是EJB规范的一个重大改进,它引入了注解驱动的编程模型,大大简化了...
《SpringMVC 4.1 + EJB 3.0 + EasyUI 整合EAR项目:构建高效分布式系统的关键技术》 在当前的企业级应用开发中,为了实现高性能、高可扩展性和高可维护性的系统,开发者往往需要采用一系列先进的技术和框架进行整合...
《JBoss 7.1.1 + EJB 3.0 + MySQL 数据源配置详解》 在企业级Java应用开发中,JBoss Application Server(简称JBoss AS)是广泛使用的开源应用服务器,版本7.1.1是其稳定且功能强大的一个版本。EJB(Enterprise ...
【EJB3.0+MVC实现购物车】 在软件开发中,EJB(Enterprise JavaBeans)和MVC(Model-View-Controller)是两种重要的设计模式,它们在构建复杂的企业级应用程序中扮演着关键角色。EJB 3.0是Java EE(Java Platform, ...
如果运行一切正常,那么你会看到使用EJB 3.0组件与JPA技术层技术完成的Hello world演示应用。 注意:配置JBoss服务器和调试的动作参见readme.txt文档,有详细说明怎样匹配连接池,以及可能遇到的问题及解决办法。该...
软件架构: EJB3.0 + Struts1.3 + Spring2.0 + JPA 应用服务器: Jboss5.1 数据库用: Oracle9i 部署前将 demo-service.xml和oracle-ds.xml copy到jboss deploy目录下,配置到你的环境下即可 -- Create sequence ...
2. **EJB 3.0**:JBoss 4.0.5.GA实现了EJB 3.0规范,简化了Enterprise JavaBeans的开发,通过注解(Annotation)可以轻松地声明bean的属性,无需XML配置文件,提高了开发效率。 3. **JPA**:这一版本引入了JPA作为...
**EJB 3.0(Enterprise JavaBeans 3.0)**是Java EE(现在称为Jakarta EE)平台中的一个核心组件,它极大地简化了企业级应用的开发和部署过程。EJB 3.0引入了许多改进,使得开发人员可以更高效地利用面向服务架构...
**EJB 3.0 和 JSF:企业级Java开发的强强联合** EJB(Enterprise JavaBeans)和JSF(JavaServer Faces)是Java EE平台中的两大核心组件,它们在构建企业级Web应用程序中发挥着重要作用。EJB 3.0是EJB规范的一个重要...
7. **部署和管理**:EJB 3.0的部署模型使得在应用服务器(如JBoss、GlassFish)上部署和管理客户反馈系统变得更加容易,无需复杂的XML配置文件。 在源代码中,"EJB3项目"可能包含了EJB 3.0的实体Bean和会话Bean,...