`

4.开发本地接口的无状态会话Bean

阅读更多

      远程接口需要与EJB应用建立Socket连接,并传输数据进行交互,而 本地接口与EJB应用之间的则直接在内存中进行交互 。因此,比本地接口占用更多的系统资源。

      当客户端与EJB应用在同一个JVM内才能调用本地接口。 通俗的说,客户端与EJB应用发布在同一个JBoss中。

 

package com.taoistwar.ejb;

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

 

package com.taoistwar.ejb.impl;

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

import com.taoistwar.ejb.HelloWorld;

@Stateless
@Local(HelloWorld.class)
public class HelloWorldBean implements HelloWorld {

	@Override
	public String sayHello(String name) {
		return name + "说:你好世界!";
	}

}

       客户端调用要在同一个JVM内,因此,用一个WEB项目的jsp文件进行测试。

 

<%@page language="java" contentType="text/html; charset=utf-8"%>
<%@page import="javax.naming.InitialContext"%>
<%@page import="javax.naming.NamingException"%>
<%@page import="com.taoistwar.ejb.HelloWorld"%>

<%
	try {
		InitialContext ic = new InitialContext();
		HelloWorld hw = (HelloWorld) ic.lookup("HelloWorldBean/local");
		String message = hw.sayHello("TaoistWar");
		out.println(message);
	} catch (NamingException e) {
		e.printStackTrace();
	}

%>

      远程接口与本地接口的代码区别 在于注解的不同 ,EJB窗器会根据不同的注解,使用不同的运行方式。

        注: @Remot(HelloWorld.class)和@Local(HelloWorld.class)可以同时使用。

 

 

 

 

 

分享到:
评论

相关推荐

    Jboss下开发ejb应用之一会话bean的应用

    会话Bean有两类:无状态会话Bean(Stateless Session Beans)和有状态会话Bean(Stateful Session Beans)。 1. 无状态会话Bean:适用于一次性的、与特定客户上下文无关的操作,如计算或查询。 2. 有状态会话Bean:...

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

    在本节讲解中,我们将深入探讨EJB3(Enterprise JavaBeans 3)中关于开发具有本地接口的无状态会话bean。无状态bean是EJB3中的一个关键组件,它们通常用于执行短暂、非持久化的业务逻辑,不维护任何会话状态。与有...

    ejb3.0 第2,3讲-开发第一个无状态会话bean和客户端

    **ejb3.0 第2,3讲 - 开发第一个无状态会话bean和客户端** 在Java企业版(Java EE)中,Enterprise JavaBeans(EJB)是用于构建可扩展、安全和事务处理的服务器端应用程序的核心组件。EJB 3.0是一个重要的版本,它极...

    EJB3.0无状态SessionBean例子

    总结,EJB3.0无状态SessionBean的例子展示了如何利用注解简化开发流程,以及如何通过本地和远程接口进行组件间的通信。理解并掌握这些概念对于构建可扩展、健壮的企业级Java应用至关重要。通过学习这个示例,开发者...

    weblogic部署EJB2.0 实现本地接口的SessionBean

    它定义了三种主要类型的Bean:Stateless Session Beans(无状态会话bean)、Stateful Session Beans(有状态会话bean)和Message Driven Beans(消息驱动bean)。我们关注的是Session Bean,它们通常代表业务逻辑,...

    EJB的基础知识资料

    下面将详细阐述EJB的基础知识,主要涉及无状态会话Bean、有状态会话Bean以及实体Bean。 1. 无状态会话Bean: 无状态会话Bean不保存与客户端交互的任何特定状态,这意味着它们不会在多个调用之间保持信息。这使得无...

    Weblogic EJB 学习笔记

    Weblogic EJB 学习笔记主要涵盖了EJB(Enterprise JavaBeans)的基础知识,包括无状态会话bean、有状态会话bean和实体bean这三种主要的EJB类型,以及EJB在Weblogic服务器中的配置和事务管理。 1. **无状态会话bean*...

    EJB3.0简介

    在开发无状态会话Bean时,需定义其接口和Bean类。接口分为远程接口(Remote interface)和本地接口(Local interface),前者用于跨容器调用,后者仅限于同一容器内部调用,提供更好的性能。Bean类包含具体的业务...

    Bean开发实例之三实体Bean开发实例

    - **接口文件**:实体Bean拥有对外接口(远程接口`RemoteInterface`和本地接口`LocalInterface`)以及Home接口。Home接口提供了创建、查找和删除实体Bean实例的方法。 4. **实体Bean示例**:假设有一个名为`...

    实战EJB 实战EJB 实战EJB

    #### 三、实战EJB之二:开发会话Bean(无状态会话Bean) **什么是无状态SessionBean?** 无状态会话Bean是一种EJB组件类型,它不保留客户端之间的任何状态信息。每次客户端请求都会创建一个新的实例,这意味着每个...

    EJB3.1技术培训

    - 当开发一个只有Local接口的无状态会话Bean时,需要使用`@Local`注解声明接口是本地接口。 - 当开发一个只有Remote接口的无状态会话Bean时,需要使用`@Remote`注解声明接口是远程接口。 - 如果既不使用`@Local`...

    Java_EE_Udemy19:会话Bean实现远程接口

    无状态会话Bean通常用于执行独立的业务操作,而有状态会话Bean则保留了客户端交互的上下文信息。 在Java EE中,实现远程接口意味着会话Bean可以通过网络进行访问。这涉及到两个主要概念:本地接口和远程接口。本地...

    Java EJB模型模拟完整代码.rar

    无状态会话bean不维护会话信息,而有状态会话bean可以保存客户端会话的上下文信息。 5. **Message-driven Beans**:消息驱动bean用于响应来自消息队列的消息。它们在后台运行,处理异步通信,是解耦系统组件的好...

    EJB3.rar

    3. **无状态会话Bean(Stateless Session Beans)**:EJB3.0简化了无状态会话Bean的定义和使用,通过注解可以直接声明方法为远程或本地调用接口。此外,无状态会话Bean的生命周期管理也变得更加自动化。 4. **有...

    EJB使用范例

    根据其行为,会话bean可以分为无状态会话bean(Stateless Session Beans)和有状态会话bean(Stateful Session Beans)。无状态bean对每个请求都创建新的实例,不保存任何客户端状态,适合执行独立的操作。有状态...

    MyEclipse开发会话EJB详细步骤

    创建会话bean 在新创建的EJB模块中,右键选择`New` &gt; `EJB Component` &gt; `Session Bean`。在向导中,为bean命名,选择bean的接口类型(无状态或有状态),并提供接口和实现类的名字。点击`Finish`。 ### 5. 编写...

    EJB2 SessionBean

    - 实现无状态Session Bean时,不需要实现 javax.ejb.SessionSynchronization 接口,因为它们没有会话状态需要同步。 2. **有状态Session Bean** - 有状态Session Bean存储了客户端的上下文信息,允许在多个方法...

Global site tag (gtag.js) - Google Analytics