也可把id放到文件里,每次使用的时候id加1

解决方案 »

  1.   

    参考书ejb patterns的主建生成策略
      

  2.   

    ....如果是实体BEAN的话 可以用主键类啊 对应关系数据库中单个表的主键 该值是唯一的
    也可以写个实现单例的普通JAVA对象啊 用会话BEAN来调用该对象的getInstance方法产生该类唯一实例
    我是菜鸟  不知道我说的可行不
      

  3.   

    在数据库中建一个表auto_key
    写一个存储过程:
    -- for ms sql server ------------------------------
    CREATE PROCEDURE getNextKey
    @ret int output
    ASbegin transaction
    declare @id int
    select @id=key_id from auto_key
    update auto_key set key_id=@id+10 set @ret = @id+10
    commit transaction
    ---------------------------------------------------------然后用KeyUtil类封装:
    public int getNextKey() throws CreateException {
       // ... 调用存储过程
       if got the key ...
         return id;
       throw new CreateException();
    }注意返回的是id - id+9 这10个序列号由于存储过程使用了事务,可保证线程安全