Parcourir la source

springMVC 练习文件上传功能

zhang il y a 2 ans
Parent
commit
c519dfb17f

+ 10 - 0
springMvc/pom.xml

@@ -91,6 +91,16 @@
91
       <artifactId>lombok</artifactId>
91
       <artifactId>lombok</artifactId>
92
       <version>1.18.24</version>
92
       <version>1.18.24</version>
93
     </dependency>
93
     </dependency>
94
+    <dependency>
95
+      <groupId>commons-io</groupId>
96
+      <artifactId>commons-io</artifactId>
97
+      <version>2.5</version>
98
+    </dependency>
99
+    <dependency>
100
+      <groupId>commons-fileupload</groupId>
101
+      <artifactId>commons-fileupload</artifactId>
102
+      <version>1.3.1</version>
103
+    </dependency>
94
   </dependencies>
104
   </dependencies>
95
 
105
 
96
 </project>
106
 </project>

+ 1 - 0
springMvc/src/main/java/com/config/WebMvcConfig.java

@@ -32,6 +32,7 @@ public class WebMvcConfig implements WebMvcConfigurer {
32
     }
32
     }
33
     @Override
33
     @Override
34
     public void addInterceptors(InterceptorRegistry registry) {
34
     public void addInterceptors(InterceptorRegistry registry) {
35
+        System.out.println(1);
35
 //        WebMvcConfigurer.super.addInterceptors(registry);
36
 //        WebMvcConfigurer.super.addInterceptors(registry);
36
     }
37
     }
37
 }
38
 }

+ 1 - 0
springMvc/src/main/java/com/controller/RestfulController.java

@@ -33,4 +33,5 @@ public class RestfulController {
33
     public void rest4 (@CookieValue(value = "JSESSIONID") String sessionId) {
33
     public void rest4 (@CookieValue(value = "JSESSIONID") String sessionId) {
34
         System.out.println(sessionId);
34
         System.out.println(sessionId);
35
     }
35
     }
36
+
36
 }
37
 }

+ 24 - 0
springMvc/src/main/java/com/controller/UploadFileController.java

@@ -0,0 +1,24 @@
1
+package com.controller;
2
+
3
+import org.springframework.stereotype.Controller;
4
+import org.springframework.web.bind.annotation.CookieValue;
5
+import org.springframework.web.bind.annotation.RequestMapping;
6
+import org.springframework.web.bind.annotation.ResponseBody;
7
+import org.springframework.web.multipart.MultipartFile;
8
+
9
+import javax.servlet.http.HttpServletRequest;
10
+import java.io.File;
11
+import java.io.IOException;
12
+
13
+@Controller
14
+public class UploadFileController {
15
+    // http://localhost:8083/template/upload_file.jsp
16
+    @RequestMapping("/uploadFile")
17
+    @ResponseBody
18
+    public String uploadFile (String name, MultipartFile file1) throws IOException {
19
+        System.out.println(12312);
20
+        String originalFilename = file1.getOriginalFilename();
21
+        file1.transferTo(new File("D:\\javaProject\\" + originalFilename));
22
+        return "upload_file";
23
+    }
24
+}

+ 4 - 0
springMvc/src/main/java/com/interceptor/InterceptorConfig.java

@@ -14,4 +14,8 @@ public class InterceptorConfig {
14
     public MappedInterceptor myInterceptor2() {
14
     public MappedInterceptor myInterceptor2() {
15
         return new MappedInterceptor(new String[]{"/save"},null,new MyInterceptor());
15
         return new MappedInterceptor(new String[]{"/save"},null,new MyInterceptor());
16
     }
16
     }
17
+    @Bean
18
+    public String getStr() {
19
+        return "str";
20
+    }
17
 }
21
 }

+ 8 - 4
springMvc/src/main/resources/Spring-mvc.xml

@@ -18,10 +18,10 @@
18
 
18
 
19
 <!--    <mvc:annotation-driven></mvc:annotation-driven>-->
19
 <!--    <mvc:annotation-driven></mvc:annotation-driven>-->
20
 <!--    配置内部资源解析器-->
20
 <!--    配置内部资源解析器-->
21
-<!--    <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">-->
22
-<!--        <property name="prefix" value="/template/"></property>-->
23
-<!--        <property name="suffix" value=".jsp"></property>-->
24
-<!--    </bean>-->
21
+        <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
22
+            <property name="prefix" value="/template/"></property>
23
+            <property name="suffix" value=".jsp"></property>
24
+        </bean>
25
 <!--       <mvc:interceptors>-->
25
 <!--       <mvc:interceptors>-->
26
 <!--           <mvc:interceptor>-->
26
 <!--           <mvc:interceptor>-->
27
 <!--               <mvc:mapping path="/save"/>-->
27
 <!--               <mvc:mapping path="/save"/>-->
@@ -48,5 +48,9 @@
48
                 </list>
48
                 </list>
49
             </property>
49
             </property>
50
         </bean>
50
         </bean>
51
+<!--        配置文件上传解析器-->
52
+        <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
53
+            <property name="defaultEncoding" value="UTF-8"></property>
54
+        </bean>
51
 
55
 
52
 </beans>
56
 </beans>

+ 23 - 0
springMvc/src/main/webapp/template/upload_file.jsp

@@ -0,0 +1,23 @@
1
+<%--
2
+  Created by IntelliJ IDEA.
3
+  User: 77179
4
+  Date: 2022/5/17
5
+  Time: 20:36
6
+  To change this template use File | Settings | File Templates.
7
+--%>
8
+<%@ page contentType="text/html;charset=UTF-8" language="java" %>
9
+<html>
10
+<head>
11
+    <title>Title</title>
12
+</head>
13
+<body>
14
+    <form action="${pageContext.request.contextPath}/uploadFile" method="post"
15
+        enctype="multipart/form-data"
16
+    >
17
+        文件<input type="file" name="file1"><br/>
18
+        名字<input type="text" name="name"><br/>
19
+        <input type="submit" value="提交">
20
+
21
+    </form>
22
+</body>
23
+</html>