我有一个可以创建 bean 的类,并且该 bean 很少有 get 和 set 方法(例如 setId 和 getId,现在我将这个 java 文件包含在 jsp 页面中,现在我的问题是如何转发 bean 返回的值到jsp文件?
请帮忙。
只需将 bean 放在您需要它可用的范围内。例如,如果它是User
需要在会话范围内的类:
request.getSession().setAttribute("user", user);
这样,user
实例就可以通过 EL 中的属性名称"user"
获得,如下所示${user}
。然后,要通过 getter 方法访问其属性,只需.
在 EL 中使用句点运算符,您可以在其中指定属性名称。
${user.id}
${user.firstname}
${user.lastname}
...
无需将所有属性单独放在请求范围内。
这应该是您的 servlet 中的内容:
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>
========================================
或使用旧样式: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() %>
========================================
通常很少使用第二部分。现在大多数人都使用 EL。但我只是把它包括在内,以涵盖所有内容