处理base64将图片存储于服务器且url存储数据库;

//类SystemConstants存放路径;

public class SystemConstants(){

    public static final String SYS_USER_PHOTO_PATH = "systemUserPhoto";//图像的存放位置(用户);

}

//需要用的的工具类StorageLocationUtil;这里用来获取[路径]/tomcat/webapps/data;

 

实现方法

String photoSrc = userInfo.fetPhotoSrc();//获取base64的图片信息;

String idCard = userInfo.getName();//获取用户名称;

if(photoSrc.indexOf("base64")>-1){

    String photoPath = StorageLocationUtil.getDirectory(SystemConstants.SYS_USER_PHOTO_PATH  + File.separator +idCard) + ".png";//以png类型为例;    File.separator为“/”;    StorageLocationUtil为工具类用于获取文件存储根目录;

    Boolean flag = Base64Image.generateImage(photoScr , photoPath);//生成图片;

       if(!flag){

            throw new Exception("保存图片失败");

        }

    oldUserInfo.setPhotoSrc(photoPath.subString(photoPath.indexOf(StorageLocationUtil.dataDir)-1));//裁剪路径

}

getBaseHibernateDao().saveOrUpdate(oldUserInfo);

 

删除之前的图片;

通过获取部署服务器绝对地址+相对地址得到的文件路径;删除旧文件;

String oldPhotoSrc = system.getProperty("catalina.home") + File.separtor + "webapps" + oldPhotoSrc ; 

File file = new File(oldPhotoSrc);

file.delete();

你可能感兴趣的:(java,Imp)