java上传图片到远程服务器上,怎么解决呢?

java上传图片到远程服务器上,怎么解决呢?,第1张

需要这样的一个包 jcifs-1.1.11

public static void forcdt(String dir){

InputStream in = null

OutputStream out = null

File localFile = new File(dir)

try{

//创建file类 传入本地文件路径

//获得本地文件的名字

String fileName = localFile.getName()

//将本地文件的名字和远程目录的名字拼接在一起

//确保上传后的文件于本地文件名字相同

SmbFile remoteFile = new SmbFile("smb://administrator:[email protected]/e$/aa/")

//创建读取缓冲流把本地的文件与程序连接在一起

in = new BufferedInputStream(new FileInputStream(localFile))

//创建一个写出缓冲流(注意jcifs-1.3.15.jar包 类名为Smb开头的类为控制远程共享计算机"io"包)

//将远程的文件路径传入SmbFileOutputStream中 并用 缓冲流套接

out = new BufferedOutputStream(new SmbFileOutputStream(remoteFile+"/"+fileName))

//创建中转字节数组

byte[] buffer = new byte[1024]

while(in.read(buffer)!=-1){//in对象的read方法返回-1为 文件以读取完毕

out.write(buffer)

buffer = new byte[1024]

}

}catch(Exception e){

e.printStackTrace()

}finally{

try{

//注意用完 *** 作io对象的方法后关闭这些资源,走则 造成文件上传失败等问题。!

out.close()

in.close()

}catch(Exception e){

e.printStackTrace()}

}

}

其实有几种方式的,

1 ftp传输应用情况,加入在linux系统端有一些文件需要下载到用户电脑client端,而linux系统又不是web服务器,那么可以通过java程序FTP方式登录到linux,读取文件转换为流输出到用户IE端, java访问Linux服务器读取文件 所需jar包:j2ssh-core-0.2.2.jar

2 socket方式,可以应用于比如server-client 聊天窗,传输文字;

3 http协议,这种就是最常用的了,比如打开IE下载,上传东西,java是通过jsp servlet来实现的,然后部署放在tomcat web 服务器上,在其他局域网环境下的电脑登录IE即可访问到。没有特殊jar,只用java servlet的jar即可。例子如附件,可能上传不成功哈,百度百度会有很多哈

方法1,imp是oracle提供的系统命令,在cmd下可以调用,故可以通过java.lang.Runtime包里的exec来实现。具体你去看看手册。

这个方法的前提条件是必须服务器在cmd下能执行imp命令,如果是linux的服务器,也只要能执行同样调用。

方法2,通过sql语句实现。

就是自己实现备份,恢复。不使用oracle内部的命令。

原理就是检索出所有的对象,然后写入文件,这里要注意分批导出与分批导入(也就是多个文件),不然数据量大了,速速就很慢。

导出数据,存储过程,触发器,视图,权限等。这个就看你的需求了。。

然后在分析文件实现导入。。

3,自己编写系统程序,实现导入功能,仍然通过Runtime.exec来调用。

4,因为imp是系统命令,你用stmt来调用是不对的,这个stmt只能执行sql语句,是oracle来分析的,所以会报错不是有效的sql语句。

你换runtime.exec来执行,我想应该会成功的。。。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/8074725.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-13
下一篇 2023-04-13

发表评论

登录后才能评论

评论列表(0条)

保存