私はJava ee 6を学んでいます。私の目標は、編集リストを作成し、ID、名前文字列、および説明文字列だけで作成された1つの些細なエンティティを削除できる単純なcrudアプリケーションを作成することです。コードhttp://netbeans.org/kb/docs/web/jsf20-crud.htmlを見るためにこれをたどりました。netbeansの代わりにEclipseを使用し、グラスフィッシュの代わりにjboss 7を使用しました。うーん....それは動作します。
私のエンティティは「ユーザー」であると考えてください:ID、ユーザー名、パスワード。「UserRole」エンティティを追加したいのですが、これは id、rolename です。次に、OneToMany と ManyToOne の関係を設定します。
では、ユーザー作成ページでロール入力を管理するにはどうすればよいでしょうか? Netbeans crud が推奨するコードは、すべてのロール ID を値として持つ selectonemenu (選択ドロップダウン リスト) です。フォーム送信時に、ロール コントローラ (jsf マネージド Bean) の静的内部クラス「roleconverter」(facesconverter) が、選択および送信されたロール ID 文字列を取得し、ejb-dao を使用して対応するロールを検索します。
私の質問は次のとおりです。
- わかりますか?私が上に書いたことは正しいですか?
- その方法でコンバーターを使用するのはベスト プラクティスですか? このような単純で反復的なタスクに対して、より良い解決策はありませんか?
- エンティティのコンバーターはエンティティ名を除いてすべて同じですが、たとえば汎用コンバーターを使用して重複を削除するにはどうすればよいですか?
- jsf 2 で多対多を管理するのに最適な GUI は何だと思いますか? (例: 複数のロールを持つユーザーのシナリオ)