java - JSP bean 值未更新

标签 java jsp javabeans

我这里有 2 个页面,在第一页中我接受输入,然后通过使用 java 类用户验证输入数据将其显示在第二页上。

输入表格

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>

<form action="/myweb/formbean.jsp" method="post">

Username : <input type="text" name="name" placeholder="name"><br>
Password : <input type="text" name="password" placeholder="password">

<input type="submit" value="OK">
</form>

</body>
</html>

显示表格

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>

<jsp:useBean id="id1" class="test.user" scope="session" ></jsp:useBean>

<jsp:setProperty property="*" name="id1" />

<h1> <jsp:getProperty property="name" name="id1"/> </h1>
<h1> <jsp:getProperty property="password" name="id1"/> </h1>
<h1> <jsp:getProperty property="message" name="id1"/> </h1>

<%= id1.validate() %>
</body>
</html>

JAVA用户类

public class user {

    private String name;
    private String password;
    private String message;

    public user() {

        validate();
    }

    public user(String name, String password) {

        this.name = name;
        this.password = password;
        validate();
    }

    public void setMessage(String message) {
        this.message = message;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    public String getMessage() {
        return message;
    }



    public void validate() {

        if (name == null) {
            message = "name cannot be null";

        } else if (password == null) {
            message = "passowrd cannot be null";

        }
        message="form validatuion ok";

    }

}

当我提交表单参数消息值时永远不会更新它总是显示消息“名称不能为空” 不确定我在这里做错了什么,请帮我弄清楚。

最佳答案

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>

<jsp:useBean id="id1" class="test.user" scope="session" ></jsp:useBean>

<jsp:setProperty property="*" name="id1" />

<h1> <jsp:getProperty property="name" name="id1"/> </h1>
<h1> <jsp:getProperty property="password" name="id1"/> </h1>
//==========================================
<%= id1.validate() %>
<h1> <jsp:getProperty property="message" name="id1"/> </h1>
//==========================================

</body>
</html>
//==============================================================
    public void validate() {

        if (name==null){message="name cannot be null";}
        else if(password==null) {message="passowrd cannot be null";}
        else{message="form validatuion ok";}
    }

关于java - JSP bean 值未更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32213537/

相关文章:

java - Java 中的 List<String> 错误

java - 我应该使用框架吗?

java - 保留提交的 JSP 表单数据

javascript - 不使用选择模型从网格获取单元格的值

Java Swing - JPanel 居中问题

Java 从文本文件中读取值

java - 只读微调器

java - JasperReports 访问属性 javabean

java.beans.Introspector getBeanInfo 不获取任何超接口(interface)的属性

java - JGoodies 绑定(bind)与 JSR 295