【汇智学堂】-java事务的处理

    xiaoxiao2022-07-04  184

    java的事务处理,如果对数据库进行多次操作,每一次的执行或步骤都是一个事务。

    JavaBean中使用JDBC方式进行事务处理

    public int add() {   db = new DataBaseConnection();   Connection con = db.getConnection();   try {    con.setAutoCommit(false);// 更改JDBC事务的默认提交方式    dbc.executeUpdate("insert into student(name,age)values(‘zhangsan’,18));    dbc.executeUpdate("insert into achievement(name,math,english)values(‘zhangsan’,88,92));    con.commit();//提交JDBC事务    con.setAutoCommit(true);// 恢复JDBC事务的默认提交方式    dbc.close();    return 1;   }   catch (Exception exc) {    con.rollBack();//回滚JDBC事务    exc.printStackTrace();    dbc.close();    return -1;   } }

    注:在Java中使用事务处理,首先要求数据库支持事务。如使用MySQL的事务功能,就要求MySQL的表类型为Innodb才支持事务。否则,在Java程序中做了commit或rollback,但在数据库中根本不能生效。

    查看MySQL数据库使用事务,相关数据表必须为InnoDB引擎 查看数据表状态: SHOW TABLE STATUS FROM test WHERE NAME=‘register’ 其中test为数据库,register为表名 修改数据表类型为InnoDB alter table register engine = innodb;

    最新回复(0)