在EJB 3.1中,容器代理在技术上如何有效地欺骗我的无接口对象?

用户名

在EJB 3.1中,我可以创建一个无接口会话Bean。当将其注入其他类时,他们会收到一个与我的pojo类型相同的对象,但实际上,他们得到的是一个存根,它通过一连串的类与我的pojo进行交互。这个技巧是如何实现的?我可以理解存根是否具有与我的pojo相同的接口类型,但是容器如何创建相同类型的对象?反射?织位?非常感谢!

布雷特·凯尔(Brett Kail)

容器生成一个代理类,该代理类是您的无接口EJB类的子类,然后,它重写所有方法以进行其常规代理(设置,拆卸和调用实际的bean实例),而不是在您的实例中调用方法。 。由于java.lang.reflect.Proxy不支持扩展类,因此容器必须使用另一种方法来生成类,可能使用诸如ASM,BCEL,Javassist等字节码库。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在EJB 3.1中,容器代理在技术上如何有效地欺骗我的无接口对象?

来自分类Dev

EJB3-自我远程注入/ EJB插件

来自分类Dev

EJB容器和3层架构

来自分类Dev

WAS 8.5 ejb.jar模块中的企业bean没有定义EJB类型。(ejb 2.x-> 3.x)

来自分类Dev

从Java 1.4,EJB 1迁移到Java 6和EJB 3

来自分类Dev

EJB 3本地测试,出现错误

来自分类Dev

EJB 3注入Spring Bean

来自分类Dev

本地EJB的JNDI查找(无@EJB)

来自分类Dev

本地EJB的JNDI查找(无@EJB)

来自分类Dev

实现与多个EJB接口

来自分类Dev

EJB 3.0业务接口

来自分类Dev

如何测试EJB 3.0?

来自分类Dev

EJB中的事务传播

来自分类Dev

Kubernetes中的远程EJB

来自分类Dev

EJB中的事务传播

来自分类Dev

如何在EJB 3.1中缓存EJB远程接口?

来自分类Dev

EJB 3.X有状态会话bean如何维护状态?

来自分类Dev

如何在JBOSS 7 EJB 3中指定消息驱动Bean依赖关系?

来自分类Dev

如何在WebSphere 7.0中启用EJB 3.x支持

来自分类Dev

Glassfish 4和Postgres ConnectionPool上的JSF 2.2 + EJB 3 + JPA

来自分类Dev

查找门户网站服务器是否具有ejb3

来自分类Dev

如何使用ejb3和注释在数据源中注入依赖项

来自分类Dev

如何使用JPA / EJB3和WildFly读取未提交的数据?

来自分类Dev

如何配置服务器以在persistence.xml中进行读写(EJB 3.X APP)

来自分类Dev

类路径中的ejb3持久性和javax持久性jar文件?

来自分类Dev

哪个实体处理依赖项注入?在CDI和EJB3中

来自分类Dev

EJB3计时器在Wildfly服务器中不起作用

来自分类Dev

没有将接口EJB注入到无接口EJB中

来自分类Dev

Spring EJB 3 Jndi查找失败