Составной первичный ключ, каков наилучший способ идентифицировать этот ресурс с помощью REST? - PullRequest
0 голосов
/ 12 января 2020

У меня есть субъект ProjectEmployee, представляющий троичную ассоциацию. Состав двух его полей Employee и Project должен быть уникальным:

@Entity
@Data
@IdClass(ProjectEmployeeId.class)
public class ProjectEmployee {

  @Id
  @ManyToOne
  private Project project;

  @Id
  @ManyToOne
  private Employee employee;

  @ManyToOne
  private ProjectEmployeeRole projectEmployeeRole;
}

Я использую REST, и я хотел бы идентифицировать каждый ресурс с уникальным идентификатором. Я не могу сделать это для ProjectEmployee, потому что у этой сущности нет одного уникального идентификатора. Какое лучшее решение для этого? Всегда ли мне нужно отправлять два параметра для идентификации этого ресурса, как этот?

GET:

../projectemployees/{proejctId}/{employeeId}

Это идентифицирует ресурс, но есть ли способ сделать это только с одним идентификатором вместо двух?

1 Ответ

0 голосов
/ 12 января 2020

«REST» не заботится о том, что вы используете в качестве идентификатора, если он соответствует производственным правилам, описанным в RF C 3986.

/cee03013-7761-465f-a71c-791450c8e785

Совершенно удовлетворительный URI.

Любая информация, закодированная в URI, выполняется сервером происхождения по своему усмотрению.

Любое написание, которое позволяет вам, серверу, правильно связать запрос с предполагаемым ресурсом и его представлениями, отлично .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...