JSP显示用户详细信息根本不起作用

时间:2017-03-19 23:53:04

标签: java jsp jdbc

        <!--
To change this template, choose Tools | Templates
and open the template in the editor.
-->
<!DOCTYPE html>
<html>

    <head>
        <title>Mail Registration</title>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <link rel="stylesheet" href="newcss.css">
        <link rel="text/javascript" href="validateForm.js">

    </head>
    <body>


        <div id="container">
            <div id="header">
                <h1>Online Book Store Mailing Registration</h1>
            </div>

            <div id="content">
                <div id ="leftSide">
                    <p>Welcome to the Online Book Store Registration.
                    In order to join our mailing list you must complete the form. Then press the Submit button.</p>

                </div>
                <div id="rightSide">
                <h2>Thanks for joining our email list</h2>
                <h3>Here is the information that you entered:</h3>
                 <%@ page import="user.User" %>
                <% User user = (User) request.getAttribute("User");%>

        <table cellspacing="5" cellpadding="5" border="1">
            <tr>
                <th align="right">First Name:</th>
                <th>${user.getFirstName}</th>
            </tr>
            <tr>
                <th align="right">Last Name:</th>
                <th>${user.getLastName}</th>
            </tr>
            <tr>
                <th align="right">Town:</th>
                <th>${user.getTown}</th>
            </tr>
            <tr>
                <th align="right">Country:</th>
                <th>${user.getCountry}</th>
            </tr>
            <tr>
                <th align="right">Email Address:</th>
                <th>${user.getEmailAddress}</th>
            </tr>
        </table>

                </form>
                <br />
                </div>
            </div>

            <div id="footer">
                <h2>xxx</h2>



         </div>
         </div>
        </body>
       </html>

这是我第一次使用JSP,我必须显示已添加到数据库的用户详细信息。我一直在寻找一些时间在这里询问有关显示细节的其他问题,我还没有找到答案。 我在用户包中有一个名为User.java的java类。 如果有人能指出我哪里出错了,我会很感激。

我的servlet中有这个

 String firstName = request.getParameter("firstName");
String lastName = request.getParameter("lastName");
String town = request.getParameter("town");
String country = request.getParameter("country");
String emailAddress = request.getParameter("emailAddress");

// create the User object
User User = new User();
User.setFirstName(firstName);
User.setLastName(lastName);
User.setTown(town);
User.setCountry(country);
User.setEmailAddress(emailAddress);   
MailDB.insert(User);
request.setAttribute("User", User);
String url = "/return_user_details.jsp";
RequestDispatcher dispatcher =     getServletContext().getRequestDispatcher(url);
    dispatcher.forward(request, response);

1 个答案:

答案 0 :(得分:2)

我认为您的User类是这样的:

Class User {
   private String firstName;
   private String lastName;
   private String country;
        .
        .
        .
   /*generating getters & setters*/
   public String getFirstName(){
       return firstName;
   }

   public void setFirstName(String firstName){
       this.firstName = firstName;
   }

}

所以您遇到的问题就在${user.getFirstName},除非您的属性名为getFirstName我不会认为您这样做是为了解决这个问题必须:

<强>替换 带有${user.getFirstName}的{​​{1}},通常使用属性名称,而不是getters和setters方法名称。