1 创建接口(最佳实践是创建两个接口A与B,B extends A)
interface A{}
interface B extends A{}
2 创建实现接口的会话bean,
@Stateless / @Stateful ------生成全局JNDI(就是可以被外界访问的JNDI) 两个 HelloWorldBean /remote HelloWorldBean /local
@Local(A.class) ----将A定义为 本地接口
@Remote(B.class) -----将B定义为远程接口
public class HelloWorldBean implements A,B{
略
}
3 客户端的建立,另外建立一个app或者web项目都可以.
项目----右键-----Build Path------configure build path-----Projects选项卡------add------将EJB项目加进来
这样之前创建的EJB项目的类路径就加进来了,接口A和接口B对 客户端就是可见的了
最好不要试图 自己在客户端项目去创建接口 这样很容易发生 类的冲突
4创建Client/src/jndi.properties
jndi.properties的内容为
java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory
java.naming.provider.url=localhost:1099
以上和EJB容器有关,这里用的是 客户端和EJB都部署在本机的JBOSS上
5 客户端代码的实现
public static void main(String[] args) {
InitialContext ctx=new InitialContext();
B b=(B)ctx.lookup("HelloWorldBean/remote"); ------记得吗 ,B之前就是被定义为远程接口
然后我们就可以使用b就像一个本地的对象一样
}
(注意:如果两个项目运行在 不同的JVM中 只能通过 远程接口访问;
这里是main方法一个简单的java app就运行在 别的JVM上,尽管两个项目都在一台机子上存着。
如果这里是一个web项目,而且发布在同一个JBOSS里,我们视为在同一个JVM中,通过本地接口访问。
远程接口通过网络连接访问,本地接口直接在内存里就行数据交换,速度很快)
分享到:
相关推荐
4. **开发流程**: - 创建EJB项目:使用IDE如Eclipse或IntelliJ IDEA,选择相应的EJB项目模板。 - 编写Bean接口和实现:定义业务逻辑,并实现接口。 - 配置元数据:在ejb-jar.xml或使用注解(@Stateless、@...
实战EJB之三开发会话Bean(有状态会话Bean) ...有状态会话Bean是EJB中的一个重要组件,可以在客户引用期间维护Bean中的所有实例数据的状态值,开发有状态会话Bean需要正确地理解其生命周期和开发过程。
本实验以"广东工业大学Java EE Web编程技术课程"为背景,通过集成开发环境Eclipse和应用服务器JBoss,来实践会话Bean的创建和使用。 首先,Eclipse是一款广泛使用的Java IDE,它提供了丰富的工具和插件,支持Java ...
有状态会话Bean保持了与客户端的会话状态,这意味着它可以记住客户端在一系列交互过程中的状态。每个客户端请求都会被映射到一个特定的SSB实例,允许bean在多个方法调用之间存储和管理数据。在EJB3中,实现SSB通常...
在EJB3.0中,开发流程简化了许多,不需要像早期版本那样编写大量的容器管理代码。例如,通过IDE的新建向导,可以直接创建EJB3.0的无状态会话Bean项目和类,IDE会自动为你生成基本的结构。此外,EJB3.0引入了注解,...
本资源包包含了会话Bean、实体Bean和消息Bean的源代码,这三种类型的Bean是EJB 3.0的核心组成部分。 1. **会话Bean (Session Beans)** - **无状态会话Bean (Stateless Session Beans)**: 提供无持久性状态的业务...
EJB3 相比于之前的版本,大大简化了开发流程,去除了许多复杂的接口和配置。现在,可以通过注解(Annotations)轻松地在普通 Java 类上声明 Bean。 4. **创建无状态会话 Bean** - 定义 Bean 类:首先,我们需要...
在Java企业版(Java EE)开发中,会话Bean是核心组件之一,它们负责处理业务逻辑。本篇文章将深入探讨有状态(Stateful)和无状态(Stateless)会话Bean的区别,以及如何在实际应用中选择合适的类型。 首先,我们要...
开发EJB3会话Bean时,开发者通常会在Bean类上使用`@Stateless`或`@Stateful`注解来指定其类型。此外,还可以使用`@Remote`或`@Local`注解定义Bean的接口,供客户端调用。对于业务方法,可以通过`@...
### JavaEE5学习笔记05-EJB之会话Bean总结 #### EJB(Enterprise JavaBeans)简介 EJB(Enterprise JavaBeans)是Java EE平台的一部分,用于开发和部署可重用的服务组件。EJB规范定义了如何编写、部署以及管理企业...
【实验6-无状态会话bean】主要涉及的是Java企业级应用开发中的核心概念——无状态会话Bean(Stateless ...通过这样的实践操作,学生将能够更好地掌握EJB开发流程,为后续更复杂的Java EE应用开发打下坚实的基础。
【实验6-无状态会话bean】是关于Java企业级应用开发的一个实践环节,主要涉及的是EJB(Enterprise JavaBeans)中的无状态会话bean。无状态会话bean是一种服务器端组件,它不保存任何会话状态信息,每次调用都是独立...
主要包括有状态会话Bean (Stateful Session Bean) 和无状态会话Bean (Stateless Session Bean),以及容器管理持久化实体Bean (CMP Entity Bean) 和Bean管理持久化实体Bean (BMP Entity Bean) 的开发过程。...
该应用的核心特点是使用了有状态会话Bean来实现购物车功能,这在分布式环境中尤其重要,因为它能够保持用户的购物信息,确保用户在整个购物流程中的体验连贯性。 1. **有状态会话Bean(Stateful Session Bean, SFSB...
**ejb3.0 第2,3讲 - 开发第一个无状态会话bean和客户端** 在Java企业版(Java EE)中,Enterprise JavaBeans(EJB)是用于构建可扩展、安全和事务处理的服务器端应用程序的核心组件。EJB 3.0是一个重要的版本,它极...
**无状态会话Bean**的特点是在整个执行过程中不会保存任何状态信息。这意味着,当一个无状态会话Bean被调用时,它并不会记住前一次调用的状态,每次调用都是独立且相互隔离的。因此,无状态会话Bean非常适合处理那些...
与Stateful Session Bean(有状态会话Bean)不同,它维护了客户端会话状态,而Stateless Session Bean(无状态会话Bean)则不保留任何客户端状态,每次调用都独立于其他调用。Session Bean主要用于表示业务逻辑,...
在JBoss这样的应用服务器中,EJB提供了三种主要的bean类型:实体Bean(Entity Bean)、会话Bean(Session Bean)和消息驱动Bean(Message-Driven Bean)。下面将详细探讨这三种bean的开发模式。 1. 实体Bean...
描述中的"有状态的简单的会话Bean的实现,里面有详细的设计过程截图以及源代码",意味着我们可以期待看到一个实际操作示例,通过设计过程的截图来直观地了解SFSB的生命周期管理,以及如何编写和部署源代码。...