hibenate 자동 생 성 uid 정책 에서 수 동 으로 id 를 지정 합 니 다.
975 단어 데이터베이스 기술
최근 프로젝트 는 데이터 이전 이 필요 합 니 다. 기 존 시스템 의 데 이 터 는 그대로 새 시스템 으로 옮 겨 야 합 니 다. 새 시스템 은 주석 설정 의 hibenate 를 사용 합 니 다. 메 인 키 id 는 자동 으로 생 성 된 uid 입 니 다.
그래서 문제 가 생 겼 습 니 다. 원래 데이터 의 id 는 set 로 새로운 new 가 나 온 대상 에 들 어가 서 업데이트 할 수 없습니다. 이렇게 하면 오류 가 발생 할 수 있 습 니 다.
인터넷 에서 대부분 전략 을 수 동 으로 ip 를 설정 하 는 것 으로 바 꾸 었 다. 그러나 이렇게 하면 시스템 이후 의 사용 수요 에 부합 되 지 않 고 곰 곰 이 생각 하 다가 갑자기 간단 한 해결 방법 이 생각 났 다.
해결 방법 은 sql 문 구 를 사용 하 는 것 입 니 다.
String sql = "insert into t_payment_item(id) values('" + id + "')";
factory.getCurrentSession().createSQLQuery(sql).executeUpdate();
이렇게 되면 데이터베이스 에 기록 하 나 를 성공 적 으로 삽입 하고 id 필드 만 값 이 있 습 니 다.