Javaを学習しはじめたばかりの初心者です。
現在Struts2の勉強をしております。
前回の質問から進展があったので、再度質問させていただきます。
やりたいこと
DBに登録しあるデータの一覧を取得しjspに渡し
jspで表示する。
というものを作りたいです。
struts2ではsetter/getterを作成すればデータを保持してくれるという認識をしております。
Listを使用して、Actionクラス内で一覧を取得しjspに渡したいのですが、
Listを作成した際、どのように保持させ、どのようにjspで表示させればいいのでしょうか?
みなさまの知恵をお貸し頂きたいです。
開発環境は
Struts2 2.5.10
tomcat 8.5
eclipse oxygen
MySQL8.0
を使用しております。
index.jsp
jsp
1<%@ page language="java" contentType="text/html; charset=UTF-8" 2 pageEncoding="UTF-8"%> 3<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 4<html> 5<head> 6<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 7<title>Insert title here</title> 8</head> 9<body> 10 <form action="cop"> 11 idを入力してください 12 <input type="text" name="id"><br> 13 passを入力してください 14 <input type="text" name="pass"><br> 15 <input type="submit"> 16 </form> 17</body> 18</html>
DBAction.java
java
1package cop; 2 3import java.sql.Connection; 4import java.sql.DriverManager; 5import java.sql.ResultSet; 6import java.sql.Statement; 7import java.util.ArrayList; 8import java.util.List; 9 10public class DBAction { 11 12 13 private String id; 14 private String pass; 15 private String name; 16 17 public String execute() throws Exception{ 18 String message=""; 19 String user = "root"; 20 String password = "hirokida22"; 21 String url="jdbc:mysql://localhost/worker?characterEncoding=UTF-8&serverTimezone=JST"; 22 23 Connection con = null; 24 25 26 Class.forName("com.mysql.jdbc.Driver").newInstance(); 27 28 con=DriverManager.getConnection(url, user, password); 29 Statement st = con.createStatement(); 30 31 //全テーブルデータ取得 32 String sqlStr = "SELECT * FROM shain"; 33 ResultSet result=st.executeQuery(sqlStr); 34 35 //Listオブジェクトの生成 36 List<Syain> syainList = new ArrayList<Syain>(); 37 38 39 while(result.next()) { 40 Syain syain =new Syain(); 41 syain.setName(result.getString("name")); 42 syain.setId(result.getString("id")); 43 syain.setPass(result.getString("pass")); 44 syainList.add(syain); 45 46 } 47 48 return "success"; 49 } 50 51 public void setName(String name) { 52 this.name=name; 53 } 54 55 public String getName() { 56 return name; 57 } 58 59 public void setId(String id) { 60 this.id=id; 61 } 62 63 public String getId() { 64 return id; 65 } 66 public void setPass(String pass) { 67 this.pass=pass; 68 } 69 70 public String getPass() { 71 return pass; 72 } 73 74}
output.jsp
jsp
1<%@ page language="java" contentType="text/html; charset=UTF-8" 2 pageEncoding="UTF-8"%> 3 <%@taglib prefix="s" uri="/struts-tags" %> 4<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 5<html> 6<head> 7<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 8<title>Insert title here</title> 9</head> 10<body> 11 12 13 ここに一覧表示をさせたい 14 15</body> 16</html>
Syain.java
java
1package cop; 2 3public class Syain { 4 5 private String name; 6 private String id; 7 private String pass; 8 public String getName() { 9 return name; 10 } 11 public void setName(String name) { 12 this.name = name; 13 } 14 public String getId() { 15 return id; 16 } 17 public void setId(String id) { 18 this.id = id; 19 } 20 public String getPass() { 21 return pass; 22 } 23 public void setPass(String pass) { 24 this.pass = pass; 25 } 26 27 28} 29
どうかお助けください、よろしくお願い致します。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。