サーチマン有料講習用の質問掲示板
[記事リスト] [新着記事] [ワード検索] [管理用]

タイトル Re^2: 1社員取得テストの失敗
投稿日: 2022/03/10(Thu) 21:55
投稿者kasai

> shainDAO.javaがうまくいってない気がします。
> まずは、shainDAO.javaのソースを見直してみましょう。
shainDAO.javaのソースを見直してみましたが、よくわかりませんでした。
リストを送付しますので、よろしくお願いいたします。
[
package dao;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;

import beans.ShainBean;

public class ShainDAO extends ConnectBase {

/**
* 社員IDから社員Beanを取得
* @param conn, shain_id
* @return int ShainBean
* @throws SQLException
*/
public ShainBean getShain(Connection conn, String shain_id) throws SQLException {
//社員Beanの初期化
ShainBean shainBean = new ShainBean();

//社員IDで取得するSQL
final String sql = "select shain.id, shain.name, bu.name, shain.enter_date "
+ "from shain_master shain, bu_master bu where shain.bu_id = bu.bu_id and shain.id=?";

//SQL実行の準備
try (PreparedStatement stmt = conn.prepareStatement(sql);) {
stmt.setString(1, shain_id);

//SQL実行
try (ResultSet rs = stmt.executeQuery();) {

//SQLで検索でいると、if文の中に入る
if (rs.next()) {

//一行目の値を取得
String shain_name = rs.getString("shain.name");
String bu_name = rs.getString("bu.name");
String enter_date = rs.getString("shain.enter_date");

//取得した値を社員Beanにセット
shainBean.setShain_id(shain_id);
shainBean.setShain_name(shain_name);
shainBean.setBu_name(bu_name);
shainBean.setEnter_date(enter_date);

}

}
} catch (SQLException e) {
System.out.println("SQLException: " + e.getMessage());
System.out.println("SQLState: " + e.getSQLState());
System.out.println("VendorError: " + e.getErrorCode());
e.printStackTrace();
throw e;
}

return shainBean;
}
/**
* 全社員を取得
* @param con
* @return shainList
* @throws SQLException
*/
public ArrayList<ShainBean> getAllShain(Connection con) throws SQLException {
//ArrayListの初期化
ArrayList<ShainBean> shainList = new ArrayList<ShainBean>();

//社員IDで取得するSQL
final String sql = "select shain.id, shain.name, bu.name, shain.enter_date "
+ "from shain_master shain, bu_master bu where shain.bu_id = bu.bu_id";

//SQL実行の準備
try (PreparedStatement stmt = con.prepareStatement(sql);) {

//SQL実行
try (ResultSet rs = stmt.executeQuery();) {

//取得した行数を繰り返す
while (rs.next()) {

//社員Beanの初期化
ShainBean shainBean = new ShainBean();

//値を取得
String shain_id = rs.getString("shain.id");
String shain_name = rs.getString("shain.name");
String bu_name = rs.getString("bu.name");
String enter_date = rs.getString("shain.enter_date");

//取得した値を社員Beanにセット
shainBean.setShain_id(shain_id);
shainBean.setShain_name(shain_name);
shainBean.setBu_name(bu_name);
shainBean.setEnter_date(enter_date);

//リストに社員Beanの追加
shainList.add(shainBean);

}

}
} catch (SQLException e) {
System.out.println("SQLException: " + e.getMessage());
System.out.println("SQLState: " + e.getSQLState());
System.out.println("VendorError: " + e.getErrorCode());
e.printStackTrace();
throw e;
}

return shainList;
}
}
]


- 関連一覧ツリー (▼ をクリックするとツリー全体を一括表示します)

- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)
名前(匿名可)
タイトル
メッセージ   手動改行 強制改行 図表モード
パスワード (講習時に送信したもの(半角英数))
  プレビュー

- 以下のフォームから自分の投稿記事を修正・削除することができます -
処理 記事No パスワード