zoukankan      html  css  js  c++  java
  • 项目图片上传存储的目录部分代码思路Calendar类获取年月日

    在项目中将产品图片全部放置在一个文件夹下面的话,如果图片很多的话,加载速度会减慢,可以按照文件夹按年,月,日来分开存放,图片文件名字取系统时间long类型加上5位随机数字码避免重复。

    Calendar calendar = Calendar.getInstance();
                    /**按年月日来分*/
                    int year = calendar.get(Calendar.YEAR);//得到年
                    int month = calendar.get(Calendar.MONTH)+1;//得到月,因为从0开始的,所以要加1
                    int day = calendar.get(Calendar.DAY_OF_MONTH);//得到天
    
    
    String filename = String.valueOf(calendar.getTimeInMillis() + StrUtils.randomNumeric(5));
    
    saveurl = Constants.ROOTPATH + url;
                    
                    String path1 = saveurl + year + "/" ;
                    String path2 = saveurl + year + "/" + month + "/" ;
                    String path3 = saveurl + year + "/" + month + "/" + day + "/" ;
                    
                    //建立按年月日文件夹,如果文件夹不存在,就建立新的文件夹。
                    FileOperate.newFolder(path1);
                    FileOperate.newFolder(path2);
                    FileOperate.newFolder(path3);
                    
                    String pic_url = filename + "." + ext;
    
                    saveurl = path3; //新的目录
                    saveurl += pic_url; //保存路径 
                    //saveurl += filename;
    
                    myFile.saveAs(saveurl, SmartUpload.SAVE_PHYSICAL);
                    
                    /**保存到数据库中的图片地址*/
                    pic_url = year + "/" + month + "/" + day + "/" + pic_url;  //新的图片url
                    

    文件夹操作类FileOperate.java

    /**
         * 新建目录
         * 
         * @param folderPath
         *            String 如 c:/fqf
         * @return boolean
         */
        public static void newFolder(String folderPath) {
            try {
                String filePath = folderPath;
                filePath = filePath.toString();
                java.io.File myFilePath = new java.io.File(filePath);
                if (!myFilePath.exists()) {
                    myFilePath.mkdir();
                }
            } catch (Exception e) {
                //  //ln("新建目录操作出错 ");
                e.printStackTrace();
                log.error(e.getMessage(), e.fillInStackTrace());
            }
        }

    StrUtils类

    public static String randomNumeric(int i) {
            return RandomStringUtils.randomNumeric(i);
        }

    需要commons-lang-2.0.jar支持。

  • 相关阅读:
    element-ui upload 上传图片之前压缩
    字符串截取substring放法传参不同返回不同
    vue中对于图片是否正常加载的思考
    前端图片合成并下载
    vue中图相对路径引用本地图片
    js计算精度
    vue-cli定义全局过滤器
    js加减乘除运算丢失精度 前端计算金额带小数点精度丢失问题
    鼠标样式大全
    js两小时倒计时,剩余时间倒计时,倒计时
  • 原文地址:https://www.cnblogs.com/simpledev/p/3512648.html
Copyright © 2011-2022 走看看