我们以事务管理实现AOP思想
通过在Service层加入事务管理,因为Service层可能使用多个DAO(多条SQL语句)
要保证这些SQL要么同时成功,要么同时失败,例如:学生Serivce:删除学生的时候,还需要删除学生关联信息(选课信息)
只有都删除成功才提交,如果有一条执行失败就要回滚,因此我们需要依靠事务管理实现
同时失败时:抛运行时异常,直接终止掉
throw new RuntimeException(throwables.getMessage());
java"> @Override
public void saveProduct(Product product) {
try {
queryRunner.update(connectionFactory.currentThreadConn(),
"INSERT INTO spring.product(pname, price, category) VALUE (?,?,?)," +
product.getPname(),product.getPrice(),product.getCategory())
} catch (SQLException throwables) {
throw new RuntimeException(throwables.getMessage());
}
}