将 UUID 与 RESTful URL 标准一起使用的最佳做法是什么:/collection/{Id}?

What is the best practice to use UUID with RESTful URL standards: /collection/{Id}?

有些文章声称在使用 JPA 时要避免等号(以及哈希码)问题,在使用生成的 Id 时需要使用 UUID,例如:

@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private UUID id;

由于 RESTful 服务和 Spring 数据(因此 @Entity -ies)紧密耦合,合理的问题是: 使用此类资源的最佳做法是什么 URL:RESTful 服务标准在 URL 中声明 {Id}-s 但 UUID 在 URL 中很难看到它秒。 那么解决它的最佳实践是什么? (或者可能是我错了,像这样的数字没有什么不好的:b5607d38-8fc1-43ef-b44e-34967083c80a 在 URLs?)

there is nothing bad in numbers like:b5607d38-8fc1-43ef-b44e-34967083c80a at URLs

这个;在 URL.

中包含 UUID 没有错

URI/URL 规则由 RFC 3986 定义。字母、数字和 - 都是“非保留”字符,这意味着它们可以在 URI 中的任何地方使用。

在 REST 中,标识符是不透明的。不希望客户端和通用组件从标识符本身提取任何语义信息。这使服务器可以自由地将其需要的任何信息编码到自己的标识符中。

/b5607d38-8fc1-43ef-b44e-34967083c80a

是资源的完美标识符。