2小時學會Spring Boot學習 - 事務管理

操做數據庫時,同時插入或修改兩條數據,經過事務可控件同時是否成功,若有一條不成功則都不成功spring

數據庫注意:相關表的引擎應爲InnoDB數據庫

navicate-表-設計表-選項-引擎app

或在application.yml配置文件中修改hibernate

2.0.0以上版本的spring boot實體的默認引擎爲MySAM,其不支持事務,須要配置引擎爲爲innoDB
須要在yml的spring:jpa下設置database-platform爲org.hibernate.dialect.MySQL5InnoDBDialect便可設計

 

關鍵註解:   orm

@Transactional

1.新建Service文件
@Service
public class GirlService {

@Autowired
private GirlReposistory girlReposistory;

@Transactional //事務註解
public void insertTwo(){
Girl girlA = new Girl();
girlA.setCupSize("A");
girlA.setAge(12);
girlReposistory.save(girlA);

Girl girlB = new Girl();
girlB.setCupSize("vvvvvB2w");
girlB.setAge(14);
girlReposistory.save(girlB);
}
}


2.在controller中調用
public class GirlController { 
@Autowired
private GirlService girlService;
  @PostMapping(value = "inserttow")
  public void insertTow(){
   girlService.insertTwo();
  }
}





相關文章
相關標籤/搜索