我正在学习 java ee 6。我的目标是拥有一个简单的 crud 应用程序,它让我可以创建编辑列表并删除一个由 id、名称字符串和描述字符串组成的琐碎实体。我跟着这个只是为了查看一些代码http://netbeans.org/kb/docs/web/jsf20-crud.html我使用 eclipse 而不是 netbeans 和 jboss 7 而不是 glass fish。嗯....它的工作原理。
现在认为我的实体是“用户”:id、用户名、密码。我想添加一个“UserRole”实体,这里是:id、rolename。然后我设置了 OneToMany 和 ManyToOne 关系。
那么,如何管理创建用户页面中的角色输入呢?Netbeans crud 建议代码是一个 selectonemenu(选择下拉列表),其中所有角色 id 作为值。在表单上提交角色控制器(jsf 托管 bean)中的静态内部类“roleconverter”(一个 facesconverter)获取选择和提交的角色 ID 字符串,并使用 ejb-dao 查找相应的角色。
我的问题是:
- 我明白了吗?我上面写的对吗?
- 以这种方式使用转换器是最佳实践吗?对于这样一个简单且经常性的任务,难道没有更好的解决方案吗?
- 除了实体名称之外,实体的转换器都是相同的,如何删除重复项,例如使用通用转换器?
- 您认为在 jsf 2 中管理多对多的最佳 GUI 是什么?(例如具有多个角色的用户场景)