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

質問編集履歴

5

修正

2020/11/20 04:37

投稿

EDM
EDM

スコア30

title CHANGED
@@ -1,1 +1,1 @@
1
- 削除リクエスト却下の場合
1
+ 動的に指定した値を入れる処理
body CHANGED
@@ -1,2 +1,111 @@
1
+ 画面にフォームの受信日From,受信日Toというテキストボックスがあります。
2
+ 両方日付を入力してsubmitし、色々介しながら入力内容をバインドし、SQLにてbetween :uketsukebiFrom AND :uketsukebiTo をすることにより、入力した範囲のデータをデータベースから出力することができています。
3
+ そこで次の工程として、Fromには入力、Toには未入力の場合、プログラムで指定した値が自動的にtoに入り、その範囲内のデータを表示させたい。それぞれが独立したテキストボックスとして利用したい。逆もしかり。
4
+ 例として
5
+ 受信日From ”2000-1-1” 受信日To "未入力" でsubmitすると自動的に未入力に本日の日付が入りその範囲のデータを出力。
6
+ 受信日From "未入力" 受信日To "2020-12-31" でsubmitすると自動的に未入力に"2000-1-1"が入りその範囲のデータを出力。
7
+ もちろん通常通り二つとも入力した場合もその範囲のデータを出力
8
+
9
+ その自動的に指定した値を入れる処理についてequalsを使用した処理を書きたいのですがどのように書けばいいのかわかりません。
10
+ equalsの書き方はcheckboxの時にやったことはありますがそれとは違うためよく理解できていません。
11
+ Serviceのtry-catchの部分です。
12
+ SQLも今のままでいいのか orで 区切っていくのか
13
+ 例えば
14
+ (between :uketsukebiFrom AND :uketsukebiTo)or (between :uketsukebiFrom1 AND :uketsukebiTo)みたいに自動的に入った場合はバインドの名前を変えるようにするみたいな。
15
+
16
+ ちなみにデータベースにある受信日はDate型、テキストに入力する際はString型だがその変換はできている。java.sql.Dateのところ。
17
+ コードは本当に必要なところだけ抜粋しています。
18
+
19
+ ```search
20
+ <form:form modelAttribute="SearchBean"
21
+ action="Search_search.htm" method="POST">
22
+ <table border="1">
23
+ <tr>
24
+ <th rowspan="2">受付日</th>
25
+ <th>(from)</th>
26
+ <td><input type="text" name="From"></td>
1
- 削除リクエスト却下された質問って
27
+ </tr>
28
+ <tr>
29
+ <th>(to)</th>
30
+ <td><input type="text" name="To"></td>
31
+ </tr>
32
+ </table>
33
+ <input type="submit" name="search"value="検索">
34
+ </form:form>
35
+ <c:forEach var="row" items="${ResultBean.list}">
36
+ <tr>
37
+ <td>${row.uketsukebi}</td>
38
+ </tr>
39
+ </c:forEach>
40
+ ```
41
+
42
+ ```controller
43
+ //Search.jspにてsubmit(検索)がクリックされた時
44
+ @RequestMapping(value="Search_search",method=RequestMethod.POST)
45
+ public ModelAndView Search_search(@ModelAttribute("searchBean") SearchBean searchBean)
46
+ {
47
+ ResultBean result = Service.selectService(searchBean);
48
+ ModelAndView mv = new ModelAndView("search");
49
+ mv.addObject("searchBean",searchBean);
50
+ mv.addObject("resultBean",result);
51
+ return mv;
52
+ }
53
+ ```
54
+
55
+ ```SearchBean
56
+ protected String from;
2
- 編集で文言変えたらいけるんちゃうのかな?
57
+ protected String to;
58
+ ```
59
+ ```ResultBean.java
60
+ protected int count ;
61
+ protected List<SearchDto> list;
62
+ ```
63
+ ```Service
64
+ public ResultBean selectService(SearchBean searchBean)
65
+ {
66
+ try
67
+ {
68
+ //ここの部分です。
69
+ **if(searchBean.from =.equals(searchBean.getFrom(null)))
70
+ {
71
+ searchBean.From() = "2000-1-1"; //入力するときはまだStringのはず
72
+ }
73
+ if(searchBean.to =.equals(searchBean.getTo(null)))
74
+ {
75
+ searchBean.From() = "2020-12-31"; 
76
+ }**
77
+ java.sql.Date FROM = java.sql.Date.valueOf(searchBean.getFrom());
78
+ java.sql.Date TO = java.sql.Date.valueOf(searchBean.getTo());
79
+
80
+ List<SearchDto> list = searchDao.select(FROM,TO);
81
+ return new ResultBean(list.size(),list);
82
+ }
83
+ catch (Exception e)
84
+ {
85
+ e.printStackTrace();
86
+ return new ResultBean
87
+ (-1,null);
88
+ }
89
+ }
90
+ ```
91
+ ```SearchDto
92
+ protected Date uketsukebi;
93
+ ```
94
+ ```SearchDao
95
+ public List<SearchDto> select(java.sql.Date FROM,java.sql.Date TO)
96
+ {
97
+ String sql = properties.getProperty
98
+ ("jdbc.sql.select");
99
+ RowMapper rm = new BeanPropertyRowMapper<SearchDto>
100
+ (SearchDto.class);
101
+ MapSqlParameterSource namedParam =
102
+ new MapSqlParameterSource();
103
+ namedParam.addValue("uketsukebiFrom",FROM,Types.DATE);
104
+ namedParam.addValue("uketsukebiTo",TO,Types.DATE);
105
+ return getNamedParameterJdbcTemplate().query
106
+ (sql,namedParam,rm);
107
+ }
108
+ ```
109
+ ```properties
110
+ jdbc.sql.select=select UKETSUKEBI from CUSTOMER where UKETSUKEBI BETWEEN :uketsukebiFrom AND :uketsukebiTo
111
+ ```

