2011-11-03 12 views
0

Webページアプリケーションのタスクを実行する必要があります。クライアントのセッションID(またはその他のもの)を使用して を照会してクライアントの情報を表示するページが必要です。メソッド)を実行し、mySQLクエリを自分のメンバーシップデータベースに追加します。mysqlからユーザ情報を照会して表示するWebアプリケーションサーブレット

次のように順序は次のようになります。 1.クライアントログを 2に試合は、クライアントが一部のページこれらのアクセスページの 3. 1にアクセスすることができます場合に言及(、クライアントのパスワードと会員データベースの比較2)には、会員データベース内のクライアントの情報を照会するリンクが含まれます 4.照会された行(結果)は適切なCSSでWebページに表示されます

ただの免責条項、

メンバーシップデータベース テーブルの名前=メンバー

id | first name | last name | address | telephone number 

私はすでにデータベースへのJDBC接続を作成し、設定している:

public void init() throws ServletException { 
     try { 
     Class.forName("com.mysql.jdbc.Driver"); 

     conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/membership","root",""); 

     stmt = conn.createStatement(); 

     } catch (ClassNotFoundException ex) { // for Class.forName() 
     ex.printStackTrace(); 
     } catch (SQLException ex) {   // for getConnection() 
     ex.printStackTrace(); 
     } 
    } 

     String query = "SELECT * FROM member WHERE xxx "; 

     ResultSet rset = stmt.executeQuery(query); 

私の質問は:どのように私はここに私の問題のために必要な行をつかむのですか?どのように私はこの質問を解決するためにアプローチする必要がありますか?あなたのアドバイス

答えて

1

ため

多くのおかげで、「私の質問は:どのように私はここに私の問題のために必要な行をつかむのですか?」

ResultSetオブジェクト(rset)を使用します。次に、必要な列を取得します。これに似た 何か:

while (rs.next()) { 
    int ID = rs.getInt("id"); 
    String fName = rs.getString("first_name"); 
    String lName = rs.getString("last_name"); 
    String address = rs.getString("address"); 
    String phone = rs.getString("telephone_number");   
    } 
0

まず、私は強くあなたが列名にスペース(代わりに、例えば、使用「_」)を持っていないお勧めします。
ログインに必要なユーザー資格情報は何ですか?私はそれがusernameでもemail_addressでもパスワードでもあると思います。それの最初の部分(例:username)が何であれ、それをメンバテーブルのプライマリキーとして使用できます。だから彼らはログインした後、あなたはすでにusernameを持っていて、あなたのSQLクエリーで 'where'句を形成します。 (彼らはEMAIL_ADDRESSでログインすると、すべてがユーザ名の代わりにということを利用して、同じように動作します。)

ので、手順は

  1. ユーザー
  2. ことを一致する行の選択カウントからユーザ名+パスワードを取りますペア
  3. カウント== 1は、それらが認証されている場合は、それ以外のユーザー
  4. にユーザ名
  5. 表示に一致する他のフィールドを選択し
  6. を拒否0

パスワードを平文で保存しないでください。保存するために適用する変換は何でも、#2を実行する前にパスワードを適用してください。ユーザー名を主キーにしない場合は、制約を介して少なくとも「一意」にする必要があります。

関連する問題