У меня есть объект Role, в котором есть набор Rolenames, я хочу проверить, есть ли у пользователя определенная роль.Скажите, как лучше сделать это, чтобы быть красивым и лаконичным.
Role.java
@Table(name = "roles")
public class Role {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
@Enumerated(EnumType.STRING)
@NaturalId
@Column(length = 60)
private RoleName name;
RoleName.java:
public enum RoleName {
ROLE_ADMIN,
ROLE_MANAGER,
ROLE_CLIENT,
ROLE_USER,
}
Теперь мой поиск выглядит так:
boolean isFind = false;
for (Role role : user.getRoles()) {
isFind = role.getName().equals(RoleName.ROLE_CLIENT);
if (isFind) break;
}
Но мне не очень нравится этот путь.Можете ли вы предложить лучший вариант?