4

修正

2020/11/20 04:37

投稿

EDM
EDM

スコア30

title CHANGED
@@ -1,1 +1,1 @@
1
- SpringMVC サービスの処理について
1
+ 削除リクエト却下場合
body CHANGED
@@ -1,111 +1,2 @@
1
- 画面にフォームの受信日From,受信日Toというテキストボックスがあります。
2
- 両方日付を入力してsubmitし、色々介しながら入力内容をバインドし、SQLにてbetween :uketsukebiFrom AND :uketsukebiTo をすることにより、入力した範囲のデータをデータベースから出力することができています。
3
- そこで次の工程として、Fromには入力、Toには未入力の場合、プログラムで指定した値が自動的にtoに入り、その範囲内のデータを表示させたい。それぞれが独立したテキストボックスとして利用したい。逆もしかり。
4
- 例として
5
- 受信日From ”2000-1-1” 受信日To "未入力" でsubmitすると自動的に未入力に本日の日付が入りその範囲のデータを出力。
6
- 受信日From "未入力" 受信日To "2020-12-31" でsubmitすると自動的に未入力に"2000-1-1"が入りその範囲のデータを出力。
7
- もちろん通常通り二つとも入力した場合もその範囲のデータを出力
8
-
9
- その自動的に指定した値を入れる処理についてequalsを使用した処理を書きたいのですがどのように書けばいいのかわかりません。
10
- equalsの書き方はcheckboxの時にやったことはありますがそれとは違うためよく理解できていません。
11
- Serviceのtry-catchの部分です。
12
- SQLも今のままでいいのか orで 区切っていくのか
13
- 例えば
14
- (between :uketsukebiFrom AND :uketsukebiTo)or (between :uketsukebiFrom1 AND :uketsukebiTo)みたいに自動的に入った場合はバインドの名前を変えるようにするみたいな。
15
-
16
- ちなみにデータベースにある受信日はDate型、テキストに入力する際はString型だがその変換はできている。java.sql.Dateのところ。
17
- コードは本当に必要なところだけ抜粋しています。
18
-
19
- ```search
20
- <form:form modelAttribute="SearchBean"
21
- action="Search_search.htm" method="POST">
22
- <table border="1">
23
- <tr>
24
- <th rowspan="2">受付日</th>
25
- <th>(from)</th>
26
- <td><input type="text" name="From"></td>
27
- </tr>
1
+ 削除リクエスト却下された質問って
28
- <tr>
29
- <th>(to)</th>
30
- <td><input type="text" name="To"></td>
31
- </tr>
32
- </table>
33
- <input type="submit" name="search"value="検索">
34
- </form:form>
35
- <c:forEach var="row" items="${ResultBean.list}">
36
- <tr>
37
- <td>${row.uketsukebi}</td>
38
- </tr>
39
- </c:forEach>
40
- ```
41
-
42
- ```controller
43
- //Search.jspにてsubmit(検索)がクリックされた時
44
- @RequestMapping(value="Search_search",method=RequestMethod.POST)
45
- public ModelAndView Search_search(@ModelAttribute("searchBean") SearchBean searchBean)
46
- {
47
- ResultBean result = Service.selectService(searchBean);
48
- ModelAndView mv = new ModelAndView("search");
49
- mv.addObject("searchBean",searchBean);
50
- mv.addObject("resultBean",result);
51
- return mv;
52
- }
53
- ```
54
-
55
- ```SearchBean
56
- protected String from;
57
- protected String to;
2
+ 編集で文言変えたらいけるんちゃうのかな?
58
- ```
59
- ```ResultBean.java
60
- protected int count ;
61
- protected List<SearchDto> list;
62
- ```
63
- ```Service
64
- public ResultBean selectService(SearchBean searchBean)
65
- {
66
- try
67
- {
68
- //ここの部分です。
69
- **if(searchBean.from =.equals(searchBean.getFrom(null)))
70
- {
71
- searchBean.From() = "2000-1-1"; //入力するときはまだStringのはず
72
- }
73
- if(searchBean.to =.equals(searchBean.getTo(null)))
74
- {
75
- searchBean.From() = "2020-12-31"; 
76
- }**
77
- java.sql.Date FROM = java.sql.Date.valueOf(searchBean.getFrom());
78
- java.sql.Date TO = java.sql.Date.valueOf(searchBean.getTo());
79
-
80
- List<SearchDto> list = searchDao.select(FROM,TO);
81
- return new ResultBean(list.size(),list);
82
- }
83
- catch (Exception e)
84
- {
85
- e.printStackTrace();
86
- return new ResultBean
87
- (-1,null);
88
- }
89
- }
90
- ```
91
- ```SearchDto
92
- protected Date uketsukebi;
93
- ```
94
- ```SearchDao
95
- public List<SearchDto> select(java.sql.Date FROM,java.sql.Date TO)
96
- {
97
- String sql = properties.getProperty
98
- ("jdbc.sql.select");
99
- RowMapper rm = new BeanPropertyRowMapper<SearchDto>
100
- (SearchDto.class);
101
- MapSqlParameterSource namedParam =
102
- new MapSqlParameterSource();
103
- namedParam.addValue("uketsukebiFrom",FROM,Types.DATE);
104
- namedParam.addValue("uketsukebiTo",TO,Types.DATE);
105
- return getNamedParameterJdbcTemplate().query
106
- (sql,namedParam,rm);
107
- }
108
- ```
109
- ```properties
110
- jdbc.sql.select=select UKETSUKEBI from CUSTOMER where UKETSUKEBI BETWEEN :uketsukebiFrom AND :uketsukebiTo
111
- ```

