java文件存储服务器_【Java】服务器文件存储问题

问题:

服务器重新部署war包后,项目下上传到服务器的图片会丢失

解决方法:

通过tomcat虚拟目录来实现上传文件的分开存储,通过对服务器类型的判断来指定上传路径。

Java判断服务器操作系统类型,用来区分本地测试上传路径和服务器上传路径:

String imageDir = "/images/upload/";

//判断本地windows还是服务器linux

String os = System.getProperty("os.name");

String directory = imageDir;

if(os.toLowerCase().startsWith("win")){

directory = request.getSession().getServletContext().getRealPath(imageDir);

}

修改tomcat的server.xml,中添加

这样就可以吧图片存储在服务器的/images/upload路径,通过/images/upload/1.jpg来获取图片了

以上方法可以解决腾讯云的问题,本地的IDEA和新浪云,启动tomcat的方式不像手动启动服务器一样,server.xml的修改都不太好用,还是需要对专门的服务器来确定对应存储方式,类似新浪云应该用他的Storage。

以后需要了解更多其他方式的存储,或者考虑图片直接base64存数据库什么的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值