zoukankan      html  css  js  c++  java
  • 文件上传到服务器,并且保存到数据库;欢迎各位大牛指出问题,感谢百忙之中前来看看,我这个是已经实现的,但是应该有更加优化的,希望指出,感激不尽,

    我用前端框架是layui!
    1
    //@SuppressWarnings("unused") 2 @RequestMapping(value = "/lunbo/add.do", method = RequestMethod.POST) 3 @ResponseBody 4 public Map<String, Object> addlunbo(@RequestParam("file") MultipartFile file, HttpServletRequest request) { 5 Assert.notNull(file, "上传文件不能为空"); 6 //上传文件的路径(上传地址) 7 String filepath = request.getServletContext().getRealPath("/upload"); 8 //后缀名,给文件加上后缀名 9 String filename = System.currentTimeMillis() + ".zip"; 10 // 确保路径存在,如果不存在,就创建一个路径 11 File file2 = new File(filepath); 12 if (!file2.exists()) { 13 file2.mkdirs(); 14 } 15 /* 将路径和后缀名连接起来————在java中一般用“/”,结合起来后用“\” */ 16 /* \一般用于局域网中计算机之间的互访,也就是说它后面加一个IP或者机器名,可以访问另一台机器。*/ 17 String savepath = filepath + "\" + filename; 18 //在控制台输出 19 System.out.println("轮播图保存路径:" + savepath); 20 try { 21 // 保存文件到服务器 22 file.transferTo(new File(savepath)); 23 // 保存到数据库 24 // 返回json 25 map.put("message", "ok"); 26 map.put("code", 200); 27 map.put("status", "SUCCESS"); 28 map.put("data", filename); 29 30 } catch (Exception e) { 31 map.put("msg", "error"); 32 map.put("code", 0); 33 e.printStackTrace(); 34 } 35 36 return map; 37 }

    以上是我的后台controller代码

    jsp页面的代码如下:

     1 <div class="layui-upload">
     2                             <button type="button" class="layui-btn" id="test1">选择协议</button>
     3                             <button type="button" class="layui-btn" id="test9">开始上传</button>
     4                             <div class="layui-upload-list">
     5                                 <div class="layui-input-inline">
     6                                     <input name="protocolPath" class="layui-input" type="text"
     7                                         readonly="readonly" autocomplete="off" lay-verify="required">
     8                                 </div>
     9                             </div>
    10                         </div>

    在下面写的layui的监听事件

     1 var uploadInst = upload
     2                                 .render({
     3                                     elem : '#test1',
     4                                     url : '${pageContext.request.contextPath}/version/lunbo/add.do',
     5                                     auto : false,
     6                                     accept : 'file',
     7                                     acceptMime : '.rar,.zip,.7z',
     8                                     size : '1024*5',
     9                                     before : function(obj) {
    10                                         //预读本地文件示例,不支持ie8
    11                                         obj.preview(function(index, file,
    12                                                 result) {
    13                                         });
    14                                     },
    15                                     bindAction : '#test9',
    16                                     done : function(json) {
    17                                         /*让路径返回到input里面*/
    18                                         $("#versions").find(
    19                                                 "input[name='protocolPath']")
    20                                                 .val(json.data);
    21                                         //如果上传失败
    22                                         if (json.code == 0) {
    23                                             return layer.msg('上传失败-------');
    24                                         }
    25                                         //上传成功
    26                                         if (json.code > 0) {
    27                                             return layer.msg('上传成功--------');
    28                                         }
    29                                     }
    30                                 });
  • 相关阅读:
    2
    1
    Hadoop集群常见报错汇总
    Kerberos常见报错汇总
    Python软件包管理工具pip实战篇
    Python软件包及环境管理器conda实战篇
    Python的Virtualenv与Venv环境管理器
    Python的编辑工具-Jupyter notebook实战案例
    文档工具GitBook使用指南
    20200912
  • 原文地址:https://www.cnblogs.com/a973692898/p/11577081.html
Copyright © 2011-2022 走看看