使用Model类进行数据库表映射

时间:2014-12-05 07:37:42

标签: hibernate spring-mvc

我正在开发一个Web应用程序,其中每种用户类型有5种类型的用户和5种数据库表,每个表都有一列'用户名'和密码'。在我的登录页面中,我的用户名和密码字段不是用户类型字段。

我有一个模型类,其属性名称为username和password。我的问题是我应该创建5个模型类来映射具有相同属性的5个表吗?我不认为这是个好主意!! 那么我应该如何创建一个只使用一个模型类的登录类,我可以映射所有5个用户表并授予login.I我正在使用hibernate 3和Spring MVC 3.任何想法都将受到赞赏!感谢名单

2 个答案:

答案 0 :(得分:0)

您可以使用继承。 user_type可以是您的鉴别器列。

如果表格具有相似的列结构,则应使用SINGLE TABLE inheritance。否则请使用JOINED table inheritance

答案 1 :(得分:0)

您可以拥有将实现UserDetails接口的抽象类User,从该类继承其他类。在该类上使用@MappedSuperclass,在其他类上使用@Entity