开发具有本地接口和远程接口的无状态bean

开发步骤

1.开发服务端

 1.1 开发HelloWorld和HelloWorldLocal接口,在开发HelloWorldBean实现类

2.开发客户端

 2.1 开发EJBClient2的java客户端项目和EJBClient的web项目

3.把helloworld.jar服务和EJBClient.war都部署在JBoss容器里,helloworld.jar打包时只需要选定HelloWorld、HelloWorldLocal、HelloWorldBean这三个类导出即可;

HelloWorld.java //远程接口类

package cn.cmcc.ejb3;

 

public interface HelloWorld {

 

public String say(String name);

}

 

 

HelloWorldLocal.java //本地接口类,现在是模拟,所以就一样的

package cn.cmcc.ejb3;

 

public interface HelloWorldLocal extends HelloWorld {

 

}

 

 

HelloWorldBean.java //接口实现类

package cn.cmcc.ejb3.impl;

 

import javax.ejb.Local;

import javax.ejb.Remote;

import javax.ejb.Stateless;

 

 

import cn.cmcc.ejb3.HelloWorld;

import cn.cmcc.ejb3.HelloWorldLocal;

 

@Stateless //申明是一个无状态bean

@Remote(HelloWorld.class)  //申明是一个远程接口,不写默认是本地接口

@Local(HelloWorldLocal.class)  //申明是一个本地接口

public class HelloWorldBean implements HelloWorld,HelloWorldLocal {

 

@Override

public String say(String name) {

return name+":说,您好";

}

 

}

 

 

EJBClient2.java  //这个是远程接口,因为这个项目和helloworld.jar不在同一个应用服务器中,所以调用远程接口

package cn.cmcc.test;

 

import javax.naming.InitialContext;

import javax.naming.NamingException;

 

import cn.cmcc.ejb3.HelloWorld;

 

public class EJBClient2 {

 

public static void main(String[] args) {

try {

//默认是去classpath下寻找jndi.properties文件

InitialContext ctx = new InitialContext();

HelloWorld helloworld = (HelloWorld) ctx

.lookup("HelloWorldBean/remote");

System.out.println(helloworld.say("佛山"));

} catch (NamingException e) {

System.out.println(e.getMessage());

}

}

}

 

 

EJBClient.war是一个web项目,和服务端部署在同一个JBOSS应用服务器中,就已个简单的页面

 

 

index.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"

    pageEncoding="UTF-8"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

 

<%@page import="javax.naming.*"%>

<%@page import="cn.cmcc.ejb3.*"%><html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

<title>Insert title here</title>

</head>

<body>

<%

try {

/*

当web客户端和EJB服务部署在同一个应用服务器中,因为应用服务器启动时会把JNDI驱动类等上下文信息添加进系统属性

当不再同一个应用服务器中,需要指定JNDI驱动类等上下文信息

因为现在是helloworld.jar服务和EJBClient.war都部署在JBoss容器里,所以不需要指定JNDI驱动类等上下文信息

*/

InitialContext ctx = new InitialContext();

HelloWorldLocal helloworld = (HelloWorldLocal) ctx

.lookup("HelloWorldBean/local");

out.println(helloworld.say("佛山"));

} catch (NamingException e) {

out.println(e.getMessage());

}

%>

</body>

</html>

 

 

国科大学习资料--机器学习方法与应用(叶齐祥)-期末考试题整理 国科大学习资料–机器学习方法与应用-期末考试题整理 ============================================================================================================================================================================================ ======================================= 阅读详情

相关推荐

dpdk 源码分析 rte_ring

rte_ring源码分析

qq_40843445的博客 931

开发实现本地接口的无状态的会话bean

