jspでユーザーセッションを管理する場合、session.setAttribute()を使用してvarialbleを設定することによってセッションを使用することがあります。その一方で、Java Beanオブジェクトを作成できます)を使用してユーザー情報を保存し、別のページで検索することができます。誰が私にこれら2つの事の違いは何かを教えてもらえますか?jspのセッション管理のためのJava Beanとセッションの違い
答えて
これは、同じデータを渡す方法がわずかに異なります。
あなたが言うように、あなたはどちらかの可能性:次に
(1)
session.setAttribute("entry", entry);
または(2)
session.setAttribute("name", entry.getName());
session.setAttribute("address", entry.getAddress());
session.setAttrubute("phone", entry.getPhone());
(1)、JSPが含まれる場合がありますのために:
をName: ${entry.name}<br/>
Address: ${entry.address}<br/>
Phone: ${entry.phone}<br/>
(2)については、同等物JSPは次のようになります。
Name: ${sessionScope['name']}<br/>
Address: ${sessionScope['address']}<br/>
Phone: ${sessionScope['phone']}<br/>
(または、あなたは上記のコードは少し読みやすくするために、いくつかのローカル変数を設定するために<c:set>
を使用する場合があります)。
本質的に、どちらも同じですが、(1)コードを少なくして読みやすく理解しやすくなります。
(私はまだだけどJava EEのは自分自身を初心者に、私はより多くのベテランの意見を気にしないだろう!)
多数の相違点があります。
まず、何かを属性として格納するとObjectとして格納されるため、実際に取得したときにそれをキャストする必要があります。Beanは常にそのクラスです。
第2に、Beanを使用しているときに、作成されたかどうかを心配する必要はありません。 jsp:useBeanタグは、既に作成されている場合はそのBeanにアクセスし、Beanがない場合は作成します。したがって、関数を呼び出したり、getメソッドを使用したりする場合は、Beanを使用するときに存在することが保証されます。セッション変数に格納することを計画していますが、格納する前にアクセスしようとすると、nullが返され、関数を呼び出すといくつかの問題が発生します。
通常、セッション変数を使用して情報を渡しますが、Beanを使用して呼び出したい機能を持つクラスを渡します。
したがって、比較的単純なデータ(例:文字列)を渡すことを計画している場合は、それをセッション変数に投げることに何も問題はありません。あなたの比較では注意してください(例:string_var.equals(()session.getAttribute( "attribute_name"))not((String)session.getAttribute( "attribute_name"))。equals(string_var )は、null.equals()が定義されていない場合があります)。
MVCフレームワークでプログラミングしている場合は、一般的にBeanを使用してセッション変数(または状況に応じて変数)に書き込むと、JSPページから情報がロードされますセッション変数これは(他のものの中でも)ウェブページをリフレッシュセーフにします(つまり、リフレッシュボタンを押すと、すべてのコードを再度実行してセッション変数から情報をリロードするのではなく、セッション変数から情報を取得するだけです)。情報を追加したり、増分したり、減分したりするときには大したことです。
確かに、私はJSPには比較的新しいですが、それが私の状況の理解です。
- 1. マネージドBeanとセッションBeanの違い
- 2. セッション管理のためのC++ライブラリ?
- 3. Java RMIとHibernate:セッションとトランザクションの管理
- 4. ジャージーのセキュリティとセッション管理
- 5. スケーラブルhttpセッション管理(java、linux)
- 6. のYiiセッション管理
- 7. Java - トークンの管理 - Struts - severalsセッション
- 8. のTomcat /春のセッション管理
- 9. アンドロイドのUIのセッション管理
- 10. asp.netセッション管理
- 11. Tipfyセッション管理
- 12. セッション管理
- 13. MVC管理セッション
- 14. Springセッション管理
- 15. NHibernateセッション管理?
- 16. Axis2セッション管理
- 17. C#セッション管理
- 18. Androidセッション管理
- 19. CURLセッション管理
- 20. セッションのために管理パネルが動作しない
- 21. TWebModuleでのセッション管理
- 22. Apache JMeterのセッション/クッキー管理
- 23. Rubyのレール - セッション管理
- 24. セッション管理の問題
- 25. rmiアプリケーションのセッション管理
- 26. のQt:セッション管理エラー
- 27. Facebookアプリケーションのセッション管理
- 28. ASP .NETでのセッション管理
- 29. Liferayでのセッション管理
- 30. Rails(2.3)のセッション管理