Java jsp:useBean不';无法从bean对象获取属性值
我正在尝试使用标准操作从jsp内的bean对象获取属性值,初始html表单转到servlet,servlet在所需属性内设置值,在请求对象内设置属性,然后将其转发到jsp页面,jsp使用标准操作从属性获取值,但返回null!: bean对象:Java jsp:useBean不';无法从bean对象获取属性值,java,jsp,servlets,Java,Jsp,Servlets,我正在尝试使用标准操作从jsp内的bean对象获取属性值,初始html表单转到servlet,servlet在所需属性内设置值,在请求对象内设置属性,然后将其转发到jsp页面,jsp使用标准操作从属性获取值,但返回null!: bean对象: public class dog { private String bread; public String getBread() { return bread; } public void setBread(String bread) {
public class dog {
private String bread;
public String getBread() {
return bread;
}
public void setBread(String bread) {
this.bread = bread;
}
}
servlet:
dog d=new dog();
d.setBread("Kizer");
request.setAttribute("bread", d);
RequestDispatcher view=request.getRequestDispatcher("index.jsp");
view.forward(request, response);
JSP(索引):
由servlet创建的人员:
为什么返回null?在JSP使用中
<jsp:useBean id="bread" class="com.example.model.dog" scope="request" />
<jsp:getProperty name="bread" property="bread" />
使用bean id属性与bean对象相同。尝试在JSP中使用${bread.bread}。我想使用标准操作检索值!当使用servlet作为MVC控制器时,
绝对不是“标准操作”。完全删除它,只需使用${bread.bread}
。顺便说一句,它是拼写的,不是。解释:它返回了null
,因为您创建了一个名为person
的全新dog实例,而不是重用名为bread
的servlet设置的实例。因此,您需要修复id
,使其指向servlet设置的相同名称。
<jsp:useBean id="bread" class="com.example.model.dog" scope="request" />
<jsp:getProperty name="bread" property="bread" />