2014-04-08 53 views
0

我想將我的JSP servlets連接到一個posgress數據庫,並且我正在使用一個正在扮演中間人角色的java bean類。我使用註冊表單成功地將用戶信息存儲到數據庫中時遇到了一些困難。如果您願意幫助我,我會很感激。在jsp servlet中實現一個java bean

非常感謝。

JSP的servlet:

<%@page contentType="text/html" pageEncoding="UTF-8"%> 
<head> 
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
    <title>Register here</title> 
</head> 
<body> 
    <form method="post" action="registration.jsp"> 
     <center> 
     <table border="1" width="30%" cellpadding="5"> 
      <thead> 
       <tr> 
        <th colspan="2">Enter Information Here</th> 
       </tr> 
      </thead> 
      <tbody> 
       <tr> 
        <td>First Name</td> 
        <td><input type="text" name="fname" value="" /></td> 
       </tr> 
       <tr> 
        <td>Last Name</td> 
        <td><input type="text" name="lname" value="" /></td> 
       </tr> 
       <tr> 
        <td>Email</td> 
        <td><input type="text" name="email" value="" /></td> 
       </tr> 
       <tr> 
        <td>User Name</td> 
        <td><input type="text" name="uname" value="" /></td> 
       </tr> 
       <tr> 
        <td>Password</td> 
        <td><input type="password" name="pass" value="" /></td> 
       </tr> 
       <tr> 
        <td>Current Country</td> 
        <td><input type="text" name="country" value="" /></td> 
       </tr> 
       <tr> 
        <td>Current City</td> 
        <td><input type="text" name="city" value="" /></td> 
       </tr> 
       <tr> 
        <td><input type="submit" value="Submit" /></td> 
        <td><input type="reset" value="Reset" /></td> 
       </tr> 
       <tr> 
        <td colspan="2">Already have an account? <a href="index.jsp">Login Here</a></td> 
       </tr> 
      </tbody> 
     </table> 
     </center> 
    </form> 
</body> 

的Java Bean中,我使用:

public class UserBean { 

    private int id; 
    private String username; 
    private String password; 
    private String email; 
    private String firstName; 
    private String lastName; 
    private String endDate; 
    private boolean validated; 

    public UserBean() { 
     // Empty constructor 
    } 

    public int getId() { 
     return id; 
    } 

    public String getUsername() { 
     return username; 
    } 

    public String getPassword() { 
     return password; 
    } 

    public String getEmail() { 
     return email; 
    } 

    public String getFirstName() { 
     return firstName; 
    } 

    public String getLastName() { 
     return lastName; 
    } 

    public String getEndDate() { 
     return endDate; 
    } 

    public boolean isValidated() { 
     return validated; 
    } 

    public void setId(int id) { 
     this.id = id; 
    } 

    public void setUsername(String username) { 
     this.username = username; 
    } 

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

    public void setEmail(String email) { 
     this.email = email; 
    } 

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

    public void setLastName(String lastName) { 
     this.lastName = lastName; 
    } 

    public void setEndDate(String endDate) { 
     this.endDate = endDate; 
    } 

    public void setValidated(boolean validated) { 
     this.validated = validated; 
    } 
} 
+0

我也有一個主要的java類,用於我使用的所有bean,它們都存儲在「WEB-INF/classes」下的包中。 – user3353094

+0

幫助你做什麼?你說你的問題是將數據保存到數據庫,但是你沒有說出問題所在,也沒有說明你如何保存數據。 –

回答

1

你的POJO的JavaBean不會奇蹟般地獲得與數據填充。它沒有與數據庫的連接,也無法獲取或保存數據。

您需要一個控制器從數據庫中獲取數據,創建模型對象並使用數據填充它們。控制器還負責保存bean

你可以自己寫這個,但通常使用像JPA2這樣的現有ORM框架,像Hibernate這樣的自定義持久性提供者API或MyBatis之類的東西通常會更好。如果你真的想要的話,你可以用直接的JDBC調用來手動控制你的控制器,從環境中注入連接,但是這往往會產生大量的樣板代碼,即使像Spring JDBC這樣的東西可以幫助你平滑一些事情。

有些IDE,比如NetBeans和Eclipse,甚至可以爲你自動生成模型和控制器,儘管我從來沒有對結果感到滿意(特別是未能使用父類和泛型方法,任何有用的錯誤處理)。