java生成表序列号

 /**
* @Title: getSequenceNumber 
* @Description: TODO(获取表的id自增序列) 
* @param tableNameStr
* @return
* @author XXX, 2018年1月8日 下午4:33:56
*/
public static int getSequenceNumber(String tableNameStr) {
@SuppressWarnings("resource")
ApplicationContext ac=new ClassPathXmlApplicationContext("applicationContext.xml");
SequenceTableService seq = (SequenceTableService) ac.getBean("sequenceTableService");
SequenceTable sequenceTable = null;
sequenceTable = seq.getSequenceTable("SEQUENCE_TABLE");
int i = 1;
if(sequenceTable != null) {
String sequenceNunber = sequenceTable.getSequenceNunber();
i = Integer.parseInt(sequenceNunber);
}else {
sequenceTable = new SequenceTable();
sequenceTable.setId(i + "");
sequenceTable.setTableName("SEQUENCE_TABLE");
sequenceTable.setSequenceNunber(i + "");
seq.addSequenceTable(sequenceTable);
}
sequenceTable = null;
sequenceTable = seq.getSequenceTable(tableNameStr);
int j = 1;
if(sequenceTable != null) {
String sequenceNunber = sequenceTable.getSequenceNunber();
j = Integer.parseInt(sequenceNunber) + 1;
sequenceTable.setTableName(tableNameStr);
sequenceTable.setSequenceNunber(j + "");
seq.updateSequenceTable(sequenceTable);
}else {
sequenceTable = new SequenceTable();
sequenceTable.setId((i + 1) + "");
sequenceTable.setTableName(tableNameStr);
sequenceTable.setSequenceNunber(j + "");
seq.addSequenceTable(sequenceTable);

sequenceTable.setTableName("SEQUENCE_TABLE");
sequenceTable.setSequenceNunber((i + 1) + "");
seq.updateSequenceTable(sequenceTable);
}
return j;

}

只需要把表名传进来就能获取某个表对应的序列号了。


序列号表:

drop table SEQUENCE_TABLE;
CREATE TABLE SEQUENCE_TABLE 
   (  
  ID VARCHAR2(50), 
  TABLE_NAME VARCHAR2(100),
  SEQUENCE_NUNBER VARCHAR2(100),
  CREATED_BY VARCHAR2(50), 
  CREATION_DATE TIMESTAMP (6), 
  LAST_UPDATED_BY VARCHAR2(50), 
  LAST_UPDATE_DATE TIMESTAMP (6), 
  LAST_UPDATE_LOGIN VARCHAR2(50)
   )  ;
  ALTER TABLE SEQUENCE_TABLE MODIFY (ID NOT NULL ENABLE);
   COMMENT ON COLUMN SEQUENCE_TABLE.ID IS '序列表id';
   COMMENT ON COLUMN SEQUENCE_TABLE.TABLE_NAME IS '序列的表名';
   COMMENT ON COLUMN SEQUENCE_TABLE.SEQUENCE_NUNBER IS '序列的编号';
   COMMENT ON COLUMN SEQUENCE_TABLE.CREATED_BY IS '创建人';
   COMMENT ON COLUMN SEQUENCE_TABLE.CREATION_DATE IS '创建时间';
   COMMENT ON COLUMN SEQUENCE_TABLE.LAST_UPDATED_BY IS '最后一次修改人';
   COMMENT ON COLUMN SEQUENCE_TABLE.LAST_UPDATE_DATE IS '最后一次修改时间';
   COMMENT ON COLUMN SEQUENCE_TABLE.LAST_UPDATE_LOGIN IS '系统登录人';
   COMMENT ON TABLE SEQUENCE_TABLE  IS '序列表';

源码下载

http://download.csdn.net/download/qq_30270931/10202554


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

w_iceh

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值