EJB 企业级应用的架构(5)
来源:互联网 发布:网络文明创意广告 编辑:程序博客网 时间:2024/06/06 03:06
EJB扩展组件
EJB的依赖注入,都是依赖于JNDI的。
在EJB组建中调用其他的EJB组件
可以借助于JNDI,查找到其他EJB组件,也可以借助于业务接口,调用EJB实例中的业务方法,也可以同国直接引用其他的需要的EJB组件的业务接口,但是需要使用标注。
例:
@EJB
TaxRate tr;
标注
@Statless @Statful @MessageDriverBean
name=" ",mappedName=" " description=" "
name属性是标识EJB的名字(可以通过JNDI来查找)。默认是EJB的名字。
mappedName属性也是标识EJB的名字的是容器相关的,所以不要重置,降低可移植性。
description属性是EJB的描述内容。
以上3个属性是3个标签共有的属性。
@Remote @Local
这两个标注是标注商业接口的,分别是标注远程的和本地的商业接口的,如果不写那就默认为本地的。
用于有状态SessionBean的标注
@Remove(retainIfExctption="true|false")
是否在Bean的实例抛出异常之后是否保留着个实例,@Remove标注能够应用的有状态SessionBean中的某个业务方法上。当调用到应用了这一注释的方法时,EJB容器会将这个Bean的实例销毁或是保留,
retainIfExctption属性置为true,则会在调用Bean的业务方法中出现异常则会保留这个Bean的实例,置为false则会销毁该实例。
EJB的依赖注入
@Resource标注能够引用到EJB组件环境中的资源。
@Resource(name="" ,type="")
注意在使用资源引用的时候,也需要在厂商的部署描述文件中对资源进行配置,也就是配置资源的类型和名字,以及JNDIname
@EJB(name="",beanInterface="",beanName="",description="")
name属性指定引用EJB组件的名字
beanInterface属性用于指定被引用的EJB组件的接口类型
beanName属性如果在要引入的EJB组件在相同模块中也就是在同一个jar文件中,就需要自定beanName了
EJB拦截器
EJB拦截器,使用来截取客户的调用方法的,就像是过滤器,他只适用于SessionBean MDB。
@Interceptors和@AroundInvoke
使用@AroundInvoke标注注释方法,并且方法的返回值为Object
例
public class Test{
@AroundInvoke
public Object test(InvocationContext inv){
System.out.println("Intercepted call via external class to:"+
inv.getMethod().getName());//打印客户调用的方法的名字
Object[] params=inv.getParameters();//获得客户调用的方法的参数表
for(int i=0;i<param.length;i++){
System.out.println("\tparam: "+params[i]);//打印所有参数
}
}
}
0 0
- EJB 企业级应用的架构(5)
- EJB 企业级应用的架构(1)
- EJB 企业级应用的架构(2)
- EJB 企业级应用的架构(3)
- EJB 企业级应用的架构(4)
- EJB 企业级应用的架构(6)
- EJB 企业级应用的架构(7)
- Nginx架构的企业级应用
- 企业级应用的3种架构
- J2EE架构企业级应用
- Java企业级应用架构
- 企业级应用架构解析
- 用J2EE架构企业级应用
- 用J2EE架构企业级应用
- 用J2EE架构企业级应用
- 用J2EE架构企业级应用
- 用J2EE架构企业级应用
- 用J2EE架构企业级应用
- MyBatis入门第1天--MyBatis基础知识(一)
- PullToRefreshListView下拉刷新
- 页面导航随滚动条悬浮或者停靠
- 学习记录 -- web.xml中security-constraint配置测试
- JDK的安装与环境变量配置
- EJB 企业级应用的架构(5)
- [24] Swap Nodes in Pairs
- 当在mybatis用到foreach的时候,会报这个错误Parameter '__frch_item_0' not found. Available parameters are [list]会出现的
- [codevs1506] 传话
- java安全框架-Shiro学习笔记(六)-url匹配方式+shiro标签使用+session会话机制
- 解决QQ登录SDK不能网页授权登录的问题
- 数据库
- Linux2.6内核驱动移植变化参考
- EJB 企业级应用的架构(6)