hibernate自動生成uuid策略下手動指定id
最近項目需要進行數據遷移 , 原有系統的數據需要原樣遷移至新系統.
新系統使用的是註解配置的hibernate,主鍵id是自動生成的uuid.
於是問題來了 , 原數據的id不可以set進一個新new出來的對象 , 再update , 這樣做會報錯 .
網上大多說的是把策略改成手動設置ip , 可是這樣又不符合系統以後的使用需求 , 苦思冥想 , 突然想到了簡單的解決辦法 .
解決辦法就是使用sql語句..
String sql = "insert into t_payment_item(id) values('" + id + "')";
factory.getCurrentSession().createSQLQuery(sql).executeUpdate();
這樣一來 , 就成功插入數據庫中一條記錄 , 只有id字段有值 .