java上传图片到另一台服务器上,如何解决

需求:
项目部署于A服务器上,访问upload.jsp,上传图片.jpg。。。。。
后台接收处理,将图片存放于B服务器上。图片存放位置是根据程序不定的存放于不同的自动生成的文件夹

目前困惑:怎么获取到远程服务器地址,使之成为我图片上传的路径

现在的思路,有人介绍用jcifs-1.1.11.jar,这个可以在远程服务器上创建文件夹
实现代码:
Java code
?
1
2
3
4
5
6
7
try {
     SmbFile smbFile2= new  SmbFile( "smb://administrator:mypupa95@10.2.0.95/e$/bb" );
     smbFile2.mkdirs();
         in.close();
      } catch (Exception e){
         e.printStackTrace();
      }

以前用的上传代码是这样的:
Java code
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
  public  String upload(String dir, FormFile formFile)  throws  Exception {
          Date date =  new  Date();
         //取欲上传的文件的名字和长度
         String fname = formFile.getFileName();
         //将上传时间加入文件名
         int  i = fname.indexOf( "." );
         String name = String.valueOf(date.getTime());
         String type = fname.substring(i +  1 );
         fname = name +  "."  + type;
         InputStream in = formFile.getInputStream();     //获得上传文件的InputStream
         File uploadFile =  new  File(dir);    //创建把上传数据写到目标文件的对象
         if  (!uploadFile.exists() || uploadFile ==  null ) {   //判断指定路径是否存在,不存在则创建路径
             uploadFile.mkdirs();
         }
         String path = uploadFile.getPath() +  "/"  + fname;
         FileOutputStream fout =  new  FileOutputStream(path);
         System.out.println( "fout:" +fout);
         byte  buffer[] =  new  byte [ 8192 ];
         int  count =  0 ;
         //开始向上传路径中刚建立的文件写入数据,每次写8K字节
         while ((count = in.read(buffer)) >  0 ){
             fout.write(buffer,  0 , count);
         }
         in.close();
         fout.close();
         formFile.destroy();     //上传成功后销毁当前上传文件的资源
         return  fname;    //返回图片名称
     }


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值