質問するログイン新規登録

質問編集履歴

2

検索ボタンを押した後の画面

2020/08/22 22:46

投稿

kaibasira
kaibasira

スコア15

title CHANGED
@@ -1,1 +1,1 @@
1
- 背景赤い部分の高さを変えたい
1
+ 検索結果後の画面表示の背景赤い部分の高さを変えたい
body CHANGED
File without changes

1

javaでなくjspでした

2020/08/22 22:46

投稿

kaibasira
kaibasira

スコア15

title CHANGED
File without changes
body CHANGED
@@ -55,104 +55,93 @@
55
55
 
56
56
  ```
57
57
 
58
- スタイルシートを使っているjava
58
+ スタイルシートを使っているjsp
59
59
 
60
60
  ```
61
+ <%@page import="movie.TitleListResult"%>
62
+ <%@page contentType="text/html" pageEncoding="windows-31j"%>
63
+ <%@page import="java.util.*"%>
61
- package movie;
64
+ <!DOCTYPE html>
62
65
 
63
- import java.sql.Connection;
64
- import java.sql.PreparedStatement;
66
+ <html xmlns="http://www.w3.org/1999/xhtml">
65
- import java.sql.ResultSet;
66
- import java.util.ArrayList;
67
67
 
68
+ <head>
69
+ <meta name="keywords" content="映画 洋画 邦画">
70
+ <meta http-equiv="content-language" content="ja">
71
+ <meta http-equiv="content-type" content="text/html:charset=Shift_JIS">
72
+ <meta http-equiv="content-style-type" content="text/css">
73
+ <link href="./style.css" rel="stylesheet" type="text/css">
74
+ <title>映画データベース</title>
75
+ <meta name="keywords" content="映画">
68
- public class Model {
76
+ </head>
69
- private String q;
77
+ <body background="img/kuro.jpg">
70
- private String c;
71
- private ArrayList<TitleListResult> results;
78
+ <h1 class="title">映画データベース</h1>
72
79
 
80
+ <form method="POST" action="Controller">
81
+ <input type="text" name="keyword" size="55"
82
+ placeholder=" キーワードを入力してください"> <input type="submit"
83
+ value="search"> <input type="search" name="category"
73
- public void execute() {
84
+ list="data1">
74
- System.out.println("Hello");
85
+ <datalist id="data1">
86
+ <option value="全て"></option>
87
+ <option value="タイトル名"></option>
88
+ <option value="監督名"></option>
89
+ <option value="主演名"></option>
90
+ </datalist>
75
91
 
76
- try {
77
- Connection conn = ConnectUtilMy.connectDatabase();
92
+ </form>
78
93
 
94
+ <%
79
- // 住所の検索
95
+ // サーブレットから渡された検索結果を取得する
80
- String sql = "SELECT title_name,years_publication,performance_income,production_cost,public_evaluation,screening_time,genre_name,original_name,cast_name,directed_name "
81
- + "FROM movie "
82
- + "inner join original_list on movie.original_number=original_list.original_number "
83
- + "inner join genre_list on movie.genre_number=genre_list.genre_number "
84
- + "inner join directed_list on movie.directed_number=directed_list.directed_number "
96
+ ArrayList<TitleListResult> results = (ArrayList<TitleListResult>)request.getAttribute("results");
85
- + "inner join cast_list on movie.cast_number=cast_list.cast_number ";
97
+ %>
86
98
 
87
- PreparedStatement pstmt;
99
+ <% if (results != null) { %>
100
+ <h2 class="naka">検索結果</h2>
88
- if (c.equals("全て")) {
101
+ <div id="kensaku">
89
- sql += " where title_name like ? or directed_name like ? or cast_name like ?";
102
+
90
- pstmt = conn.prepareStatement(sql);
91
- pstmt.setString(1, q + "%");
92
- pstmt.setString(2, q + "%");
93
- pstmt.setString(3, q + "%");
94
103
 
104
+ <ul class="horizontal-list">
105
+ <% for (TitleListResult result : results) { %>
95
- } else if (c.equals("タイトル名")) {
106
+ <li class="item">
107
+ <dl>
108
+ <dt>監督名</dt>
109
+ <dd><%= result.Get_directed_name() %></dd>
110
+
111
+ <dt>タイトル名</dt>
96
- sql += " where title_name like ?";
112
+ <dd><%= result.Get_movie_name() %></dd>
97
- pstmt = conn.prepareStatement(sql);
98
- pstmt.setString(1, q + "%");
99
113
 
100
- } else if (c.equals("監督名")) {
114
+ <dt>ジャンル</dt>
101
- sql += " where directed_name like ?";
115
+ <dd><%= result.Get_Genre_name() %></dd>
102
- pstmt = conn.prepareStatement(sql);
116
+
103
- pstmt.setString(1, q + "%");
117
+ <dt>原作</dt>
118
+ <dd><%= result.Get_original_name() %></dd>
104
119
 
105
- } else if (c.equals("主演名")) {
120
+ <dt>主演</dt>
106
- sql += " where cast_name like ?";
121
+ <dd><%= result.Get_cast_name() %></dd>
107
- pstmt = conn.prepareStatement(sql);
108
- pstmt.setString(1, q + "%");
109
122
 
110
- } else {
123
+ <dt>公開年</dt>
111
- throw new RuntimeException("選択が不正です");
124
+ <dd><%= result.Get_years_publication() %></dd>
112
125
 
113
- }
114
- pstmt.setMaxRows(50);
115
- ResultSet rs = pstmt.executeQuery();
126
+ <dt>上映時間</dt>
127
+ <dd><%= result.Get_Screening_time() %></dd>
116
128
 
117
- // 検索結果の取得
129
+ <dt>興行収入</dt>
118
- results = new ArrayList<TitleListResult>();
119
-
120
- while (rs.next()) {
121
- TitleListResult result = new TitleListResult();
122
- result.Set_movie_name(rs.getString("title_name"));
123
- result.Set_years_publication(rs.getString("years_publication"));
124
- result.Set_performance_income(rs.getDouble("performance_income"));
130
+ <dd><%= result.Get_performance_income() %></dd>
125
- result.Set_Production_cost(rs.getDouble("production_cost"));
126
- result.Set_Public_evaluation(rs.getDouble("public_evaluation"));
127
- result.Set_Screening_time(rs.getString("screening_time"));
128
- result.Set_Genre_name(rs.getString("genre_name"));
129
- result.Set_original_name(rs.getString("original_name"));
130
- result.Set_cast_name(rs.getString("cast_name"));
131
- result.Set_directed_name(rs.getString("directed_name"));
132
- results.add(result);
133
- }
134
131
 
135
- // 切断
132
+ <dt>制作費</dt>
136
- rs.close();
137
- pstmt.close();
138
- conn.close();
139
- } catch (Exception ex) {
133
+ <dd><%= result.Get_Production_cost() %></dd>
140
- ex.printStackTrace();
141
- }
142
- }
143
134
 
135
+ <dt>評価</dt>
144
- public ArrayList<TitleListResult> getResults() {
136
+ <dd><%= result.Get_Public_evaluation() %></dd>
137
+ </dl>
138
+ </li>
139
+ <% } %>
145
- return results;
140
+ </ul>
141
+ </div>
146
- }
142
+ <% } %>
143
+ </body>
144
+ </htmt>
147
145
 
148
- public void setQ(String q) {
149
- this.q = q;
150
- }
151
146
 
152
- public void setC(String c) {
153
- this.c = c;
154
- }
155
- }
156
-
157
-
158
147
  ```