获取下一个序列号

时间:2011-11-15 12:09:51

标签: java mysql hibernate

我有一个类Account,其属性为number,其值为fe:

130.11.0000001

[plan_code].[year].[sequential number]

现在我将此number属性映射为String。 因此,当我想为同一Account创建第二个Plan (code=130)时,它应该number = 130.11.0000002

Account成为plan(code=100)时,它应该number=100.11.0000001

我正在考虑使用来自hibernate的hilo生成器,但不知道如何启动,如果使用hilo generator甚至可以实现。所以欢迎任何指示/实施的想法!

也许我应该开始使用id为hilo生成的值来创建number类型的AccountNumber属性?

2 个答案:

答案 0 :(得分:0)

如何创建一个实现帐号为三个字段的类,它的toString会产生组合?然后,根据前面的实例,很容易做到增量。

public class AccountNumber{
     public final int planCode;
     public final int year;
     public final int sequenceNumber;

     ...

     public static AccountNumber getNextSequenceNumber(AccountNumber previous)...
}

答案 1 :(得分:0)

查看this

您需要手动设置planCode和year,让hibernate使用内置生成器生成sequenceNumber。

我还没有测试过