2017-04-19 12 views
0

私は基本的なJavaの概念を学んでいます。私は結果セットを別のクラスに渡そうとしていますが、それを行う方法がわかりません。結果セットの値を別のクラスに渡す

これは私のアクションクラスである:

import com.utils.JdbcTemplateProvider; 

    public class ExParamAction{ 

     public void PwdExpiryDays() throws SQLException { 
      ExParam exParam= new ExParam(); 
      Connection connection = null; 
      PreparedStatement preparedStatement = null; 
      String sql = "select pwd_expiry_days from parameter_tools"; 
      try { 
       connection = JdbcTemplateProvider.getJdbcTemplate().getDataSource() 
         .getConnection(); 
       preparedStatement = connection.prepareStatement(sql); 
       ResultSet rs = preparedStatement.executeQuery(); 
       while (rs.next()) { 
        exParam.setPwdExpiryDays(rs 
          .getInt("PWD_EXPIRY_DAYS")); 
       } 
      } catch (SQLException e) { 
       e.printStackTrace(); 
      } finally { 

       if (preparedStatement != null) { 
        preparedStatement.close(); 
       } 

       if (connection != null) { 
        connection.close(); 
       } 

      } 

は、どのように私は別のクラスにexParam.setPwdExpiryDays(rs.getInt("PWD_EXPIRY_DAYS"))を渡すのですか?

マイExParamクラス:あなたのコードのこの部分で

public int getPwdExpiryDays(){ 
    return exParam.getPwdExpiryDays(); 
} 
+0

int変数を正しいスコープに作成し、 'exParam.setPwdExpiryDays(rs.getInt(" PWD_EXPIRY_DAYS "))'の値を割り当てます。 –

+0

私のsetPwdExpiryDays getterとsetterはvoid型に設定されています。元の質問をgetterとsetterクラスで更新しました。 – user7888003

+0

* public Integer getPwdExpiryDays *これはvoidを返しません。 –

答えて

0

グローバルフィールドを作成します。

while (rs.next()) { 

     exParam.setPwdExpiryDays(rs.getInt("PWD_EXPIRY_DAYS")); 
    //the other class should accept the "ExParam" objet as a parameter and you can then pass it. 
     ExampleClass.staticMethod(exParam); //for static methods use 
     //Or 
     exampleClassInstance.exampleMethod(exParam); //for general use 

    } 

ミニサンプル:

Class A{ 

    void method(B b){...} //B here might be your exParam. or the result you execute. 

} 

Class B{ ... } 

あなたが他のクラスで物事を行うことができ、オブジェクトを通過した後。

+0

ExParamクラスを追加しました。ゲッターはvoidに設定されています戻り値 – user7888003

0

public class ExParamAction{ 
      ExParam exParam= new ExParam(); 
....... 

pwdExpiryDaysのためのゲッターを作成します。

public class ExParam { 

    private Integer pwdExpiryDays; 
    public Integer getPwdExpiryDays() { 
     return pwdExpiryDays; 
    } 

    public void setPwdExpiryDays(Integer pwdExpiryDays) { 
     this.pwdExpiryDays = pwdExpiryDays; 
    } 
} 
+0

答えを正しく書式設定してください。 –

+0

@MarkRotteveel done、ty –

関連する問題