① 如何用java实现异地文件的上传
用http请求读取其他机子上的文件,然后写入本地
② java上传图片到远程服务器上,怎么解决呢
不好实现,网上有方法说用FTP,但是不会用啊,找了一个 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();
③ java 文件上传 程序部署在linux上 怎么将文件上传到局域网的另外一台电脑上,不在部署程序的那台电脑上。
你所说的就是把文件传到别的电脑里,如果是这样的话,你可以这样做:
1,如果目的主机是linux操作系统的话,你可以用:
scp -rp java绝对目录 root@目的主机IP:+目录名
2,如果目的主机是Windows系统的话,你可以创建一个samba服务或者ftp服务来实现文件的共享。
④ 用webuploader怎么解决跨域上传文件的问题
你好,
跨域请求前浏览器会自动发出一个options请求,如果服务器的响应头部中有如下信息:
Access-Control-Allow-Origin: #允许访问的源,如ht localhost:3000
Access-Control-Allow-Methods: #允许的方法,如get, post
浏览器收到这个响应就会继续原来的请求,否则就会终止。
在webuploader中可以在uploadBeforeSend的回调中设置请求的头部,例如
uploader.on('uploadBeforeSend', function(obj, data, headers) {
_.extend(headers, {
"Origin": "h /localhost:3000",
"Access-Control-Request-Method": "POST"
});
});
在服务端的post响应中增加头部:Access-Control-Allow-Origin //localhost:3000
完整配置参考:
跨域请求的问题 · Issue #1265 · fex-team/webuploader · GitHub
还有相关讨论
麻烦讲一下跨域的相关配置,谢谢! · Issue #135 · fex-team/webuploader · GitHub
⑤ Java cookie的跨域问题怎么在前端域名下添加cookie
假设你的前端站点域名为www.xxx.com 后端数据接口域名为 api.xxx.com
通常有以下2种解决方案
cookie写入的时候写入xxx.com域下不要写到www.xxx.com或者api.xxx.com下
在www.xxx.com中配置反向代理,将www.xxx.com/api代理到api.xxx.com,然后cookie就正常的写到www.xxx.com域下就可以了
⑥ java如何将文件上传其他服务器上 我的文件系统准备单独弄个系统,如何将文件上传到那个系统里
在目标系统上装个ftp服务器,然后用ftp协议上传文件
或者在目标机器上装linux,就可以使用rsync, scp等方法传了
⑦ java为什么会有跨域问题
前言
相信大家在写前端脚本的时候经常会遇到发送数据到后台的情况,但是由于浏览器的限制,不同域名之间的数据是不能互相访问的,那前端怎么和后端如何进行数据之间的交换呢?
JavaScript由于安全性方面的考虑,不允许页面跨域调用其他页面的对象,那么问题来了,什么是跨域问题?
答:这是由于浏览器同源策略的限制,现在所有支持JavaScript的浏览器都使用了这个策略。那么什么是同源呢?所谓的同源是指三个方面“相同”:
域名相同
协议相同
端口相同
下面就举几个例子来帮助更好的理解同源策略。
URL
说明
是否允许通信
http://www.a.com/a.js
http://www.a.com/b.js 同一域名 允许
http://www.a.com/a.js
http://www.b.com/a.js 不同域名 不允许
http://www.a.com:8000/a.js
http://www.a.com/b.js 同一域名不同端口 不允许
https://www.a.com/a.js
http://www.a.com/b.js 同一域名不同协议 不允许
在JAVA中处理跨域问题,通常有以下两种常用的解决方法。
第一种解决方法
后台代码在被请求的Servlet中添加Header设置:
Access-Control-Allow-Origin这个Header在W3C标准里用来检查该跨域请求是否可以被通过,如果值为*则表明当前页面可以跨域访问。默认的情况下是不允许的。
在前端JS中需要向Servlet发出请求,请求代码如下所示:
第二种解决方法
通过jsonp跨域请求的方式。JSONP和JSON虽然只有一个字母的区别,但是他们完全就是两回事,很多人很容易把他们搞混。JSON是一种数据交换的格式,而JSONP则是一种非官方跨域数据交互协议。
首先来说一下前端JS是怎么发送请求。代码如下所示:
这里的callbackparam和success_jsonpCallback可以理解为发送的data数据的键值对,可以自定义,但是callbackparam需要和后台约定好参数名称,因为后台需要获取到这个参数里面的值(即success_jsonpCallback)。
下面,最重要的来了,后台怎么样获取和返回数据呢。代码如下所示:
首先需要获取参数名为callbackparam的值,这里获取到的值就是“success_jsonpCallback”。然后将这个值加上一对小括号。小括号里放入你需要返回的数据内容,比如这里我返回一个JSON对象。当然你也可以返回其他对象,比如只返回一个字符串类型数据也可以。最后前端JS返回的数据就是这样的:
浏览器会自动解析为json对象,这时候你只需要在success回调函数中直接用data.status就可以了。
⑧ 如何用java程序实现上传文件到指定的URL地址
参考代码如下:
import java.io.*;
/**
* 复制文件夹或文件夹
*/
public class CopyDirectory {
// 源文件夹
static String url1 = "f:/photos";
// 目标文件夹
static String url2 = "d:/tempPhotos";
public static void main(String args[]) throws IOException {
// 创建目标文件夹
(new File(url2)).mkdirs();
// 获取源文件夹当前下的文件或目录
File[] file = (new File(url1)).listFiles();
for (int i = 0; i < file.length; i++) {
if (file[i].isFile()) {
// 复制文件
File(file[i],new File(url2+file[i].getName()));
}
if (file[i].isDirectory()) {
// 复制目录
String sourceDir=url1+File.separator+file[i].getName();
String targetDir=url2+File.separator+file[i].getName();
Directiory(sourceDir, targetDir);
}
}
}
// 复制文件
public static void File(File sourceFile,File targetFile)
throws IOException{
// 新建文件输入流并对它进行缓冲
FileInputStream input = new FileInputStream(sourceFile);
BufferedInputStream inBuff=new BufferedInputStream(input);
// 新建文件输出流并对它进行缓冲
FileOutputStream output = new FileOutputStream(targetFile);
BufferedOutputStream outBuff=new BufferedOutputStream(output);
// 缓冲数组
byte[] b = new byte[1024 * 5];
int len;
while ((len =inBuff.read(b)) != -1) {
outBuff.write(b, 0, len);
}
// 刷新此缓冲的输出流
outBuff.flush();
//关闭流
inBuff.close();
outBuff.close();
output.close();
input.close();
}
// 复制文件夹
public static void Directiory(String sourceDir, String targetDir)
throws IOException {
// 新建目标目录
(new File(targetDir)).mkdirs();
// 获取源文件夹当前下的文件或目录
File[] file = (new File(sourceDir)).listFiles();
for (int i = 0; i < file.length; i++) {
if (file[i].isFile()) {
// 源文件
File sourceFile=file[i];
// 目标文件
File targetFile=new
File(new File(targetDir).getAbsolutePath()
+File.separator+file[i].getName());
File(sourceFile,targetFile);
}
if (file[i].isDirectory()) {
// 准备复制的源文件夹
String dir1=sourceDir + "/" + file[i].getName();
// 准备复制的目标文件夹
String dir2=targetDir + "/"+ file[i].getName();
Directiory(dir1, dir2);
}
}
}
}
⑨ Java怎样实现跨服务器文件上传
另一台机器也要有处理文件上传的WEB程序,你可以参考Stream上传插件(支持HTML5和Flash两种方式上传)
Stream 上传插件
Stream 是解决不同浏览器上传文件的插件,是Uploadify的Flash版和Html5版的结合!
Stream 简介
Stream 是根据某网的文件上传插件加工而来,支持不同平台(Windows, Linux, Mac, Android, iOS)下,主流浏览器(IE7+, Chrome, Firefox, Safari, 其他)的上传工作,当然在Html5标准下,还支持文件的断点续传功能,有效解决大文件的Web上传问题!
主要特征
1. 源码完全开放,目前有Java、PHP、Perl三种后台语言实现
2. 支持HTML5、Flash两种方式(跨域)上传
3. 多文件一起上传
4. HTML5支持断点续传,拖拽等新特性
5. 兼容性好IE7+, FF3.6+, Chrome*,Safari4+,遨游等主流浏览器
6. 进度条、速度、剩余时间等附属信息
7. `选择文件的按钮`可以自定义
8. 简单的参数配置实现 灵活多变的功能
9. 支持文件夹上传(Chrome21+, Opera15+)
10. 支持自定义UI(V1.4+)
指定跨域上传就可以了
⑩ Java如何做到本地视频跨域名自动上传
“执行的程序” 文件路径
//注意一:程序的路径要打引号,我的迅雷看看在f盘 ,文件在e盘。
//注意二:程序和文件夹路径中间有个空格.
根据下面的代码自己修改吧
1
Runtime.getRuntime().exec("\"f:\\Program Files (<a href="https://www..com/s?wd=x86&tn=44039180_cpr&fenlei=-n1m4uhP-qkIyN1IA-EUBtdPHbdnHmvn1m3P1DzrHTdnWf" target="_blank" class="-highlight">x86</a>)\\Thunder Network\\Xmp\\Program\\XMP.exe\" e:\\mp4\\<a href="https://www..com/s?wd=high%E6%AD%8C&tn=44039180_cpr&fenlei=-n1m4uhP-qkIyN1IA-EUBtdPHbdnHmvn1m3P1DzrHTdnWf" target="_blank" class="-highlight">high歌</a>.mp4");