下面列出了org.springframework.transaction.annotation.Propagation#NOT_SUPPORTED 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。
@Override
@Transactional(rollbackFor = Exception.class, propagation = Propagation.NOT_SUPPORTED)
public List<Message01Entity> getMessageByIds(String tbName, List<Long> ids) {
setMaster(false);
List<Message01Entity> message01Entitys = null;
try {
message01Entitys = message01Repository.getMessageByIds(getDbName() + "." + tbName, ids);
} catch (Exception e) {
otherFailCounter.inc();
throw new RuntimeException(e);
} finally {
clearDbId();
}
return message01Entitys;
}
/**
* {@inheritDoc}
* <p/>
* This implementation executes non-transactionally, suspends the current transaction if one exists.
*/
@Override
@Transactional(propagation = Propagation.NOT_SUPPORTED)
public void publishNotificationMessage(NotificationMessage notificationMessage)
{
publishNotificationMessageImpl(notificationMessage);
}
@PublishNotificationMessages
@Override
@Transactional(propagation = Propagation.NOT_SUPPORTED)
public BusinessObjectData processRelationalTableRegistrationForSchemaUpdate(BusinessObjectDataStorageUnitKey storageUnitKey)
{
return processRelationalTableRegistrationForSchemaUpdateImpl(storageUnitKey);
}
@Transactional(propagation = Propagation.NOT_SUPPORTED)
public void testExceptionTranslationWithDialectFoundOnEntityManagerFactoryBean() throws Exception {
AbstractEntityManagerFactoryBean aefb =
(AbstractEntityManagerFactoryBean) applicationContext.getBean("&entityManagerFactory");
assertNotNull("Dialect must have been set", aefb.getJpaDialect());
doTestExceptionTranslationWithDialectFound(aefb);
}
@Override
@Transactional(propagation = Propagation.NOT_SUPPORTED)
@Cacheable(cacheNames = "oauth2-access-token", key = "'token:'+#accessToken")
public OAuth2AccessToken getTokenByAccessToken(String accessToken) {
Assert.notNull(accessToken, "accessToken can not be null!");
return DefaultDSLQueryService.createQuery(oAuth2AccessDao)
.where("accessToken", accessToken).single();
}
/**
* 根据资源表Id查询权限
* @param resourcesId 资源表Id
* @return
*/
@Transactional(readOnly=true,propagation=Propagation.NOT_SUPPORTED)
public List<SysPermission> findPermissionByResourcesId(String resourcesId){
Query query = em.createQuery("select b from SysPermissionResources a," +
"SysPermission b where a.permissionId = b.id and " +
"a.resourceId = ?1");
query.setParameter(1, resourcesId);
return query.getResultList();
}
/**
* {@inheritDoc}
* <p/>
* This implementation executes non-transactionally, suspends the current transaction if one exists.
*/
@NamespacePermission(fields = "#businessObjectDataKey.namespace", permissions = NamespacePermissionEnum.WRITE)
@Override
@Transactional(propagation = Propagation.NOT_SUPPORTED)
public BusinessObjectData destroyBusinessObjectData(BusinessObjectDataKey businessObjectDataKey)
{
return destroyBusinessObjectDataImpl(businessObjectDataKey);
}
/**
* {@inheritDoc}
* <p/>
* This implementation executes non-transactionally, suspends the current transaction if one exists.
*/
@Override
@Transactional(propagation = Propagation.NOT_SUPPORTED)
public EmrClusterCreateDto emrCreateClusterAwsSpecificSteps(EmrClusterCreateRequest request, EmrClusterDefinition emrClusterDefinition,
EmrClusterAlternateKeyDto emrClusterAlternateKeyDto)
{
return emrCreateClusterAwsSpecificStepsImpl(request, emrClusterDefinition, emrClusterAlternateKeyDto);
}
/**
* 根据答案回复Id查询答案回复
* @param answerReplyId 答案回复Id
* @return
*/
@Transactional(readOnly=true,propagation=Propagation.NOT_SUPPORTED)
public AnswerReply findReplyByReplyId(Long answerReplyId){
Query query = em.createQuery("select o from AnswerReply o where o.id =?1");
//给SQL语句设置参数
query.setParameter(1, answerReplyId);
List<AnswerReply> replyList = query.getResultList();
if(replyList != null && replyList.size() >0){
for(AnswerReply reply : replyList){
return reply;
}
}
return null;
}
/**
* 根据答案Id查询答案在表的第几行
* @param answerId 答案Id
* @param questionId 问题Id
* @return
*/
@Transactional(readOnly=true,propagation=Propagation.NOT_SUPPORTED)
public Long findRowByAnswerId(Long answerId,Long questionId){
Query query = em.createQuery("select count(o.id) from Answer o where o.id <=?1 and o.questionId= ?2 order by o.postTime asc");
//给SQL语句设置参数
query.setParameter(1, answerId);
query.setParameter(2, questionId);
return (Long)query.getSingleResult();
}
/**
* 查询所有缩略图
* @return
*/
@Transactional(readOnly=true,propagation=Propagation.NOT_SUPPORTED)
public List<Thumbnail> findAllThumbnail(){
Query query = em.createQuery("select o from Thumbnail o ");
return query.getResultList();
}
@Transactional(propagation = Propagation.NOT_SUPPORTED)
Flux<Book> findAll();
/**
* 分页查询问题
* @param firstIndex 开始索引
* @param maxResult 需要获取的记录数
* @return
*/
@Transactional(readOnly=true,propagation=Propagation.NOT_SUPPORTED)
public List<Question> findQuestionByPage(int firstIndex, int maxResult){
List<Question> questionList = new ArrayList<Question>();
String sql = "select o.id,o.title,o.content,o.appendContent," +
"o.postTime,o.userName,o.isStaff,o.status " +
" from Question o ";
Query query = em.createQuery(sql);
//索引开始,即从哪条记录开始
query.setFirstResult(firstIndex);
//获取多少条数据
query.setMaxResults(maxResult);
List<Object[]> objectList = query.getResultList();
if(objectList != null && objectList.size() >0){
for(int i = 0; i<objectList.size(); i++){
Object[] obj = (Object[])objectList.get(i);
Long id = (Long)obj[0];
String title = (String)obj[1];
String content = (String)obj[2];
String appendContent = (String)obj[3];
Date postTime = (Date)obj[4];
String userName = (String)obj[5];
Boolean isStaff = (Boolean)obj[6];
Integer status = (Integer)obj[7];
Question question = new Question();
question.setId(id);
question.setTitle(title);
question.setContent(content);
question.setAppendContent(appendContent);
question.setPostTime(postTime);
question.setUserName(userName);
question.setIsStaff(isStaff);
question.setStatus(status);
questionList.add(question);
}
}
return questionList;
}
@Override
@Transactional(readOnly = true, propagation = Propagation.NOT_SUPPORTED)
public CommonResponseDto findPassword(String email) {
CommonResponseDto responseDto = isValidEmail(email);
try {
if (UserConstant.EMAIL_INVALID != responseDto.getResult()) {
if (UserConstant.SUCCESS == responseDto.getResult()) {
responseDto.setErrorMessage("邮箱未注册");
}
throw new VerificationException(responseDto.getErrorMessage());
}
User user = userRepository.findByEmail(email);
if (user == null) {
throw new VerificationException("用户不存在");
}
if (user.isDisable() || !user.isvStatus()) {
throw new VerificationException("用户被禁用或者邮箱未验证");
}
UserMailHandler mailHandler = handler
.getHandler(EmailConstant.EMAIL_USER_FIND_PASSWORD);
MailMessage mailMessage = mailHandler.handlerMailMessage(email,
user);
CommonResponseDto mailResponseDto = mailService
.sendValidEmail(mailMessage);
if (UserConstant.SUCCESS == mailResponseDto.getResult()) {
responseDto.setResult(UserConstant.SUCCESS);
} else {
return mailResponseDto;
}
} catch (VerificationException e) {
responseDto.setResult(UserConstant.ERROR);
responseDto.setErrorMessage(e.getMessage());
}
return responseDto;
}
/**
* 查询系统当前使用的模板目录(目录为空时返回default) - 缓存
* @return
*/
@Transactional(readOnly=true,propagation=Propagation.NOT_SUPPORTED)
@Cacheable(value="templateServiceBean_cache",key="'findTemplateDir_default'")
public String findTemplateDir_cache(){
return this.findTemplateDir();
}
@Override
@Transactional(propagation = Propagation.NOT_SUPPORTED)
public void executeInNewTransaction(Runnable runnable) {
runnable.run();
}
@Test(expectedExceptions = IllegalStateException.class)
@Transactional(propagation = Propagation.NOT_SUPPORTED)
public void endTxWithNonExistentTransactionContext() {
TestTransaction.end();
}
@Override
@Transactional(propagation = Propagation.NOT_SUPPORTED)
public void addNotSupported(User1 user){
user1Mapper.insert(user);
}
@Test(expectedExceptions = IllegalStateException.class)
@Transactional(propagation = Propagation.NOT_SUPPORTED)
public void endTxWithNonExistentTransactionContext() {
TestTransaction.end();
}
@Override
@Transactional(propagation = Propagation.NOT_SUPPORTED)
public void enableTiManaged(PointInterface p, String tiTask, int cores) {
pointDao.updateEnableManaged(p, tiTask, cores);
updateManagedTasks(p);
}