importjavax.jws.WebMethod;importjavax.jws.WebParam;importjavax.jws.WebService;importnet.bwda.domain.upload.CxfFileWrapper;
@WebService(name= "FileWS", serviceName = "FileWS")public interfaceFileWS {/*** 文件上传
*@paramfile 文件上传包装类
*@return上传成功返回true,上传失败返回false。*/@WebMethodboolean upload(@WebParam(name = "file") CxfFileWrapper file);/*** 文件下载
*@return文件*/@WebMethod
CxfFileWrapper download();
}importjava.io.BufferedOutputStream;importjava.io.File;importjava.io.FileOutputStream;importjava.io.InputStream;importjava.io.OutputStream;importjavax.activation.DataHandler;importjavax.activation.DataSource;importjavax.activation.FileDataSource;importorg.springframework.stereotype.Component;importorg.springframework.stereotype.Service;importnet.bwda.domain.upload.CxfFileWrapper;importnet.bwda.service.upload.FileWS;
@Service
@Component("fileWS")public class FileWSImpl implementsFileWS {public booleanupload(CxfFileWrapper file){boolean result = true;
OutputStream os= null;
InputStream is= null;
BufferedOutputStream bos= null;try{
is=file.getFile().getInputStream();
File dest= new File("d:\\upload\\" +file.getFileName());
os= newFileOutputStream(dest);
bos= newBufferedOutputStream(os);byte[] buffer = new byte[1024*1024];int len = 0;while ((len = is.read(buffer)) != -1) {
bos.write(buffer,0, len);
}
bos.flush();
}catch(Exception e) {
e.printStackTrace();
result= false;
}finally{if(bos != null){try{
bos.close();
}catch(Exception e){
}
}if(os != null){try{
os.close();
}catch(Exception e){
}
}if(is != null){try{
is.close();
}catch(Exception e){
}
}
}returnresult;
}publicCxfFileWrapper download() {//下载文件的路径 String filePath = "D:\\test.xlsx";
CxfFileWrapper fileWrapper= newCxfFileWrapper();
fileWrapper.setFileName("test.xlsx");
fileWrapper.setFileExtension("xlsx");
DataSource source= new FileDataSource(newFile(filePath));
fileWrapper.setFile(newDataHandler(source));returnfileWrapper;
}
}