一、SpringMVC 转发和重定向
(一)、转发 forward
(二)、重定向 redirect
重定向时传参方式
1、添加到Model或ModelAndView中的数据会以参数的形式拼接在url后,可以用来传递数据
2、手动拼接到Url上(注意需要进行URLEncoder.encode()编码)
3、RedirectAttributes对象
①默认的addAttribute()还是会拼接url
②使用RedirectAttributes对象对象时 Model中的数据不会拼接到url,而ModelAndView中的数据会。
③使用addFlashAttribute()方法可以不在URL中显示参数
* 需要在重定向的目标方法使用@ModelAttribute接收参数
* 其原理就是放到session中,session在跳到页面后马上移除对象。所以刷新就没有值了
二、文件上传与下载
1、添加依赖
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>1.5</version>
</dependency>
2、在springMVC-servlet.xml中配置MultipartResolve
<!--文件上传配置 注意id必须是 multipartResolver -->
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<!--文件上传总大小的最大值,单位字节 100M=100*1024*1024 -->
<property name="maxInMemorySize" value="104857600"/>
<!-- 单个上传的文件大小,单位字节 10M=10*1024*1024-->
<property name="maxUploadSizePerFile" value="10485760"/>
<!--编码方式-->
<property name="defaultEncoding" value="UTF-8"/>
</bean>
注意:
Tomcat默认也限制请求的大小,默认值2097152(2MB)。超过这个限制Tomcat会终止连接,浏览器提示连接重置。
可以配置maxSwallowSize来修改,小于零的值表示不应强制执行任何限制。
3、编写代码