SpringMVC-----部分功能学习

1、默认错误页面设置

  

    <error-page>
        <exception-type>java.lang.Throwable</exception-type>
        <location>/WEB-INF/pages/404.jsp</location>
    </error-page>

    <error-page>
        <error-code>404</error-code>
        <location>/WEB-INF/pages/404.jsp</location>
    </error-page>

  其他的不用修改只需要在web.xml添加error-page标签

2、文件上传

2.1 准备工作

依赖:commons-fileupload.jar包

  在springmvc.xml配置文件中进行配置文件解析器

  

    <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
        <!--设定默认编码-->
        <property name="defaultEncoding" value="UTF-8"></property>
        <!--文件上传大小最大值5M 5*1024*1024-->
        <property name="maxUploadSize" value="5242880"></property>
    </bean>

  使用MultipartFile接收上传的文件(单个文件)

    @RequestMapping("/upload")
    public String upload(@RequestParam("file") MultipartFile multipartFile)
            throws Exception {
        if (multipartFile != null) {
            // multipartFile.getOriginalFilename() 获取文件的原始名称
            multipartFile.transferTo(new File("d:\tmp\" + multipartFile.getOriginalFilename()));
        }
        return "redirect:/success.html";
    }

  注意事项:(1)路径真实的已经存在的(2)参数名称必须为“file”(3)返回路径真实存在

上传多个文件

   //如果返回值是string,并且没有添加@ResponseBody表示的返回值是viewName(String就是视图名)。如果添加了@ResponseBody就不是视图名了,是Json
    @RequestMapping("/upload")
    public String upload(@RequestParam("file") MultipartFile[] multipartFiles)
            throws Exception {
        for (MultipartFile multipartFile:multipartFiles){
            if (multipartFile != null) {
                // multipartFile.getOriginalFilename() 获取文件的原始名称
                //把文件另存指定的目录下  new File的目录要求一定要提前存在,不然不会自动创建出来该目录
                //multipartFile.getOriginalFilename():获取文件的原始名称
                multipartFile.transferTo(new File("d:\tmp\" + multipartFile.getOriginalFilename()));
            }
        }

        return "redirect:/success.html";//重定向
    }

  上传前一定要在springmvc.xml中添加文件上传解析器。

  使用MultipartFile接收文件即可。 

  

坚持就是胜利
原文地址:https://www.cnblogs.com/xiaotieblog/p/8253009.html