我在阅读一篇关于如何在Hibernate和MySql中使用UUID的博客时发现一个问题。现在的问题是,每当我查看数据库时,ID都将以不可读的格式(二进制-16)显示。如何将UUID存储为可读格式,例如7feb24af-fc38-44de-bc38-04defc3804fe
而非¡7ôáßEN¹º}ÅÑs
。
我正在使用以下代码:
@Id
@GeneratedValue( generator = "uuid2" )
@GenericGenerator( name = "uuid2", strategy = "uuid2" )
@Column( name = "id", columnDefinition = "BINARY(16)" )
private UUID id;
结果是 ¡7ôáßEN¹º}ÅÑs。但我想要一个可读的UUID,所以我使用了以下代码,但没有帮助我
@Id
@GeneratedValue( generator = "uuid2" )
@GenericGenerator( name = "uuid2", strategy = "uuid2" )
@Column( name = "id", columnDefinition = "CHAR(32)" )
private UUID id;
如何将 UUID 保存为字符串而不改变 Java 类型 UUID 的类型为二进制(16)?
BIN_TO_UUID(id)
即可。 - RealSkepticBIN_TO_UUID(id)
只能在 MySQL 8.0 中使用 @RealSkeptic - Raymond Nijland