質問編集履歴

2

解決

2018/03/02 07:23

投稿

superZako
superZako

スコア11

test CHANGED
File without changes
test CHANGED
@@ -1,147 +1 @@
1
- ### 前提・実現したいこと
2
-
3
- とあるソースを見つけたが、何をやっているのかわからない。Partとは何なのか、どこかでクラスをを作るのかどうか
4
-
5
- ■■な機能を実装中に以下のエラメッセージ発生しました。
1
+ 画像デタ保存方法わからない、は解決しました。ありがとうございました。
6
-
7
-
8
-
9
- ### 発生している問題・エラーメッセージ
10
-
11
-
12
-
13
- ```
14
-
15
- エラーメッセージ
16
-
17
- ```
18
-
19
-
20
-
21
- ### 該当のソースコード
22
-
23
-
24
-
25
- ```jsp
26
-
27
- <!--upload.jspコード-->
28
-
29
- <%@ page language="java" contentType="text/html; charset=UTF-8"
30
-
31
- pageEncoding="UTF-8"%>
32
-
33
- <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
34
-
35
- <html>
36
-
37
- <head>
38
-
39
- <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
40
-
41
- <title>ファイルアップロード</title>
42
-
43
- </head>
44
-
45
- <body>
46
-
47
- <form method="POST" enctype="multipart/form-data" action="../UploadServlet">
48
-
49
- <input type="file" name="file"/><br />
50
-
51
- <input type="submit" value="アップロード" />
52
-
53
- </form>
54
-
55
- </body>
56
-
57
- </html>
58
-
59
- ```
60
-
61
-
62
-
63
- ```java
64
-
65
- //UploadServletコード
66
-
67
-
68
-
69
- import java.io.IOException;
70
-
71
- import javax.servlet.ServletException;
72
-
73
- import javax.servlet.annotation.MultipartConfig;
74
-
75
- import javax.servlet.annotation.WebServlet;
76
-
77
- import javax.servlet.http.HttpServlet;
78
-
79
- import javax.servlet.http.HttpServletRequest;
80
-
81
- import javax.servlet.http.HttpServletResponse;
82
-
83
- import javax.servlet.http.Part;
84
-
85
-
86
-
87
- @WebServlet("/UploadServlet")
88
-
89
- @MultipartConfig(location="/tmp", maxFileSize=1048576)
90
-
91
- public class UploadServlet extends HttpServlet {
92
-
93
- @Override
94
-
95
- protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
96
-
97
- Part part = request.getPart("file");
98
-
99
- String name = this.getFileName(part);
100
-
101
- part.write(getServletContext().getRealPath("/WEB-INF/uploaded") + "/" + name);
102
-
103
- response.sendRedirect("jsp/upload.jsp");
104
-
105
- }
106
-
107
-
108
-
109
- private String getFileName(Part part) {
110
-
111
- String name = null;
112
-
113
- for (String dispotion : part.getHeader("Content-Disposition").split(";")) {
114
-
115
- if (dispotion.trim().startsWith("filename")) {
116
-
117
- name = dispotion.substring(dispotion.indexOf("=") + 1).replace("\"", "").trim();
118
-
119
- name = name.substring(name.lastIndexOf("\") + 1);
120
-
121
- break;
122
-
123
- }
124
-
125
- }
126
-
127
- return name;
128
-
129
- }
130
-
131
- }
132
-
133
- ```
134
-
135
- ### 試したこと
136
-
137
-
138
-
139
- ここに問題に対して試したことを記載してください。
140
-
141
-
142
-
143
- ### 補足情報(FW/ツールのバージョンなど)
144
-
145
-
146
-
147
- ここにより詳細な情報を記載してください。

1

更新

2018/03/02 07:23

投稿

superZako
superZako

スコア11

test CHANGED
File without changes
test CHANGED
@@ -1,8 +1,6 @@
1
1
  ### 前提・実現したいこと
2
2
 
3
- jspからjpg画像デ自分た階層フォルダに保存することはできます
3
+ とあるソ見つけた、何をやているかわからない。Partとは何なのか、どこかクラスをを作るのどうか
4
-
5
- ソース無し
6
4
 
7
5
  ■■な機能を実装中に以下のエラーメッセージが発生しました。
8
6
 
@@ -24,13 +22,115 @@
24
22
 
25
23
 
26
24
 
27
- ```ここに言語名を入力
25
+ ```jsp
28
26
 
27
+ <!--upload.jspコード-->
28
+
29
+ <%@ page language="java" contentType="text/html; charset=UTF-8"
30
+
31
+ pageEncoding="UTF-8"%>
32
+
33
+ <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
34
+
29
- ソースコード
35
+ <html>
36
+
37
+ <head>
38
+
39
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
40
+
41
+ <title>ファイルアップロード</title>
42
+
43
+ </head>
44
+
45
+ <body>
46
+
47
+ <form method="POST" enctype="multipart/form-data" action="../UploadServlet">
48
+
49
+ <input type="file" name="file"/><br />
50
+
51
+ <input type="submit" value="アップロード" />
52
+
53
+ </form>
54
+
55
+ </body>
56
+
57
+ </html>
30
58
 
31
59
  ```
32
60
 
33
61
 
62
+
63
+ ```java
64
+
65
+ //UploadServletコード
66
+
67
+
68
+
69
+ import java.io.IOException;
70
+
71
+ import javax.servlet.ServletException;
72
+
73
+ import javax.servlet.annotation.MultipartConfig;
74
+
75
+ import javax.servlet.annotation.WebServlet;
76
+
77
+ import javax.servlet.http.HttpServlet;
78
+
79
+ import javax.servlet.http.HttpServletRequest;
80
+
81
+ import javax.servlet.http.HttpServletResponse;
82
+
83
+ import javax.servlet.http.Part;
84
+
85
+
86
+
87
+ @WebServlet("/UploadServlet")
88
+
89
+ @MultipartConfig(location="/tmp", maxFileSize=1048576)
90
+
91
+ public class UploadServlet extends HttpServlet {
92
+
93
+ @Override
94
+
95
+ protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
96
+
97
+ Part part = request.getPart("file");
98
+
99
+ String name = this.getFileName(part);
100
+
101
+ part.write(getServletContext().getRealPath("/WEB-INF/uploaded") + "/" + name);
102
+
103
+ response.sendRedirect("jsp/upload.jsp");
104
+
105
+ }
106
+
107
+
108
+
109
+ private String getFileName(Part part) {
110
+
111
+ String name = null;
112
+
113
+ for (String dispotion : part.getHeader("Content-Disposition").split(";")) {
114
+
115
+ if (dispotion.trim().startsWith("filename")) {
116
+
117
+ name = dispotion.substring(dispotion.indexOf("=") + 1).replace("\"", "").trim();
118
+
119
+ name = name.substring(name.lastIndexOf("\") + 1);
120
+
121
+ break;
122
+
123
+ }
124
+
125
+ }
126
+
127
+ return name;
128
+
129
+ }
130
+
131
+ }
132
+
133
+ ```
34
134
 
35
135
  ### 試したこと
36
136