将用户角色存储到一个表字段或具有角色的单独表中



我想问你存储用户角色的最佳灵活方法是什么。我的想法是使用一个表字段来存储用户 ROLE:

https://github.com/rcbandit111/wiki/blob/master/src/main/java/org/engine/production/entity/Users.java#L53

例如,在我起诉的原始代码中,有一个单独的表来存储用户的角色:

https://github.com/murraco/spring-boot-jwt/blob/master/src/main/java/murraco/model/Role.java

这意味着我需要使用 JOIN 执行额外的 SQL 查询才能获取用户角色。根据您的经验,哪种方法更好 - 一个表用于角色和用户,还是 2 个带有 JOIN(和 2 个 SQL 插入查询(的表?

只要每个用户有一个角色,用户实体/表中的一个角色字段根本不是一个坏主意,去吧。

但是,如果一个用户可以有多个角色,而您有数百个用户,则必须为角色使用单独的表,然后映射它们(例如多对多关系(。

有关为多个用户使用多个角色的完整示例,请查看此示例。

最新更新