在JAVA开发中,对数据库进行数据操作时,尤其是插入数据时,在很多场景中会遇到返回主键这个问题。而一般情况下,我们会设计数据表的主键为自增,对于支持返回主键的数据库来说,我们想要获取返回的主键只需要设置一下属性即可,但是对于那些不支持返回主键的数据库,这是一个很头疼的问题,也是我在工作中经常遇到的一个问题。今天我们就来简单的学习一下如何有效的解决这个问题。
JDK的工具类包util包中就为我们提供了一个很好的工具类,即UUID。UUID(Universally Unique Identifier)通用唯一识别码,是一种随机生成的唯一字符串标识,在我们对数据表进行数据插入时,利用JDK提供的工具类生成UUID,然后赋值给主键字段,当插入完数据想要获取这个主键值的时候就可以直接利用之前生成的UUID啦!
生成UUID的Java代码:
public static void main(String[] args) {
String uuid = UUID.randomUUID().toString();
System.out.print(uuid);
}
生成的UUID字符串:
UUID:e306abef-6fa8-49b6-8b3e-83990d21d15c
可以利用String类的replace方法将中间的“-”替换为“”:
public static void main(String[] args) {
String uuid = UUID.randomUUID().toString().replace("-", "");
System.out.print("UUID:"+uuid);
}
替换后的UUID字符串:
UUID:1d7a1664fa6c45baa4ce5eb5ff760de7
是不是So Easy 呀!再也不用为返回主键而烦恼了!暂时还没有遇到更复杂的情况,继续踩坑去咯!