我将UUID存储为主密钥。
@GeneratedValue(generator = "UUID_GENERATOR")
@GenericGenerator(name = "UUID_GENERATOR", strategy = "uuid2")
@Column(name = "store_id")
private UUID storeId;这方面的问题是在sql_server中,UUID存储的顺序与我从JSON输出中得到的不同。
JSON输出
"storeId": "3854fe95-e6b6-4319-9d9a-bfe67c9a07d6",数据库
storeID: "95FE5438-B6E6-1943-9D9A-BFE67C9A07D6"最初的8-4-4位数字以不同的顺序存储,而最后的4-12位数是相同的。造成这一问题的原因是什么,如何解决这个问题?
发布于 2018-11-11 05:51:52
不同之处在于,微软喜欢将前半部分存储为小endian,这有点奇怪,因为它们总是将后半段存储为大端。其他每个人都将整个东西存储为大端,这使得事情变得更简单和更便携。
发布于 2018-12-13 11:25:13
您可能在使用Hibernate,那么这段代码应该可以工作:
@Id
@GeneratedValue
@Type(type = "uuid-char")
@Column(columnDefinition="uniqueidentifier")
protected UUID id;https://stackoverflow.com/questions/53197070
复制相似问题