# JV27 課題No.01 ###### tags: `課題` ```htmlembedded= <!-- class_index.html --> <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> </head> <body> <a href="class_select.html"> <button>検索</button> </a> </body> ``` ```htmlembedded= <!-- class_select.html --> <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> </head> <body> <form action="./servlet/class_select" method="POST"> <div> <input type="radio" name="SELECT" value="1"> <select name="GAKUEN_NO"> <option value="1" selected>1年</option> <option value="2">2年</option> <option value="3">3年</option> <option value="4">4年</option> </select> </div> <div> <input type="radio" name="SELECT" value="2"> <select name="CLASS_NO"> <option value="AT11A192" selected>AT11A192</option> <option value="AT11B203">AT11B203</option> <option value="CG11A172">CG11A172</option> <option value="IT11A172">IT11A172</option> <option value="AT12A165">AT12A165</option> <option value="AT12B165">AT12B165</option> <option value="IH12A101">IH12A101</option> <option value="IW12A185">IW12A185</option> <option value="AT13A223">AT13A223</option> <option value="AP13A223">AP13A223</option> <option value="IH13A223">IH13A223</option> <option value="IW13A187">IW13A187</option> <option value="CD13A166">CD13A166</option> <option value="AP14A226">AP14A226</option> <option value="AT14A226">AT14A226</option> <option value="IH14A223">IH14A223</option> <option value="CT14A187">CT14A187</option> <option value="IW14A187">IW14A187</option> <option value="xx14Axx">xx14Axx</option> </select> </div> <button>検索</button> </form> <a href="class_index.html"> <button>戻る</button> </a> </body> </html> ``` ```java= // class_select.java import java.sql.*; import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class class_select extends HttpServlet { public void doPost ( HttpServletRequest req, HttpServletResponse res ) throws ServletException , IOException { final String URL = "jdbc:mysql://localhost/nhs00157db?useUnicode=true&characterEncoding=UTF-8"; final String USER = "miyasan"; final String PASSWORD = "0301"; final String DRIVER = "com.mysql.jdbc.Driver"; Connection con = null; Statement stmt = null; String class_no,gakuseki_no,syusseki_no,simei_1,simei_2,kana_1,kana_2,umare; PrintWriter out; req.setCharacterEncoding("UTF-8"); res.setContentType("text/html;charset=UTF-8"); out = res.getWriter(); String searchStr = ""; String selectStr = req.getParameter("SELECT"); if (selectStr.equals("1")) { searchStr = req.getParameter("GAKUNEN_NO"); } else if (selectStr.equals("2")) { searchStr = req.getParameter("CLASS_NO"); } StringBuffer sb = new StringBuffer(); sb.append("<html>"); sb.append("<head>"); sb.append("<title>名簿検索</title>"); sb.append("<link href='https://cdn.jsdelivr.net/npm/daisyui@0.26.3/dist/full.css' rel='stylesheet' type='text/css' />"); sb.append("</head>"); sb.append("<body>"); sb.append("<div class='card shadow-lg m-10'>"); sb.append("<div class='text-3xl text-center'>名簿検索</div>"); sb.append("<div class='text-center text-secondary text-xl py-5'>検索結果 : " + searchStr); if (selectStr.equals("1")) { sb.append("年"); } sb.append("</div>"); sb.append("<div class='flex justify-center items-center flex-col w-full'>"); sb.append("<table class='table'>"); sb.append("<tr class='table-row-group'>"); sb.append("<div class='table-row'>"); sb.append("<th class='px-8 table-cell'>"); sb.append("クラス"); sb.append("</th>"); sb.append("<th class='px-2 table-cell'>"); sb.append("出席番号"); sb.append("</th>"); sb.append("<th class='px-2 table-cell'>"); sb.append("学籍番号"); sb.append("</th>"); sb.append("<th class='px-2 table-cell'>"); sb.append("氏名(姓)"); sb.append("</th>"); sb.append("<th class='px-2 table-cell'>"); sb.append("氏名(名)"); sb.append("</th>"); sb.append("<th class='px-2 table-cell'>"); sb.append("カナ(姓)"); sb.append("</th>"); sb.append("<th class='px-2 table-cell'>"); sb.append("カナ(名)"); sb.append("</th>"); sb.append("<th class='px-2 table-cell'>"); sb.append("生年月日"); sb.append("</th>"); sb.append("</div>"); sb.append("</tr>"); try { Class.forName(DRIVER); con = DriverManager.getConnection(URL,USER,PASSWORD); stmt = con.createStatement(); StringBuffer query = new StringBuffer(); if (selectStr.equals("1")) { query.append("select * from class_table where "); query.append("class_no like '"); query.append("___" + searchStr + "____"); query.append("' order by class_no, syusseki_no"); } else if (selectStr.equals("2")) { query.append("select * from class_table where "); query.append("class_no = '"); query.append(searchStr); query.append("' order by class_no, syusseki_no"); } ResultSet rs = stmt.executeQuery(query.toString()); while (rs.next()) { class_no = rs.getString("class_no"); syusseki_no = rs.getString("syusseki_no"); gakuseki_no = rs.getString("gakuseki_no"); simei_1 = rs.getString("simei_1"); simei_2 = rs.getString("simei_2"); kana_1 = rs.getString("kana_1"); kana_2 = rs.getString("kana_2"); umare = rs.getString("umare"); sb.append("<tr class='table-row-group text-right'>"); sb.append("<div class='table-row'>"); sb.append("<td class='table-cell'>"); sb.append(class_no); sb.append("</td>"); sb.append("<td class='table-cell'>"); sb.append(syusseki_no); sb.append("</td>"); sb.append("<td class='table-cell'>"); sb.append(gakuseki_no); sb.append("</td>"); sb.append("<td class='table-cell'>"); sb.append(simei_1); sb.append("</td>"); sb.append("<td class='table-cell'>"); sb.append(simei_2); sb.append("</td>"); sb.append("<td class='table-cell'>"); sb.append(kana_1); sb.append("</td>"); sb.append("<td class='table-cell'>"); sb.append(kana_2); sb.append("</td>"); sb.append("<td class='table-cell'>"); sb.append(umare); sb.append("</td>"); sb.append("</div>"); sb.append("</tr>"); } sb.append("</table>"); sb.append("<div class='py-10'>"); sb.append("<a href='/JV27/class_select.html'><button class='btn btn-link'>検索に戻る</button></a>"); sb.append("<a href='/JV27/class_index.html'><button class='btn btn-link'>ホームに戻る</button></a>"); sb.append("</div>"); sb.append("</div>"); sb.append("</div>"); sb.append("</body>"); sb.append("</html>"); out.println(sb.toString()); stmt.close(); con.close(); } catch (SQLException ex) { out.println(" ---- SQL Exception ----"); out.println(" ---- Error Message ----"); while (ex != null) { out.println(ex.getMessage()); ex = ex.getNextException(); } } catch (Exception ex) { ex.printStackTrace(out); } }} ``` TRUNCATE TABLE class_table; これで中身だけ消える select * from class_table;で確認して mysqlファイルのINSERTのやつを全部コピーして貼り付ける <span style="color: #ff3333">aaa</span> <span style="text-decoration: underline">aaa</span> ## 雑談 (0→やまぴ 1→みや 2→やすい 3→りょうくん)