1. RMI Service Interface
package com.sinosuperman.rmiio2;
import java.rmi.Remote;
import java.rmi.RemoteException;
import com.healthmarketscience.rmiio.RemoteInputStream;
public interface RmiioService2 extends Remote {
public void sendFile(String fileName, RemoteInputStream inFile) throws RemoteException;
}
2. RMI Service Implementation Class
package com.sinosuperman.rmiio2;
import java.io.BufferedInputStream;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.Serializable;
import java.rmi.RemoteException;
import java.rmi.server.UnicastRemoteObject;
import com.healthmarketscience.rmiio.RemoteInputStream;
import com.healthmarketscience.rmiio.RemoteInputStreamClient;
public class RmiioServiceImpl2 extends UnicastRemoteObject implements Serializable, RmiioService2 {
private static final long serialVersionUID = -5776252535031796604L;
public RmiioServiceImpl2() throws RemoteException {
}
@Override
public void sendFile(String fileName, RemoteInputStream inFile) throws RemoteException {
try {
InputStream inStream = RemoteInputStreamClient.wrap(inFile);
store(inStream, "temp" + File.separator + fileName);
} catch (IOException e) {
e.printStackTrace();
}
}
private static void store(InputStream inStream, String filePath) {
try {
BufferedInputStream inStreamBuff = new BufferedInputStream(inStream);
FileOutputStream fileOutStream;
fileOutStream = new FileOutputStream(filePath);
int size = 0;
byte[] byteBuff = new byte[1024];
while ( (size = inStreamBuff.read(byteBuff)) != -1) {
fileOutStream.write(byteBuff, 0, size);
}
fileOutStream.close();
inStreamBuff.close();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
分享到:
相关推荐
Struts——Menu示例教程 Struts——Menu示例教程 Struts——Menu示例教程
ASP.NET源码——[电子商务].Net Session购物车示例.zip
这个是调用支付宝的示例源码,希望帮助到有这方面需求的朋友
使用iServer JAVA API访问iServer数据服务进行数据操作示例工程,博客地址: http://blog.csdn.net/supermapsupport/article/details/71107998
安卓Android源码——精典源码之OPENG开发的示例代码.zip
安卓Android源码——精典源码之嵌套TabHost示例.zip
《实战Java虚拟机——JVM故障诊断与性能优化》内容简介:随着越来越多的第三方语言(Groovy、Scala、JRuby等)在Java虚拟机上运行,Java也俨然成为一个充满活力的生态圈。本书将通过200余示例详细介绍Java虚拟机中的...
安卓Android源码——安卓Android摇一摇功能示例源码.rar
ASP.NET源码——ASP.NET2.0支持多语言示例源码.zip
MapReduce Java API实例-统计单次出现频率示例代码-MapReduceDemo.rar MapReduce Java API实例-统计单次出现频率示例代码-MapReduceDemo.rar MapReduce Java API实例-统计单次出现频率示例代码-MapReduceDemo.rar
安卓Android源码——安卓Android摇一摇功能示例源码.zip
ASP.NET源码——.NET多条件无刷新查询示例源码.zip
安卓Android源码——支付宝控件接口示例源码.zip
安卓Android源码——ui开发类库示例源码.zip
SpringBoot api接口入门级示例源码.zip
java————23种设计模式-UML-类图及对应示例代码.doc