在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 呀!再也不用為返回主鍵而煩惱了!暫時還沒有遇到更復雜的情況,繼續踩坑去咯!