首先,要定义一个本地接口: package huizhi.HelloEJBLocal; import javax.ejb.Local; @Local public interface HelloEJBLocal { public String hello(St

懂一点信息化 1656

CATIA_DELMIA_V5R2019安装包下载及安装教程破解

CATIA_V5R2019/DELMIA_V5R2019安装包下载及安装教程破解

一只机械工装熊的博客 8412

java 有状态 无状态_java 无状态和有状态区别

诸位Java程序员,想必大家对SimpleDateFormat并不陌生。不过,你是否知道,SimpleDateFormat不是线程安全的(thread safe)。这意味着,下面的代码是错误的:class Sample {private static final DateFormat format = new SimpleDateFormat("yyyy.MM.dd");public Stri...

weixin_34784025的博客 694

SQL-拼多多 面试题:连续3次为球队得分的球员名单

1.使用LAG开窗函数 筛选出 下一次和下下一次得分,并用进球时间进行排序。2.使用where筛选出值得嘉奖的球员。

Ftr1998的博客 644

ELK - CentOS7 安装 elasticsearch 7.17.5

elk elasticsearch 安装

qq_19783793的博客 1462

开发远程和本地接口的无状态会话bean

这个bean的开发,就是前面两个开发的综合,没有什么新东西。代码如下: 1、定义接口       远程接口: package huizhi.HelloEJB3; import javax.ejb.Remote; @Remote public interface H

懂一点信息化 1428

FPGA开发者必看:手把手教你用Xilinx ERNIC IP实现RoCE v2网络加速(附PG332文档解读)

本文详细解析了Xilinx ERNIC IP在FPGA平台上实现RoCE v2网络加速的全流程,包括架构设计、Vivado工程配置、驱动开发与性能调优。通过PG332技术文档的实践指导,帮助开发者快速构建低延迟、高性能的网络加速方案,适用于数据中心和边缘计算场景。

weixin_29168813的博客 672

java 无状态和有状态区别

 诸位Java程序员,想必大家对SimpleDateFormat并不陌生。不过,你是否知道,SimpleDateFormat不是线程安全的(thread safe)。这意味着,下面的代码是错误的: class Sample { private static final DateFormat format = new SimpleDateFormat("yyyy.MM.dd");...

weixin_33892359的博客 1094

手把手教你用Multisim 14.2仿真一个4.4V的LDO电路(附完整仿真文件)

本文详细介绍了如何使用Multisim 14.2仿真一个4.4V的LDO电路,从环境配置、核心参数解析到电路搭建和仿真调试。通过分压电阻精确计算和瞬态响应测试,帮助读者掌握LDO电路的设计与验证技巧,并附有完整仿真文件供参考。

weixin_28738397的博客 275

AI问数,智慧赋能:基于大语言模型的数据播报员应用实践探索

AI问数技术正在改变企业与数据交互的方式,它以自然语言为桥梁,让数据不再是少数专家的专利,而是成为所有业务人员的决策伙伴。这不仅是技术的创新,更是管理理念的革新。在数字化转型的关键阶段,企业应积极拥抱AI问数技术,通过降低数据使用门槛、提升数据利用效率、释放数据潜在价值,实现真正的数据驱动决策,为企业的高质量发展注入源源不断的智慧动能。AI问数,正在开启一个数据普惠的新时代。

getusushu的博客 64

本地接口与远程接口的无状态SessionBean的实现

远程接口调用ejb的过程:首先客户端需要与ejb建立起socket通信,在通信管道上他们之间需要来回发送IIOP协议消息,因为数据要在网络进行传输,存放数据的java对象必须要进行序列化。这个过程中,有网络通信的开销、协议解析的开销、对象序列化的开销。因为ejb是分布式技术,它允许客户端与ejb应用在不同一机器上面,所以这些开销也是必然的。本地接口调用ejb的过程:通过本地接口调用ejb,直接

564

3.4 ISIS和OSPF之间路由引入

通过以上输出可以看到OSPF的路由引入到了IS-IS中。通过以上输出可以看到ISIS的路由没有传递给OSPF。通过以上输出可以看到OSPF的路由没有传递给ISIS。通过以上输出可以看到ISIS的路由被引入进了OSPF。掌握在IS-IS中引入OSPF路由的方法。掌握在OSPF中引入IS-IS路由的方法。图3-3:ISIS和OSPF之间路由引入。在R3上把ISIS的路由引入到OSPF。OSPF引入外部路由的缺省度量值为1。在R3上把OSPF的路由引入到ISIS。引入的外部路由类型为Type2。

lwljh134的博客 1803

Claude API调用入门:认证、消息格式与常见错误排查实操指南

API是AI应用开发的根基,无论设计何种智能体或工具链,最终都需依靠请求与响应完成交互。Claude API作为Anthropic提供的大模型接口,其调用链路中包含了API Key认证、请求头设置、Messages消息结构及核心参数配置等关键环节。理解这些基础概念,是构建稳定、可靠、可扩展的AI服务的前置条件。在工程实践中,开发者还需要掌握流式输出、上下文窗口管理等进阶技术,并熟悉HTTP状态码如400、401、429、529的含义与应对策略。本文从API原理出发,结合Python与curl实战,系统讲解C

weixin_30256901的博客 323

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

JBoss下的EJB3开发无状态会话Bean

1。开发一个具有Remote和Local接口的EJB3StatelessSessionBean.如有那里写的不好请大家多多指教。################################好了先介绍一下明星演员们:###############################Remote接口:RemoteHelloWorld.javaLocal接口:LocalHelloWorld.javaSe...

溺水的鱼 - Later equals never. 159

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

weblogic ejb3 入门与提高(二)

1.重点关注 EJB3的基础开发,其中最为重要的几点是: 1.接口与Bean类的开发; 2.注释的使用; 3.JNDI的定义; 4.访问EJB;2.无状态会话Bean  2.1 实现远程接口。  创建接口。 文件地址:[EJB3/JavaSource/com/mh/ejb3/test/EJB3Test.java] 包:[com.mh.ejb3.test] 名称:[EJB3Test]

2179

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

EJB之无状态会话Bean简单应用-学习与实践(Inber原作)

•客户通过由EJB容器提供的远程和本地接口进行通信 •   访问控制表是用于保证安全其授权能访问特定功能的用户组或个人表。 •   持久性是指对象状态永久地存储在数据存储器中,诸如数据库。 •   企业 beans的类型: –实体 (Entity) beans 实体beans支持多个会话和多个客户,可分为:          Bean -        管理Bean持久性   ...

jayjayjayjayjayjay的专栏 267

EJB3 session bean(会话bean)

Session Bean接口定义@Local,@RemoteInterface xxxDAO{}@LocalInterface LocalxxxDAO extends xxxDAO{}@RemoteInterface RemotexxxDAO extends xxxDAO{}@Local 注释定义本地接口(使用范围,客户端和EJB在同一容器(wls,jboss)中 使

深度剖析 AI 革命,直击技术本质与商业底层逻辑。 致力于将复杂前沿的 AI 技术转化为通俗易懂的科普,及切实可行的企业生产力方案。 专注:企业 AI 智能体(Agent)设计、自动化业务工作流重构。 1742

 EJB 2 - Basic

General Describe these types of beans (Session (both Stateful and Stateless), Entity) and their general purpose. Explain the concept of the EJB Container and deployment. Describe ...

jardownload的博客 98

ejb

开发无状态Bean 采用实例池技术管理Bean。单例 如果服务器端和客户端在不一个JBOSS内,客户端可以调用远程接口访问EJB 如果服务器端和客户端在同一个JBOSS内,客户端可以调用本地接口访问EJB 默认为本地接口 @Stateless(name="...修改名称...")//无状态EJB 或 @Stateful(name="...修改名称...")//有状态EJB @Re...

移动开发记录 134

「Java EE开发指南」用MyEclipse开发EJB 3无状态会话Bean(一)

本教程将向您展示如何用MyEclipse开发EJB 3无状态会话Bean,欢迎下载最新版IDE体验!

需要界面开发、IDE工具研发中文教程资料的小伙伴,记得私信我~ 1097

开发远程接口的无状态会话bean

开发远程接口的无状态会话bean            由于无状态会话bean不维护会话状态,这就意味着一个bean实例可以为多个用户服务。简单地说就是:当无状态会话bean部署到应用服务器时,EJB容器会为它预先创建一些bean实例放在对象池。无状态会话bean比有状态会话

懂一点信息化 1692

EJB3.0开发一个远程接口无状态会话bean

EJB中的三种bean会话bean(session bean)负责与客户端交互,是编写业务逻辑的地方,在会话bean中可以通过jdbc直接操作数据库,但大多数情况下都是通过实体bean来完成对数据库的操作。实体bean(entity bean)它实际上属于java持久化规范(简称JPA)里的技术,JPA的出现主要是为了简化现有的持久化开发工作和整合ORM技术,结束现在Hiberna

天空的云 1793

开发具有本地接口的无状态bean

开发具有本地接口的无状态bean   我们需要了解以下通过远程接口调用EJB的过程,首先客户端需要与EJB建立起 socket通信,在通信官道上他们之间需要来回发送IIOP协议消息,因为数据要    在网络进行传输,存放数据的java对象必须要进行序列化。    在这个过程中 我们看到,有网络通信的开销,协议解析的开销,对象序列化的开销。    因为ejb是分布式技术,它允许客户端与EJB应用在不同一机器上面,所以这些性能开销    也是必然的。但是在实际生产中,我们不可避免这种情况,客户端与EJB应用运行

zzkk_1980的专栏 558

「Java EE开发指南」用MyEclipse开发EJB 3无状态会话Bean(二)

本教程将向您展示如何用MyEclipse开发EJB 3无状态会话Bean,欢迎下载最新版IDE体验!

需要界面开发、IDE工具研发中文教程资料的小伙伴,记得私信我~ 1334

EJB3.0开发本地接口的无状态会话bean

概述 当客户端与ejb运行在同一个jvm时,他们之间可以通过内存进行交互,没有必要进行网络通信,减少性能的开销,所以引入了本地接口,只有客户端与ejb运行在同一个jvm中(客户端与ejb发布在同一个jboss内),才能采用本地接口,否则只能采用远程接口。实现编写本地接口类,继承与前面编写的远程接口,以使本地接口继承远程接口的所有业务方法package wang.ejb3;p

天空的云 2540
上一篇: 开发第一个无状态会话bean [草稿]
下一篇: EJB异常日记
tempdowncomputer
博客等级 码龄16年 2粉丝 405原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值