关于Servlet和JSP

时间:2013-09-08 09:21:37

标签: java jsp servlets

我正在练习Servlet和JSP,并且遇到了一个场景

这是我的html页面代码。

<!DOCTYPE html>
<html>
<head>
  <meta charset="ISO-8859-1">
  <title>Home</title>
</head>
<body>
    <form action="Second.jsp" method="post">
        <p>Name:<input type="text" name="name"/>
        <p>Employee Id:<input type="text" name="empId" />
        <p><input type="submit" value="Enter" />
    </form>
</body>
</html>

JSP代码

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"   
<html>
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  <title>Insert title here</title>
</head>
<body>    
    <jsp:useBean id="person" class="com.Person" scope="request">
        <jsp:setProperty name="person" property="name" />
    </jsp:useBean>
    <jsp:getProperty property="name" name="person"/>
</body>
</html>

Person.java

package com;

public class Person {
    private String name;
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
}

我的请求直接转到jsp,表单元素名称和bean属性名称匹配,因此在jsp中不需要tp set value:setProperty

但是getProperty显示为null。

2 个答案:

答案 0 :(得分:0)

在第二页内,只需使用:

${param.name}${param.empId}

答案 1 :(得分:0)

您错过了param属性。

<jsp:useBean id="person" class="com.Person" scope="request">
    <jsp:setProperty name="person" property="name" param="name" />
</jsp:useBean>