1

http://www.docjar.com/html/api/org/apache/catalina/realm/JDBCRealm.java.html

要使用这个 JDBCRealm,我们需要两个表,user 和 user_role。

user table - user_id, user_name, user_password
user_role table - user_id, role_id, user_name

当 user_id 作为外键存在时,为什么 user_role 表中需要 user_name。JDBCRealm 可以使用连接查询来提取角色或直接查询,如果它存储来自先前查询的 user_id。

4

1 回答 1

1

这是Tomcat 6JDBCRealm文档 。

user_id两个表中都不需要,也不需要role_id. users表应该有user_nameuser_password列;roles表应该有user_namerole_name列。表通过 链接user_name

这样做的原因(字符串而不是数字 ids)是因为Principal将 name 作为 aString并且isUserInRole()call 也采用角色名称String

于 2009-07-31T07:20:39.237 回答