java

关注公众号 jb51net

关闭
首页 > 软件编程 > java > java 全局唯一ID

java基于数据库实现全局唯一ID的示例

作者:Love is beautiful

本文主要介绍了java基于数据库实现全局唯一ID的示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

一、原理

  在数据库中建立ID序列表记录ID值,其中包含两个重要字段,一个是初始值,另一个是步幅。建立表如下:

二、建立sql函数

 其分别sql语句为:

currval函数

CREATE DEFINER=`root`@`localhost` FUNCTION `currval`(`keyname` varchar(50)) RETURNS int
BEGIN
   DECLARE v int;
	 SET v=0;
	 SELECT CURR_VAL INTO v from sequence WHERE SEQNAME=keyname;
	 RETURN v;
END

nextval函数

CREATE DEFINER=`root`@`localhost` FUNCTION `nextval`(seq VARCHAR(50)) RETURNS int
BEGIN
   UPDATE sequence SET CURR_VAL=CURR_VAL+INCREMENT_VAL WHERE SEQNAME=seq;
	 RETURN currval(seq);
END

三、xml中查询当前ID

select nextval(#{seq})

到此这篇关于java基于数据库实现全局唯一ID的示例的文章就介绍到这了,更多相关java 全局唯一ID内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文