EJB3.0知识积累

EJB教程

https://www.w3cschool.cn/ejb/ejb-tw3a1vfn.html
https://docs.jboss.org/ejb3/docs/tutorial/1.0.7/html_single/index.html

JBoss服务器官网下载

https://jbossas.jboss.org/downloads/
JBoss AS 7.1.1.Final 需要使用JDK版本是1.7

EAP版本下载

https://developers.redhat.com/products/eap/download

EJB3.0常用注解

@EJB:表示注入实例,EJB注入和Resource注入相比,EJB注入只是针对于EJB而言,而Resource注入即是对所有的文件都可以进行注入。
@Remove:为会话 Bean 声明远程业务接口。用在接口上时,将该接口指定为远程业务接口。在这种情况下,不提供任何 value()。用在方法上,通过这个注解来说明在调用这个方法之后bean的实例将被清除掉。
@Local:用在 Bean 类上时,为会话 Bean 声明本地业务接口。用在接口上时,将该接口指定为本地业务接口。在这种情况下,不提供任何 value()。如:@Local(LawsuitService.class)
@Stateful:有状态会话 Bean 的组件定义注释。
@Timeout:指定无状态会话 Bean 类或消息驱动 Bean 类上接收该 Bean 的 EJB 计时器过期的方法。
@Interceptors:声明类或方法的拦截器的有序列表。
@Lock:方法声明一个并发锁的单例bean具有容器管理的并发。
@Schedule(排程器):计划时间为自动建立一个超时计划基于一个时间表达式。
@Startup:标记一个单例在应用初始化期间。
@ConcurrencyManagement:声明单例或有状态bean的并发管理类型

声明一个EJB对象

@Stateless(name = "common/SSOBean")
@RemoteBinding(jndiBinding = SSOService.REMOTE)
@Remote({ SSOService.class })
@TransactionAttribute(TransactionAttributeType.SUPPORTS)

/**
 * @Stateless 标记类把Java类声明为一个无状态会话bean
 * @RemoteBinding 标识Remote的JNDI名称
 * @LocalBinding 标识本地的JNDI名称
 * @TransactionAttribute:在 TYPE-level 应用时,为会话或消息驱动 Bean 的所有业务方法指定默认事务属性。在方法级应用时,仅为该方法指定事务属性。
 *   如:@TransactionAttribute(TransactionAttributeType.SUPPORTS)、
 *      @TransactionAttribute(TransactionAttributeType.REQUIRED)。
 * 
 */
posted @ 2022-07-17 22:10  crazy-zz5536  阅读(70)  评论(0编辑  收藏  举报