本文整理了Java中org.springframework.transaction.annotation.Transactional.readOnly()
方法的一些代码示例,展示了Transactional.readOnly()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Transactional.readOnly()
方法的具体详情如下:
包路径:org.springframework.transaction.annotation.Transactional
类名称:Transactional
方法名:readOnly
暂无
代码示例来源:origin: com.github.1991wangliang/lorne-tx-core
public void setTransactional(Transactional transactional) {
this.transactional = transactional;
//set readOnly
if(transactional==null){
//没有配置事务注解的时候当做只读来处理
readOnly = true;
}else{
readOnly = transactional.readOnly();
}
}
}
代码示例来源:origin: 1991wangliang/tx-lcn
public void setTransactional(Transactional transactional) {
this.transactional = transactional;
//set readOnly
if(transactional==null){
//没有配置事务注解的时候当做只读来处理
readOnly = true;
}else{
readOnly = transactional.readOnly();
}
}
}
代码示例来源:origin: io.github.jujube-framework/jujube-jdbc
/**
* 判断是否只读方法
*
* @param method 执行方法
* @return 当前方法是否只读
*/
private boolean isChoiceReadDB(Method method) {
boolean result = true;
Transactional transactionalAnno = AnnotationUtils.findAnnotation(method, Transactional.class);
// 如果是事务方法,则false
if (transactionalAnno != null && !transactionalAnno.readOnly()) {
result = false;
}
log.debug("经过方法{},结果:{}", method, result);
return result;
}
}
代码示例来源:origin: songxinjianqwe/EShop-SOA
@Before("@annotation(transaction)")
public void switchDataSourceType(Transactional transaction) {
if(transaction.readOnly()){
DataSourceContextHolder.read();
log.info("dataSource切换到:Read");
}else{
DataSourceContextHolder.write();
log.info("dataSource切换到:Write");
}
}
}
代码示例来源:origin: org.apache.syncope.core/syncope-core-logic
/**
* Resolves stored bean (if existing) referred by the given CUD method.
* Read-only methods will be unresolved for performance reasons.
*
* @param method method.
* @param args method arguments.
* @return referred stored bean.
* @throws UnresolvedReferenceException in case of failures, read-only methods and unresolved bean.
*/
public T resolveBeanReference(final Method method, final Object... args) throws UnresolvedReferenceException {
final Transactional transactional = method.getAnnotation(Transactional.class);
if (transactional != null && transactional.readOnly()) {
throw new UnresolvedReferenceException();
}
return resolveReference(method, args);
}
代码示例来源:origin: 3zamn/kingMicro
/**
* 配置前置通知,使用在方法aspect()上注册的切入点
*/
@Before("aspect()")
public void before(JoinPoint point) {
Object object = point.getTarget();
// logger.info(point.getSignature().toString());
String methodName = point.getSignature().getName();
Class<?>[] parameterTypes = ((MethodSignature)point.getSignature()).getMethod().getParameterTypes();
Method method;
try {
method = object.getClass().getMethod(methodName, parameterTypes);
Transactional transactional = method.getAnnotation(Transactional.class);
if(transactional!=null){
boolean readOnly = transactional.readOnly();
if(readOnly){
HandleDataSource.read();
// logger.info("切换--读库");
}
}else{
HandleDataSource.write();
// logger.info("切换--写库");
}
} catch (NoSuchMethodException e) {
logger.error(e.getMessage());
} catch (SecurityException e) {
logger.error(e.getMessage());
}
}
代码示例来源:origin: com.butor/butor-web
TransactionTemplate trxTpl = new TransactionTemplate(transactionManager);
trxTpl.setIsolationLevel(trx.isolation().value());
trxTpl.setReadOnly(trx.readOnly());
trxTpl.setPropagationBehavior(trx.propagation().value());
trxTpl.setTimeout(trx.timeout());
代码示例来源:origin: com.mysema.rdf/rdfbean-guice
private RDFBeanTransaction doBegin(Session session, Transactional transactional) {
RDFBeanTransaction txn = session.beginTransaction(
transactional.readOnly(),
transactional.timeout(),
transactional.isolation().value());
session.setFlushMode(FlushMode.COMMIT);
return txn;
}
代码示例来源:origin: com.butor/butor-web
TransactionTemplate trxTpl = new TransactionTemplate(transactionManager);
trxTpl.setIsolationLevel(trx.isolation().value());
trxTpl.setReadOnly(trx.readOnly());
trxTpl.setPropagationBehavior(trx.propagation().value());
trxTpl.setTimeout(trx.timeout());
代码示例来源:origin: com.butor/butor-web
TransactionTemplate trxTpl = new TransactionTemplate(transactionManager);
trxTpl.setIsolationLevel(trx.isolation().value());
trxTpl.setReadOnly(trx.readOnly());
trxTpl.setPropagationBehavior(trx.propagation().value());
trxTpl.setTimeout(trx.timeout());
内容来源于网络,如有侵权,请联系作者删除!