TransactionManager、@TransactionScoped源码翻译
来源:互联网 发布:2016年淘宝卖家下载 编辑:程序博客网 时间:2024/04/30 00:26
package javax.transaction;import java.lang.IllegalStateException;import java.lang.SecurityException;/** * 目的:定义服务器管理事务的方法 * @author TCM * @create 2017年11月1日下午1:21:33 */public interface TransactionManager { //当前线程创建一个事务 public void begin() throws NotSupportedException, SystemException; //事务提交。该方法完成后,当前线程与事务无关 public void commit() throws RollbackException,HeuristicMixedException, HeuristicRollbackException, SecurityException,IllegalStateException, SystemException; //获取事务的状态 public int getStatus() throws SystemException; //获取事务Transaction对象 public Transaction getTransaction() throws SystemException; //恢复当前线程的事务。该方法执行后,线程与事务上下文相关联 public void resume(Transaction tobj) throws InvalidTransactionException, IllegalStateException, SystemException; //回滚事务 public void rollback() throws IllegalStateException, SecurityException, SystemException; //修改线程中的事务,唯一可能性是事务回滚。 public void setRollbackOnly() throws IllegalStateException, SystemException; //设置事务超时时间,单位:秒 //没有调用该方法,有默认值;若设置为0,则默认;为负数,抛出异常 public void setTransactionTimeout(int seconds) throws SystemException; //获取当前线程中的暂停事务。 //若没有暂停事务,则返回null;该方法执行后,线程与事务无关。 public Transaction suspend() throws SystemException;}
package javax.transaction;import java.lang.annotation.ElementType;import java.lang.annotation.Retention;import java.lang.annotation.Target;import javax.enterprise.context.NormalScope;/** * 目的:注解@TransactionScoped,事务使用范围 * * <p>@TransactionScoped注解定义了bean实例在当前激活的JTA事务内的生命周期。 * 该注解并不影响非上下文对bean的引用。 * * <p>UserTransaction.getStatus()或TransactionManager.getStatus() * 返回以下的状态时,事务作用域将激活: * Status.STATUS_ACTIVE; * Status.STATUS_MARKED_ROLLBACK * Status.STATUS_PREPARED * Status.STATUS_UNKNOWN * Status.STATUS_PREPARING * Status.STATUS_COMMITTING * Status.STATUS_ROLLING_BACK * * <p>@TransactionScoped注解与事务上下文、生命周期等相关联,并没有与“active”关联。 * 该注解的对象与当前激活JTA事务相关联,并在其内使用这个对象。这个关联维持到事务的终止或重新恢复 * 或Synchronization.beforeCompletion()回调。在一个未定义的上下文中调用 * Synchronization.afterCompletion()方法。JTA事务的开始和完成(如:UserTransaction * ,事务拦截器等等)都与之无关。所使用的上下文引用在不同JTA事务中也是不同的。上下文的引用更多 * 细节请参考CDI规范。若果事务上下文没有激活就使用该注解的对象,则抛出异常 * javax.enterprise.context.ContextNotActiveException。 * @author TCM * @create 2017年10月31日下午2:17:24 * @since JTA1.2 */@Retention(java.lang.annotation.RetentionPolicy.RUNTIME)@Target({ElementType.TYPE, ElementType.METHOD, ElementType.FIELD})@NormalScope(passivating=true)public @interface TransactionScoped {}
阅读全文
0 0
- TransactionManager、@TransactionScoped源码翻译
- javax.transaction.TransactionManager翻译
- TransactionManager
- TransactionManager (Lab)
- tasklet源码注释翻译
- AsyncTask源码翻译
- TextUtils源码翻译
- Handler源码翻译
- Serializable源码翻译
- @Generated源码翻译
- @PostConstruct、@PreDestroy源码翻译
- @ManagedBean源码翻译
- @Resource、@Resources源码翻译
- @Target、ElementType源码翻译
- @Retention、RetentionPolicy源码翻译
- @Inject源码翻译
- @Scope、@Singleton源码翻译
- Servlet、ServletConfig源码翻译
- 视频监控初始化重复打开视频页面--解决第二次打开看不到页面的情况
- 大二学长竟然教大一学弟做这种事……
- JS点击增加行事件
- 数据结构:实验四栈和队列的基本操作实现及其应用
- 面向对象程序设计的结构
- TransactionManager、@TransactionScoped源码翻译
- Windows Visual Studio下安装和使用google test(gtest)
- 用U盘安装系统提示Windows 无法安装所需的文件。文件可能损坏或丢失错误代码:0x80070570解决办法
- hibernate中实体的关联数据字典的字段的显示问题
- 20171101
- iOS简单高性能标签TagView(巧用YYLabel)
- Navicat for Mysql建立本地连接出现 1045 -Access denied for user'root'@'ipAddress'(using password :yes) 的问题
- c++文件和源文件的正确姿势
- 王玉成: Android Things