3

誤字

2020/11/20 02:55

投稿

EDM
EDM

スコア30

title CHANGED
File without changes
body CHANGED
@@ -40,7 +40,8 @@
40
40
  ```
41
41
 
42
42
  ```controller
43
+ //Search.jspにてsubmit(検索)がクリックされた時
43
- //Search.jspにてsubmit(検索)がクリックされた時@RequestMapping(value="Search_search",method=RequestMethod.POST)
44
+ @RequestMapping(value="Search_search",method=RequestMethod.POST)
44
45
  public ModelAndView Search_search(@ModelAttribute("searchBean") SearchBean searchBean)
45
46
  {
46
47
  ResultBean result = Service.selectService(searchBean);

2

誤字

2020/11/19 08:37

投稿

EDM
EDM

スコア30

title CHANGED
File without changes
body CHANGED
@@ -17,7 +17,7 @@
17
17
  コードは本当に必要なところだけ抜粋しています。
18
18
 
19
19
  ```search
20
- <form:form modelAttribute="Bean"
20
+ <form:form modelAttribute="SearchBean"
21
21
  action="Search_search.htm" method="POST">
22
22
  <table border="1">
23
23
  <tr>

1

誤字

2020/11/19 08:36

投稿

EDM
EDM

スコア30

title CHANGED
File without changes
body CHANGED
@@ -8,7 +8,7 @@
8
8
 
9
9
  その自動的に指定した値を入れる処理についてequalsを使用した処理を書きたいのですがどのように書けばいいのかわかりません。
10
10
  equalsの書き方はcheckboxの時にやったことはありますがそれとは違うためよく理解できていません。
11
- Service.javaのtry-catchの部分です。
11
+ Serviceのtry-catchの部分です。
12
12
  SQLも今のままでいいのか orで 区切っていくのか
13
13
  例えば
14
14
  (between :uketsukebiFrom AND :uketsukebiTo)or (between :uketsukebiFrom1 AND :uketsukebiTo)みたいに自動的に入った場合はバインドの名前を変えるようにするみたいな。
@@ -16,7 +16,7 @@
16
16
  ちなみにデータベースにある受信日はDate型、テキストに入力する際はString型だがその変換はできている。java.sql.Dateのところ。
17
17
  コードは本当に必要なところだけ抜粋しています。
18
18
 
19
- ```search.jsp
19
+ ```search
20
20
  <form:form modelAttribute="Bean"
21
21
  action="Search_search.htm" method="POST">
22
22
  <table border="1">
@@ -39,7 +39,7 @@
39
39
  </c:forEach>
40
40
  ```
41
41
 
42
- ```controller.java
42
+ ```controller
43
43
  //Search.jspにてsubmit(検索)がクリックされた時@RequestMapping(value="Search_search",method=RequestMethod.POST)
44
44
  public ModelAndView Search_search(@ModelAttribute("searchBean") SearchBean searchBean)
45
45
  {
@@ -51,7 +51,7 @@
51
51
  }
52
52
  ```
53
53
 
54
- ```SearchBean.java
54
+ ```SearchBean
55
55
  protected String from;
56
56
  protected String to;
57
57
  ```
@@ -59,7 +59,7 @@
59
59
  protected int count ;
60
60
  protected List<SearchDto> list;
61
61
  ```
62
- ```Service.java
62
+ ```Service
63
63
  public ResultBean selectService(SearchBean searchBean)
64
64
  {
65
65
  try
@@ -87,10 +87,10 @@
87
87
  }
88
88
  }
89
89
  ```
90
- ```SearchDto.java
90
+ ```SearchDto
91
91
  protected Date uketsukebi;
92
92
  ```
93
- ```SearchDao.java
93
+ ```SearchDao
94
94
  public List<SearchDto> select(java.sql.Date FROM,java.sql.Date TO)
95
95
  {
96
96
  String sql = properties.getProperty