前提・実現したいこと
javaとstruts2を使用し、
selectタグの選択肢にデータベースから取得したものを表示するプログラムを作成してるところですが、
文字列の表示がうまくいきません。
データベースにある文字列をそのまま表示するためにはどのようにしたらいいでしょうか?
発生している問題・エラーメッセージ
プルダウンの中に「dto.BranchDto@62d5d70」のように参照先(?)が表示される。
該当のソースコード
【DTO】支店名を保持
public class BranchDto {
private String name;
public String getName() {return name;}
public void setName(String name) {this.name = name;}
}
【DAO】支店名をDBから取得し、DTOに格納
public List<BranchDto> getBranchName(){
DBConnector db =new DBConnector();
Connection conn = db.getConn();
List<BranchDto> branchList = new ArrayList<BranchDto>();
String sql = "SELECT BranchName FROM MST_Branch";
try{
PreparedStatement ps = conn.prepareStatement(sql);
ResultSet rs = ps.executeQuery();
while(rs.next()){
BranchDto branchDto = new BranchDto();
branchDto.setName(rs.getString("BranchName"));
branchList.add(branchDto);
}
}catch (SQLException e){
e.printStackTrace();
}finally{
try{
if (conn != null){
conn.close();
}
}catch (SQLException e){
e.printStackTrace();
}
}
return branchList;
}
【ACTION】sessionにリストを配置
public String execute() {
CompanyInfoDao companyInfoDao = new CompanyInfoDao();
List<BranchDto> branchList = new ArrayList<BranchDto>();
branchList = companyInfoDao.getBranchName();
session.put("branchList", branchList);
return SUCCESS;
}
【JSPでの取得。表示部分】
支店:<s:select name="dlstBranch" list="%{#session.branchList}"/>
回答2件
あなたの回答
tips
プレビュー