0

データベースにログインしようとしています。プロパティurl、ユーザー名、およびパスワードを持つBeanがあります。ログイン パラメータを含む HTML ページ (URL を含むコンボボックス、およびユーザー名とパスワードの入力テキスト フィールド); およびリクエストを処理する jsp。JSP を実行すると、Bean のすべてのプロパティが null のままになります。デバッガーで実行しましたが、すべて null であることがわかります。

関連する HTML は次のとおりです。

    <form method = "post" action = "DBLoginInitialization.jsp">
        JDBC URL
        <select name = "url" size = "1">
            <option>jdbc:mysql://localhost/javabook</option>
        </select><br /><br />
            Username <input name = "username" /><br /><br />
            Password <input name = "password" /><br /><br />
        <input type = "submit" name = "Submit" value = "Login" />
        <input type = "reset" value = "Reset" />
    </form>

これが私の豆の一部です:

    public class DBBean implements java.io.Serializable{
        private Connection connection = null;
        private String username;
        private String password;
        private String url;
        private String driver = "com.mysql.jdbc.Driver";

       /** Initialize Database */
       public void initializeDB() {
           try {
                Class.forName(driver);

                connection = DriverManager.getConnection(url, username, password);
           }
           catch (Exception ex) {
                ex.printStackTrace();
           }
       }
  }   

そしてJSP:

    <%@page import = "database.DBBean" %>
    <jsp:useBean id = "dbBeanId" scope = "session" 
                      class = "database.DBBean" ></jsp:useBean>
    <jsp:setProperty name = "dbBeanId" property = "*" />

    <body>

        <%-- Problem occurs here when trying to initialize database--%>
        <% dbBeanId.initializeDB(); %>

        <% if (dbBeanId.getConnection() == null) { %>
            Error: Login Failed. Try Again
        <% } 
           else { %>
                <jsp:forward page = "Table.jsp" />
        <% } %>

    </body>

initializeDB() を実行しようとすると、すべてのプロパティが null になる理由がわかりません。編集: すべてのゲッター メソッドとセッター メソッドが用意されています。

4

1 に答える 1

1

プロパティはありませんが、プライベート フィールドのみがあります。getter と setter を作成して、それらから Bean プロパティを作成してください!

于 2013-09-28T16:22:49.217 に答える