Java EE6的新手,我正在尝试设置JDBCRealm。许多示例建议在SQL中手动创建用于保存用户/组信息的表。
是否有更标准的“JPA”方式呢? Glassfish所期望的表格不适合您最终使用的表格结构,例如OneToMany映射(这是我希望我可以使用的)。
我读过Glassfish仍然使用JDBC来完成JDBCRealm,这可以解释原因。我发现这个博客提出了一种使用JPA的方法。
http://www.codeproject.com/Articles/238779/J2EE-JDBC-based-authentication-with-JPA-Entities-i
但是有没有'官方'方式与JPA一起做?我想确保遵循最佳实践以确保我有一个安全的应用程序。
由于
答案 0 :(得分:5)
几个月前,我想用glassfish创建我的JDBC领域,我也有很多疑问。我将尝试用或多或少地解释你如何使用JPA。
许多示例建议制作包含用户/组的表 SQL中的手工信息
我不同意,如果您将JPA用于与持久性相关的其他任务,为什么在关于安全性时会出现异常。所以JPA是个好主意。在数据库控制台中复制/粘贴一大块SQL很容易,但如果您有部署应用程序时将自动为您创建这些表的实体,则会更好。
您所关注的教程很好,我认为没有这样的思考作为最佳实践。
我会给你一些资源,我认为这些资源可以帮助你创建JDBC领域。 也许你对一些更简单的东西感兴趣,只是为了热身,在这种情况下看一下这篇文章:
http://javing.blogspot.in/2012/05/here-in-this-video-you-can-see-how-i.html
它谈到了玻璃鱼中基于ROLE的安全性,我认为它可以给你一些提示。
如果您想知道如何使用JPA创建JDBC领域,请按照我之前提出的问题,最后您将找到解决方案:
Glassfish 3 security - Form based authentication using a JDBC Realm
如果您粘贴一些代码,我们可以帮助您在遇到困难时给您带来麻烦。