针对这类问题最直接有效的办法就是在数据库端定义字段自动增长,因为不管多少个用户,对数据库来说只是一个更新数据库的命令队列。但数据库主键自增长默认生成的均为固定步长的连续数值,如果要创建 UUID 主键的话,可能需要通过触发器实现。
如果选对了报表工具,我们就可以不依赖数据库,在报表端轻松生成 UUID 标识。
大致实现步骤:
1. 在报表展现的 jsp 页面中定义 UUID 方法如下:
function newUUID(){var uuid = "";for (var i = 1; i <= 16; i++){var n = Math.floor(Math.random()*16.0).toString(16);uuid += n;}var len = uuid.length;return uuid; }
function newUUID() { var uuid = ""; for (var i = 1; i <= 16; i++){ var n = Math.floor(Math.random()*16.0).toString(16); uuid += n; } var len = uuid.length; return uuid; }
注:UUID 方法不会写也没关系,网上有很多,可以直接复用。
2. 在报表中直接调用该方法即可。
具体可参考:行式填报表轻松搞定流水号