2013-03-18 49 views
2

我正在嘗試使用Hibernate插入n個記錄。標準將像從表格中獲取MAX ID並增加ID和保存記錄。該ID就像TK020001如何在MySQL上用Hibernate批量插入增量ID?

我得到了最大ID併爲第一條記錄遞增。對於第二個記錄,它必須取最大ID,但它取前一個最大值。我關閉了會話並在插入第一條記錄後刷新。

任何人都可以給我插入這種情況下記錄(MySQL)的最佳方式?

回答

-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(或任何其他)。當動作完成後,我們將其設置回來,再次使用小工具。