-1

私は最初の Java プログラム (Struts2 を使用) を作成して、3 つのフィールドで情報を収集し、その情報をデータベースに書き込み、データベースsuccess.jspからのすべての情報をテーブルに表示します。

ゲッター/セッターについて多くのことを読んだり、データベース(私の場合はMySQL db)からデータにアクセスしたり、データベースにデータを挿入したりしましたが、1つのことが明確ではありません。

私のアクション クラスにはPreparedStatements と aResultSetがあります (MySQL db に書き込み、そこからプルするため):

PreparedStatement pstmt = con.prepareStatement("INSERT INTO DBName(field1, field2, field3) VALUES(?, ?, ?);");
PreparedStatement pstmtSelect = con.prepareStatement("SELECT * FROM DBName");
{
    pstmt.setString(1, this.field1); 
    pstmt.setString(2, this.field2);
    pstmt.setString(3, this.field3);
    pstmt.executeUpdate();  
    ret = SUCCESS;

    ResultSet rset = pstmtSelect.executeQuery();
    while (rset.next()) {
        field1 = rset.getString(1);
        field2 = rset.getString(2);
        field3 = rset.getString(3);
        ret = SUCCESS;
    }
}

私の質問は次のとおりです。私のアクションクラスにも次のコードが必要ですか、それとも冗長ですか? それとも上記を上書きしますか?

public String getField1() {
    return this.field1;
}

public void setField1(String field1) {
    this.field1 = field1;
}

public String getField2() {
    return this.field2;
}
public void setField2(String field2) {
    this.field2 = field2;
}

public String getField3() {
    return this.field3;
}

public void setField3(String field3) {
    this.field3 = field3;
}
4

1 に答える 1

1

アクション クラスに getter と setter は必要ありません。3 つのフィールドを保持している Bean で必要なだけです。アクション クラスでは、その Bean のインスタンスを作成し、セッターを呼び出して、結果セットから取得した値を設定できます。また、表示中にゲッターを呼び出して、Bean に設定したばかりの値を取得できます。

ResultSet rset = pstmtSelect.executeQuery();
            FieldBean field = new FieldBean();         
            while (rset.next()) {
                field.setField1(rset.getString(1));
                field.setField2(rset.getString(2));
                field.setField3(rset.getString(3));
                ret = SUCCESS;
            }
于 2013-09-28T11:34:33.840 に答える