mapper加入事务
package com.main.dao;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import java.util.List;
import java.util.Map;
@Mapper
public interface CommonMapper {
@Select("${sql}")
public List<Map> query(@Param("sql")String sql);
@Delete("${sql}")
public Boolean del(@Param("sql")String sql);
/**
* LAST_INSERT_ID()
* 返回id
* */
@Select("SELECT LAST_INSERT_ID()")
public int id();
/**
* 开启事务
* */
@Select("START TRANSACTION")
public Boolean TRANSACTION();
/**
* 提交事务
* */
@Select("COMMIT")
public Boolean COMMIT();
/**
* 回滚事务
* */
@Select("ROLLBACK")
public Boolean ROLLBACK();
}
使用事务
@Autowired
private CommonMapper commonMapper;
//开启事务
commonMapper.TRANSACTION();
try{
数据库操作
//throw new RuntimeException(",单位名称不能为空");
//提交事务
commonMapper.COMMIT();
}catch (Exception e){
//回滚事务
commonMapper.ROLLBACK();
}