黄色网址大全免费-黄色网址你懂得-黄色网址你懂的-黄色网址有那些-免费超爽视频-免费大片黄国产在线观看

SpringBoot教程
SpringBoot入門案例
SpringBoot框架Web開發(fā)
SpringBoot非web應(yīng)用程序
SpringBoot使用攔截器
SpringBoot中使用Servlet
SpringBoot中使用Filter
SpringBoot項目配置字符編碼
SpringBoot打包與部署
SpringBoot使用Actuator
SpringBoot集成Thymeleaf模板
SpringBoot總結(jié)及綜合案例
SpringBoot工程下使用Mybatis反向工程

SpringBoot事務(wù)管理

SpringBoot 使用事務(wù)非常簡單,底層依然采用的是Spring本身提供的事務(wù)管理

• 在入口類中使用注解 @EnableTransactionManagement 開啟事務(wù)支持

• 在訪問數(shù)據(jù)庫的Service方法上添加注解 @Transactional 即可

案例思路

通過SpringBoot +MyBatis實現(xiàn)對數(shù)據(jù)庫學(xué)生表的更新操作,在service層的方法中構(gòu)建異常,查看事務(wù)是否生效;

項目名稱:012-springboot-web-mybatis-transacation

該項目是在011的基礎(chǔ)上添加新增方法,在新增方法中進(jìn)行案例的演示。

實現(xiàn)步驟

1.在StudentController中添加更新學(xué)生的方法

@Controller
public class SpringBootController {

    @Autowired
    private StudentService studentService;

    @RequestMapping(value = "/springBoot/update")
    public @ResponseBody Object update() {
        Student student = new Student();
        student.setId(1);
        student.setName("Mark");
        student.setAge(100);

        int updateCount = studentService.update(student);

        return updateCount;
    }

}

2.在StudentService接口中添加更新學(xué)生方法

public interface StudentService {

    /**
     * 根據(jù)學(xué)生標(biāo)識更新學(xué)生信息
     * @param student
     * @return
     */
    int update(Student student);
}

3.在StudentServiceImpl接口實現(xiàn)類中對更新學(xué)生方法進(jìn)行實現(xiàn),并構(gòu)建一個異常,同時在該方法上加@Transactional注解

@Override
@Transactional //添加此注解說明該方法添加的事務(wù)管理
public int update(Student student) {

    int updateCount = studentMapper.updateByPrimaryKeySelective(student);

    System.out.println("更新結(jié)果:" + updateCount);

    //在此構(gòu)造一個除數(shù)為0的異常,測試事務(wù)是否起作用
    int a = 10/0;

    return updateCount;
}

4.在Application類上加@EnableTransactionManagement開啟事務(wù)支持

@EnableTransactionManagement可選,但是@Service必須添加事務(wù)才生效

@SpringBootApplication
@EnableTransactionManagement //SpringBoot開啟事務(wù)的支持
public class Application {

    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }

}

5.啟動Application,通過瀏覽器訪問進(jìn)行測試

瀏覽器

控制臺

數(shù)據(jù)庫表

通過以上結(jié)果,說明事務(wù)起作用了。

6.注釋掉StudentServiceImpl上的@Transactional測試

數(shù)據(jù)庫的數(shù)據(jù)被更新

全部教程
主站蜘蛛池模板: 欧美日本一道高清免费3区 欧美日本一二三区 | 欧美巨大xxxx做受高清 | 久久综合色婷婷 | 成人美女隐私免费 | 欧美视频在线不卡 | 综合激情六月 | 天天射天天干天天操 | 免费视频www | 国产一区精品 | 人人上人人干 | 一级做a爰片久久毛片唾 | 欧美日韩网址 | 中文字幕第四页 | 伊人激情 | 尼龙丝袜社区aaaaa视频 | 日韩高清一区二区 | 一级一片免费播放 | 九九影院韩国理伦片 | 午夜在线免费观看视频 | 欧美成人免费高清二区三区 | 欧美人xxx | 九九视频热 | 国产精品成人观看视频免费 | 日韩视频第1页 | 免费国产一级特黄久久 | 在线中文高清资源免费观看 | 成人免费手机在线看网站 | free性中国hd护士高清 | 欧美老熟| 豆国产97在线 | 中国 | 成人网在线观看 | 日韩视频一区二区 | 日本www色视频成人免费网站 | 欧洲一级鲁丝片免费 | 亚洲性片 | 成年人免费观看视频网站 | 97色噜噜刺激有声小说 | 日日干日日 | 国产精品视频人人做人人爱 | 欧美特黄一级大黄录像 | 妞干网手机免费视频 |