package demo.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import demo.entity.Account;
import demo.mapper.AccountMapper;
import demo.service.AccountService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.math.BigDecimal;
@Service
public class AccountServiceImpl extends ServiceImpl<AccountMapper, Account> implements AccountService {
@Autowired
private AccountMapper accountMapper;
private Integer i1;
private Integer i2;
//开启事务
@Transactional
public boolean transfer(String source, String target, BigDecimal money) {
//获取汇款方
QueryWrapper<Account> wrapper1 = new QueryWrapper<>();
wrapper1.eq("name", source);
Account one1 = accountMapper.selectOne(wrapper1);
QueryWrapper<Account> wrapper2 = new QueryWrapper<>();
wrapper2.eq("name", target);
Account one2 = accountMapper.selectOne(wrapper2);
one1.setMoney(one1.getMoney().subtract(money)); //十进制减法
i1 = accountMapper.updateById(one1);
//模拟转账异常
int a=1/0;
one2.setMoney(one2.getMoney().add(money)); //十进制加法
i2 = accountMapper.updateById(one2);
if (i1 > 0 && i2 > 0) {
return true;
}
return false;
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
使用MyBatisPlus+Spring实现声明式事务
共70个文件
xml:53个
class:6个
java:6个
需积分: 0 1 下载量 72 浏览量
2023-03-09
15:30:30
上传
评论
收藏 51KB ZIP 举报
温馨提示
一个使用MyBatisPlus+Spring实现声明式事务的案例,亲测可用
资源推荐
资源详情
资源评论
收起资源包目录
使用MyBatisPlus+Spring实现声明式事务.zip (70个子文件)
使用MyBatisPlus+Spring实现声明式事务
mybatisplus-transaction
pom.xml 2KB
src
main
resources
application.yml 209B
java
demo
mapper
AccountMapper.java 284B
controller
TestController.java 702B
service
impl
AccountServiceImpl.java 1KB
AccountService.java 273B
entity
Account.java 504B
Demo.java 275B
.idea
jarRepositories.xml 845B
uiDesigner.xml 9KB
libraries
Maven__org_springframework_boot_spring_boot_starter_tomcat_2_7_7.xml 673B
Maven__org_springframework_spring_context_5_3_24.xml 576B
Maven__org_mybatis_mybatis_3_5_7.xml 488B
Maven__org_springframework_boot_spring_boot_starter_logging_2_7_7.xml 680B
Maven__org_projectlombok_lombok_1_18_24.xml 519B
Maven__org_springframework_spring_jdbc_5_3_24.xml 555B
Maven__com_baomidou_mybatis_plus_extension_3_4_3_1.xml 611B
Maven__com_github_jsqlparser_jsqlparser_4_0.xml 535B
Maven__com_baomidou_mybatis_plus_3_4_3_1.xml 541B
Maven__org_apache_tomcat_embed_tomcat_embed_el_9_0_70.xml 599B
Maven__org_springframework_spring_jcl_5_3_24.xml 548B
Maven__org_springframework_spring_expression_5_3_24.xml 597B
Maven__org_springframework_boot_spring_boot_starter_web_2_7_7.xml 652B
Maven__ch_qos_logback_logback_core_1_2_11.xml 542B
Maven__com_fasterxml_jackson_core_jackson_databind_2_13_4_2.xml 632B
Maven__org_apache_logging_log4j_log4j_to_slf4j_2_17_2.xml 596B
Maven__org_yaml_snakeyaml_1_30.xml 483B
Maven__com_fasterxml_jackson_datatype_jackson_datatype_jsr310_2_13_4.xml 683B
Maven__org_springframework_spring_core_5_3_24.xml 555B
Maven__com_zaxxer_HikariCP_4_0_3.xml 491B
Maven__com_fasterxml_jackson_core_jackson_annotations_2_13_4.xml 639B
Maven__org_mybatis_mybatis_spring_2_0_6.xml 537B
Maven__org_springframework_spring_web_5_3_24.xml 548B
Maven__org_slf4j_slf4j_api_1_7_36.xml 501B
Maven__org_springframework_spring_webmvc_5_3_24.xml 569B
Maven__com_baomidou_mybatis_plus_boot_starter_3_4_3_1.xml 632B
Maven__com_fasterxml_jackson_module_jackson_module_parameter_names_2_13_4.xml 724B
Maven__org_springframework_boot_spring_boot_starter_json_2_7_7.xml 659B
Maven__mysql_mysql_connector_java_5_1_47.xml 562B
Maven__org_springframework_boot_spring_boot_2_7_7.xml 568B
Maven__org_apache_logging_log4j_log4j_api_2_17_2.xml 561B
Maven__org_springframework_spring_beans_5_3_24.xml 562B
Maven__jakarta_annotation_jakarta_annotation_api_1_3_5.xml 621B
Maven__org_slf4j_jul_to_slf4j_1_7_36.xml 522B
Maven__com_fasterxml_jackson_core_jackson_core_2_13_4.xml 590B
Maven__org_apache_tomcat_embed_tomcat_embed_websocket_9_0_70.xml 648B
Maven__org_springframework_boot_spring_boot_autoconfigure_2_7_7.xml 666B
Maven__ch_qos_logback_logback_classic_1_2_11.xml 563B
Maven__org_springframework_spring_tx_5_3_24.xml 541B
Maven__org_springframework_spring_aop_5_3_24.xml 548B
Maven__com_fasterxml_jackson_datatype_jackson_datatype_jdk8_2_13_4.xml 669B
Maven__org_springframework_boot_spring_boot_starter_jdbc_2_7_7.xml 659B
Maven__org_springframework_boot_spring_boot_starter_2_7_7.xml 624B
Maven__com_baomidou_mybatis_plus_core_3_4_3_1.xml 576B
Maven__org_apache_tomcat_embed_tomcat_embed_core_9_0_70.xml 613B
Maven__com_baomidou_mybatis_plus_annotation_3_4_3_1.xml 618B
workspace.xml 6KB
misc.xml 439B
compiler.xml 901B
modules.xml 286B
.gitignore 176B
target
classes
demo
mapper
AccountMapper.class 418B
Demo.class 701B
controller
TestController.class 1KB
service
AccountService.class 445B
impl
AccountServiceImpl.class 2KB
entity
Account.class 3KB
application.yml 209B
generated-sources
annotations
mybatisplus-transaction.iml 6KB
jdbc_test.sql 2KB
共 70 条
- 1
资源评论
zabaniya1886
- 粉丝: 6
- 资源: 2
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功