Beanを作成するクラスがあり、Beanにはgetメソッドとsetメソッドがほとんどありません(たとえば、setId、getId、このjavaファイルをjspページに含めるようになりました。私の質問は、Beanによって返される値を転送する方法です。 jspファイルに?
親切に助けてください。
Bean を使用可能にするために必要な範囲に入れるだけです。たとえばUser
、セッション スコープ内にある必要があるクラスの場合:
request.getSession().setAttribute("user", user);
このようにして、次のように ELuser
の属性名でインスタンスを使用できます。次に、getter メソッドによって行われるようにそのプロパティにアクセスするには、プロパティ名を指定する EL でピリオド演算子を使用します。"user"
${user}
.
${user.id}
${user.firstname}
${user.lastname}
...
すべての属性を個別にリクエスト スコープに入れる必要はありません。
これは、サーブレットにあるものである必要があります。
MyBean bean = new MyBean(); //This should be your bean
Object o1 = bean.getObject1(); //Please don't use Object, use the correct type
Object o2 = bean.getObject2();
request.setAttribute("name",o1); //name can be anything you want
request.setAttribute("test",o2);
//forward to JSP
=======================================
jspでは、ELを使用できます。
<!-- This is the firstObject -->
<p>${name}</p>
<!-- This is the second Object -->
<b>${test}</b>
=======================================
または、use:Beanを使用した古いスタイル:
<!-- This is the first Object, use the correct type in class -->
<jsp:useBean id="name" scope="request" class="java.lang.Object" />
これで、Beanのプロパティにアクセスできます。
<jsp:getProperty name="name" property="firstName"/>
また:
<%= name.getFirstName() %>
=======================================
通常、2番目の部分が使用されることは非常にまれです。最近はほとんどの人がELを使っています。しかし、すべてをカバーするために、私はそれを含めました