EJB3.0学习笔记---多接口的时,实现类处理方法:
EJB学习笔记---
1.胖客户端:指的是定义的接口太多了,接口做的工作太多;
胖接口:
2.EJB实现类型的定义,用注解的方式,当一个EJBbean,实现了多个接口的时候,
需要用注解的方式指明哪一个接口是用Remote方式访问,哪一个接口使用
local方式访问
3.实现多个接口的情况下定义,访问方式:
有三种:
a.第一种:在接口的实现类中:
@Remote(value={EJB04Interface01.class,EJB04Interface02.class})//
定义哪些接口使用remote方式访问
@Local(value={EJB04Interface03.class,EJB04Interface04.class})*/
public class Ejb04Bean implements
EJB04Interface01,EJB04Interface02
,EJB04Interface03,EJB04Interface04{
}
b.第二种:在接口的实现类中定义,简单的方式
@Remote({EJB04Interface01.class,EJB04Interface02.class})//定义
哪些接口使用remote方式访问
@Local({EJB04Interface03.class,EJB04Interface04.class})*/
/**
* 注意:
* 1.如果是remote,和local访问方式,且()中定义的只有value一个
属性的时候
* 可以使用这种简便的方法定义value属性;去掉value=
* 2.如果定义在了接口的前面,那么这个注解在这个地方就不用定义了
*/
--------------------------------------------------------------------
EJB学习例子:多接口的时实现类处理方法:
新建EJB项目:EJBTest_04
1.com.credream.ejb建包
2.编写接口:
EJB04Interface01.java
package com.credream.ejb;
import javax.ejb.Remote;
@Remote
public interface EJB04Interface01 {
public void m1();
}
----------------------------------------------------
EJB04Interface02.java
package com.credream.ejb;
import javax.ejb.Remote;
@Remote
public interface EJB04Interface02 {
public void m2();
}
-----------------------------------------------
EJB04Interface03.java
package com.credream.ejb;
import javax.ejb.Local;
@Local
public interface EJB04Interface03 {
public void m3();
}
------------------------------------------------
EJB04Interface04.java
package com.credream.ejb;
import javax.ejb.Local;
@Local
public interface EJB04Interface04 {
public void m4();
}
--------------------------------------------------------------
3.编写接口的实现类:
Ejb04Bean.java
package com.credream.ejb;
import javax.ejb.Local;
import javax.ejb.Remote;
import javax.ejb.Stateless;
@Stateless(name="ejb04beanname")
/*@Remote({EJB04Interface01.class,EJB04Interface02.class})//定义哪些
接口使用remote方式访问
@Local({EJB04Interface03.class,EJB04Interface04.class})*/
/**
* 注意:
* 1.如果是remote,和local访问方式,且()中定义的只有value一个属性的
时候
* 可以使用这种简便的方法定义value属性;去掉value=
* 2.如果定义在了接口的前面,那么这个注解在这个地方就不用定义了
*/
/*@Remote(value={EJB04Interface01.class,EJB04Interface02.class})//定
义哪些接口使用remote方式访问
@Local(value={EJB04Interface03.class,EJB04Interface04.class})*/
public class Ejb04Bean implements EJB04Interface01,EJB04Interface02
,EJB04Interface03,EJB04Interface04{
public void m1() {
System.out.println("m1方法被调用了!!!");
}
public void m2() {
System.out.println("m2方法被调用了!!!");
}
public void m3() {
System.out.println("m3方法被调用了!!!");
}
public void m4() {
System.out.println("m4方法被调用了!!!");
}
}
-----------------------------------------------------------------
4.编写远程客户端:EJBTest04_client
a.com.credream.ejb
5.编写客户端代码:EJB04BeanClient.java
package com.credream.ejb;
import javax.naming.InitialContext;
public class EJB04BeanClient {
/**
* @param args
*/
public static void main(String[] args) throws Exception{
InitialContext context=new InitialContext();
/*EJB04Interface01 ejb04Interface01=
(EJB04Interface01) context.lookup("ejb04beanname/remote");
ejb04Interface01.m1();
EJB04Interface02 ejb04Interface02=(EJB04Interface02)
context.lookup("ejb04beanname/remote");
ejb04Interface02.m2();*/
//没有把EJB04Interface03定义成local访问
EJB04Interface03 ejb04Interface03=(EJB04Interface03)
context.lookup("ejb04beanname/remote");
ejb04Interface03.m3();
//注意:远程客户端是用不了local的
}
}
--------------------------------------------------------------
5.导入EJB的jar包,并且写入类路径中jndi.properties文件
java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory
java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces
java.naming.provider.url=localhost
-----------------------------------------------------------
EJB3.0学习笔记---多接口的时,实现类处理方法:相关推荐
- EJB3.0学习笔记---MDBbean--区分P2P模式和Pub/Sub模式的示例
1.注意在写MDB程序的时候,如果是使用的P2P方式的话,可能你写了多个同样的MDBbean,但是 只会有一个MDBbean被调用,至于是哪一个被调用是随机的,这时候其他的将不会起作用; 一个消息 ...
- EJB3.0学习笔记---MDB--第一个MDBBean程序:
第一个MDBBean程序: P2P方式传递消息: 1.创建EJB项目:EJBTestP2P_05 2.在com.credream.ejb包下: MyQueueMDBBean.java package ...
- EJB3.0学习笔记--SOAP-AXIS--深入Soap引擎
1.SOAP: 简单对象访问协议,简单对象访问协议(SOAP)是一种轻量的.简单的.基于 XML 的协 议,它被设计成在 WEB 上交换结构化的和固化的信息. SOAP 可以和现存的许多因特网 ...
- EJB3.0学习笔记---Bean实现多个接口的情况下定义,访问方式:
2.EJB实现类型的定义,用注解的方式,当一个EJBbean,实现了多个接口的时候, 需要用注解的方式指明哪一个接口是用Remote方式访问,哪一个接口使用 local方式访问 3.实现多个接口的情况 ...
- EJB3.0学习笔记---定义客户端访问接口:
定义客户端访问接口: 1.回顾:有状态的EJB每次都是一个新的,可以区分客户端状态,无状态的EJB可 以看成是单例的 2.客户端仅通过业务逻辑Bean所定义的接口来访问业务逻辑(跟具体实现无关) 3. ...
- EJB3.0学习笔记---理解远程调用服务端和本地调用服务端的区别
项目目的:理解远程调用服务端和本地调用服务端的区别 1.异常: javax.ejb.EJBException: Local and Remote Interfaces cannot hav ...
- EJB3.0学习笔记---JMS/MDB/Pub/Sub/P2P
JMS: 1.jms是java的消息服务,jms的客户端之间可以通过jms服务进行异步的消息传输,jms支 持两种消息模型,Point--to--Point(P2P)和Publish/Subscri ...
- EJB3.0学习笔记---第一个EJB程序:
第一个EJB程序: 开发服务端程序: 1.新建一个EJB project:EJBTest_01 2.在src下建包:com.credream.ejb 3.写接口:FirstEjb.java pac ...
- EJB3.0学习笔记--第一个EJB程序:
第一个EJB程序: 开发服务端程序: 1.新建一个EJB project:EJBTest_01 2.在src下建包:com.credream.ejb 3.写接口:FirstEjb.java pac ...
最新文章
- Oracle数据库的基本语法
- Android高效开发:
- 12.多媒体和超链接标签及其应用实例
- 4021-基于链地址法的散列表的删除(C++,附思路)
- 数据结构 10分钟让你掌握经典排序(二)
- 基于libuv的TCP设计(二)
- win8系统下用VMware虚拟机启动Windows Server 2008报错问题解决方法
- Hadoop中的一些基本操作
- 那些年,我们一起找过的工作
- Visual Studio快速配置增加文件版权声明
- mac ios 远程桌面连接到服务器配置,手把手教你苹果mac如何远程桌面连接
- Unity Shader 玻璃材质
- 多个服务器数据互通_打造生态循环《剑网3:指尖江湖》第二批服务器数据互通...
- vue二维码生成、打印及识别
- LabVIEW使用VI Server的时候出现1003错误
- 苹果用户当心 犯罪分子网购海外邮箱专偷苹果ID
- html2canvas的使用以及跨域问题
- 3GPP TS 23501-g51 中英文对照 | 4.3.4 Interworking between ePDG connected to EPC and 5GS
- 联盟优势电信服务器,中国电信积极推进OLA联盟行业技术标准制定 加速智能家居互联互通...
- 4am永远 鼠标按键设置_国潮加持 黑爵蜻蜓点水RGB鼠标评测