springboot jdbc事务

// app支持事务
@EnableTransactionManagement
class App {
}
@Service
public class BobService {
   // 辅助事务支持
    @Autowired
    BobService self;

    @Autowired
    private JdbcTemplate jdbc;


    public int publicFunc() {
      self.saveToDB();
    }

    // 事务方法必须public
    @Transactional
    public int saveToDB() {
        String sql = "insert into table1(a,b) values(?,?)";
        KeyHolder keyHolder = new GeneratedKeyHolder();
        jdbc.update(conn -> {
            PreparedStatement ps = conn.prepareStatement(sql, new String[]{"id"});
            ps.setString(1, "valueA");
            ps.setString(2, "valueB");
        }, keyHolder);

        int id = 0;
        if (keyHolder.getKey() != null) {
            id = keyHolder.getKey().intValue();
        }
        return id;
    }
}
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。