如何在MySQL上使用Hibernate批量插入递增ID?

时间:2013-03-18 05:24:27

标签: hibernate auto-increment

我正在尝试使用Hibernate插入n个记录。标准就像从表中获取MAX ID并增加ID和保存记录。 ID与TK020001类似。

我获得了最大ID并为第一条记录增加了。对于第二条记录,它必须采用最大ID,但它采用的是前一个最大值。插入第一条记录后,我关闭了会话并刷新了。

有人能给我最好的方法来插入这个场景(MySQL)的记录吗?

1 个答案:

答案 0 :(得分:-1)

尝试为您的连接设置事务隔离级别为READ_UNCOMMITTED。

Work w = new Work()
{
    @Override
    public void execute(Connection connection) throws SQLException
    {
        connection.setTransactionIsolation(Connection.TRANSACTION_READ_UNCOMMITTED);
    }
};

session.doWork(w);

不要忘记将隔离级别设置回默认级别! 在我的公司,我们有一个小实用程序类,它保存默认级别并设置READ_UNCOMMITTED(或任何其他)。当动作完成后,我们再次使用小巧的实用程序将其设置回来。