Using org.hibernate.id.UUIDHexGenerator which does not generate IETF RFC 4122 compliant UUID values;
Posted Archibald Witwicky
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Using org.hibernate.id.UUIDHexGenerator which does not generate IETF RFC 4122 compliant UUID values;相关的知识,希望对你有一定的参考价值。
项目部署,启动过程中有以下警告:
[WARN]: Using org.hibernate.id.UUIDHexGenerator which does not generate IETF RFC 4122 compliant UUID values; consider using org.hibernate.id.UUIDGenerator instead
查看项目中用户类的主键生成策略:
- @GenericGenerator(name = "system-uuid", strategy = "uuid.hex")
- @Id
- @GeneratedValue(generator = "system-uuid")
- @Column(name = "user_id")
- public String getUserId() {
- return userId ;
- }
经查询,Hibernate 3.6开始,如果有model的主键有uuid生成,就会报这个错误,采用最新的生成策略,改成下面的就会正常
- @Id
- @Column(length = 32, nullable = false)
- @GeneratedValue(generator = "uuid2" ) //指定生成器名称
- @GenericGenerator(name = "uuid2", strategy = "org.hibernate.id.UUIDGenerator" ) //生成器名称,uuid生成类
XML配置:
原来的:
- <id name="id" type="string">
- <column name="ID" length="32" />
- <generator class="uuid" />
- </id>
现在改变后的:
- <id name="id" type="string">
- <column name="ID" length="36" />
- <generator class="uuid2" />
- </id>
以上是关于Using org.hibernate.id.UUIDHexGenerator which does not generate IETF RFC 4122 compliant UUID values;的主要内容,如果未能解决你的问题,请参考以下文章
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespac
vs2013c#测试using System; using System.Collections.Generic; using System.Linq; using System.Text; usin