我需要使用ORM(休眠)在ColdFusion 9中編寫發票生成軟件。發電機=「遞增」是否足夠用於連續發票號碼?
其中一個要求是發票號碼必須是無間隙的順序,這意味着不可以跳過發票號碼。
數據庫標識值(即generator =「native」)不起作用,因爲如果事務未能提交,它將跳過一個數字。
增量:該算法通過增加由ORM保持計數器 生成型長,短,或 INT的 標識符。在 表中未啓用 主鍵的自動生成並且您希望ORM生成 主鍵時,通常會使用 。這應該在 單個ColdFusion實例僅用於將數據插入到 表中的 過程中使用。
Hibernate的增量生成器是否保證不會在失敗的事務中跳過?它夠好嗎?
如果不是,我應該怎麼做呢?由postInsert()中的線程安全序列號生成器插入發票號?
根據文檔,只要它在CF的單個實例中使用,它就不應該有任何併發問題。 我想我真的不得不測試一下,看看失敗的事務是否會跳過生成的數字。 – Henry 2009-11-26 21:10:11