zoukankan      html  css  js  c++  java
  • SSM框架中使用文件上传的示例

    1.首先要导入文件上传需要的jar包 

    commons-fileupload-1.3.2.jar  用于文件上传,但是只有这个包也是不行的 ,  commons-fileupload-1.3.2.jar 依赖于  commons-io-2.5.jar 一起使用

    2.在配置文件中配置文件解析器,默认是关闭的,所以要打开一下,在spring-mvc配置文件中配置一下

    <!-- 文件解析器 -->
    <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
    <property name="defaultEncoding" value="UTF-8"></property>
    <!-- 指定所上传的总大小不能超过200KB。注意maxUploadSize属性的限制不是针对单个文件,而是所有文件 -->
    <property name="maxUploadSize" value="200000"></property>
    </bean>

    3.controller 控制层写调用的方法

    <!-- 注解访问层接口 并注入   用于最后调用方法--!>

    @Resource
    private StudentDao StudentDao;

    public void setStudentDao(StudentDao studentDao) {
    StudentDao = studentDao;
    }

    <!-- 用注解方式,value指定从页面的提交地址,method指定是用表单的方式提交过来的 -->

    @RequestMapping(value="/add",method=RequestMethod.POST)  

    <!-- Student student指参数,我这里用的是Student实体类  MultipartFile photo指文件上传的参数,与页面name指必须一致,HttpServletRequest request获取请求参数,File不提供request提交 -->

    public String postAdd(Student student,MultipartFile photo, HttpServletRequest request) throws Exception{

    <!-- 保存文件到指定的路径   这里获取的是服务器的绝对路径 --!>
    String realPath = request.getServletContext().getRealPath("/img");

    <!--获取文件名字 --!>
    String oldName = photo.getOriginalFilename();

    <!--加上后缀 赋给一个新的变量 --!>
    String newName = UUID.randomUUID().toString() + oldName.substring(oldName.lastIndexOf("."));

    <!--把文件放到项目的指定地方  --!>
    File dest = new File(realPath+File.separator+newName );
    photo.transferTo(dest);
    <!-- 把路径赋给实体类所对应的列  用于添加到数据库中--!>
    student.setImg(newName);

    <!-- 调用添加方法  重定向到查询页面 --!>
    StudentDao.add(student);
    return "redirect:/student/list";
    }

    以上是我的做的一个小示例,希望能帮助到你们!

  • 相关阅读:
    appium的log详细分析
    安卓版本6.0打开uiautomator报错
    wmware搬家
    Appium_Python_Api文档
    EF常用命令行
    Java学习----this和super(在继承中)
    Java学习----到底调用哪一个方法(多态)
    Java学习----方法的覆盖
    Java学习----对象间的继承
    Java学习----一个对象怎么调用另一个对象呢?
  • 原文地址:https://www.cnblogs.com/huazai1996/p/8301506.html
Copyright © 2011-2022 走看看