Java之上传图片自动重命名实现

图片自动重命名实现

作用:当我们在进行上传图片时,这些图片都是要存在数据库当中。它们是以地址的方式存在数据库之中;这个地址可能会重复,假如说在数据库中已经有一个图片是xxxxxxxx地址,再存进来一个这样的地址的话,就会进行覆盖。会丢失之前的图片,所以:我们需要对上传图片进行重新命名,防止我们的图片丢失

下面直接上代码:

工具类

package com.util;

import java.util.Random;

/**
 * @author life
 * @create 2020-01-06 13:38

 */
public class GenerateIdUtil {
          
   

        private static char[] constant =
                {
          
   
                        0,1,2,3,4,5,6,7,8,9,
                        a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,
                        A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z
                };
        public static String GenerateRandomNumber(int Length){
          
   
            StringBuilder newRandom = new StringBuilder(50);
            Random rd = new Random();
            for (int i = 0; i < Length; i++)
            {
          
   
                newRandom.append(constant[rd.nextInt(62)]);
            }
            return newRandom.toString();
        }

        public static void main(String[] args) {
          
   
            System.out.println(GenerateRandomNumber(60));
        }
    }
package com.util;

/**
 * @author life
 * @create 2020-01-06 13:40
 */
public class GenerateIdUtil1 {
          
   
    private static String randomStr ( int len )
    {
          
   
        if (len == 0)
        {
          
   
            return "";
        }
        int a = (int) ( Math.random () * 3 );
        if (a == 0)
        {
          
   
            return ( (int) ( Math.random () * 10 ) ) + randomStr (len - 1);
        }
        else if (a == 1)
        {
          
   
            return ( (char) ( (int) ( Math.random () * 26 ) + 65 ) ) + randomStr (len - 1);
        }
        else
        {
          
   
            return ( (char) ( (int) ( Math.random () * 26 ) + 97 ) ) + randomStr (len - 1);
        }
    }

    public static void main ( String[] args )
    {
          
   
        System.out.println (randomStr (20));
    }
}

测试类:

package test;

import java.util.Date;

/**
 * @author life
 * @create 2020-01-06 14:02
 * 图片上传测试
 */
public class ImgText {
          
   
    public static void main(String[] args) {
          
   
        String filePath="upload/";
        String fileName="aa.jpg";
        filePath+=new Date().getTime()+fileName.substring(fileName.lastIndexOf(.));
        System.out.println(filePath);
    }
}
经验分享 程序员 微信小程序 职场和发展