import java.util.HashMap;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.sql.DataSource;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import org.apache.struts.action.ActionForm;
public final class IchiranActionForm extends ActionForm
{
//変数の定義,getter,setterメソッドの設定
private HashMap record = null; // HashMap型のrecordマップを宣言
private String softname; // ソフトウェア名 (key = "SN")
private String vername; // Version (key = "VN")
private String makename; // メーカー名 (key = "MN")
private String license; // ライセンス数 (key = "LN")
private String limit; // 有効期限 (key = "YN")
private String delete; // Deleteフラグ (key = "DE")
public void setSoftname(String softname) { this.softname = softname; } // ソフトウェア名の setter メソッド
public void setVername(String vername) { this.vername = vername; } // Versionの setter メソッド
public void setMakename(String makename) { this.makename = makename; } // メーカー名の setter メソッド
public void setLicense(String license) { this.license = license; } // ライセンス数の setter メソッド
public void setLimit(String limit) { this.limit = limit; } // 有効期限の setter メソッド
public void setDelete(String delete) { this.delete = delete; } // Deleteフラグの setter メソッド
public String getSoftname() { return softname; } // ソフトウェア名の getter メソッド
public String getVername() { return vername; } // Versionの getter メソッド
public String getMakename() { return makename; } // メーカー名の getter メソッド
public String getLicense() { return license; } // ライセンス数の getter メソッド
public String getLimit() { return limit; } // 有効期限の getter メソッド
public String getDelete() { return delete; } // Deleteフラグの getter メソッド
//DBへ接続,データの取得
public IchiranActionForm()
{
// 使用変数の初期化
Connection con = null;
PreparedStatement stmt =null;
ResultSet rs =null;
String LU = "java:comp/env/jdbc/SOFTWARE_DB";
String sql = "SELECT * FROM SOFTWARE_TBL WHERE ID=1";
{
try
{
Context ctx = new InitialContext();
DataSource ds = (DataSource)ctx.lookup(LU); // DataSourceの呼び出し
con = ds.getConnection(); // DBへコネクト
stmt = con.prepareStatement(sql); // ステートメントオブジェクトを生成
rs = stmt.executeQuery(); // クエリーを実行して結果セットを取得
while(rs.next())
{
softname = rs.getString("NAME"); // テーブルの"NAME"を"softname"に代入
vername = rs.getString("VERSION"); // テーブルの"VERSION"を"vername"に代入
makename = rs.getString("MAKER"); // テーブルの"MAKER"を"makename"に代入
license = rs.getString("LICENSE_NO"); // テーブルの"LICENSE_NO"を"license"に代入
limit = rs.getString("EXPIRATION_DATE"); // テーブルの"EXPIRATION_DATE"を"limit"に代入
delete = rs.getString("DELETE_FLAG"); // テーブルの"EXPIRATION_DATE"を"limit"に代入
}
record = new HashMap();
record.put("SN",softname); //ソフトウェア名をput
record.put("VN",vername); //Versionをput
record.put("MN",makename); //メーカー名をput
record.put("LN",license); //ライセンス名をput
record.put("YN",limit); //有効期限をput
record.put("DE",delete); //Deleteフラグをput
rs.close(); // DBへのアクセスをクローズ
stmt.close();
con.close();
}
catch (Exception e) //例外処理
{
e.printStackTrace();
}
}
}
//recordのgetterメソッド
public HashMap getMapData(){
return record;
}
}
|