OSGI中,以Web Service的方式提供文件上传的接口
来源:互联网 发布:淘宝靠谱日代推荐 编辑:程序博客网 时间:2024/05/17 00:03
OSGI中,以Web Service的方式提供文件上传的接口/** * TODO 本系统提供的文件上传接口<br> * */@OSGiService(interfaces = { IUpLoadService.class }, properties = {"service.exported.interfaces=*","org.apache.cxf.ws.httpservice.context=/services/jxnTest/UpLoadService" })@Componentpublic class UpLoadService implements IUpLoadService{public String upLoadFile(final byte[] fileByteArray) {//创建一个保存文件的输出流File file = new File("D:\\其它系统传过来的文件.zip");FileOutputStream fos = null;try {fos = new FileOutputStream(file);fos.write(fileByteArray);fos.close();} catch (IOException e) {e.printStackTrace();}return "beautiful";}}说明:1)通过@OSGiService注解来发布注册web服务。"org.apache.cxf.ws.httpservice.context=/services/jxnTest/UpLoadService" 指定wsdl文件的地址。2)控制台打印信息:Successfully registered CXF DOSGi servlet at /services/jxnTest/UpLoadService 表明web服务注册发布成功。3)接口方法中传递的参数类型必须是可序列化的。-----------------------------------------------------------------/** * TODO 其它系统调用这个文件上传接口的客户端<br> * @author Administrator <br> */public class UploadClient {public static void main(final String[] args) throws Exception {File file = new File("D:\\要上传的文件.zip");FileInputStream fis = new FileInputStream(file); ByteArrayOutputStream bos = new ByteArrayOutputStream(1024); byte[] buffer = new byte[1024];while (fis.read(buffer) != -1) { bos.write(buffer); } fis.close(); bos.close(); // 使用 ByteArrayOutputStream 创建一个字节数组byte[] fileBuffer = bos.toByteArray();// 调用其它系统提供的webService接口// 注意:在eclipse中,可以通过 新建-其他-Web Services-Web Service Client,然后输入wsdl文件的地址,即可生成客户端调用代码;// -->类IUpLoadServicePortTypeProxy就是通过上面这种方法生成的。IUpLoadServicePortTypeProxy proxy = new IUpLoadServicePortTypeProxy();proxy.upLoadFile(fileBuffer);System.out.println("client finish!");}}环境:jdk1.6说明:1)测试结果:JVM参数设为-Xmx1024m -Xms512m 时,通过字节数组的方式最大可以上传85M的文件。
0 0
- OSGI中,以Web Service的方式提供文件上传的接口
- 提供天气预报的Web Service接口
- OSGi中获取Service的几种方式
- OSGi中获取Service的几种方式
- OSGi中获取Service的几种方式
- OSGi中获取Service的几种方式
- OSGi中获取Service的几种方式
- OSGI提供服务的三种方式
- 接口的提供方式
- java中通过web service的方式传输文件
- osgi中org.osgi.service.cm bundle组件的使用
- web方式上传文件的问题
- Web上传文件的安全方式
- 现在,以编程方式在 Electron 中上传文件,是非常简单的!
- php5.6关于curl以@方式上传文件的解决方案
- 以 OSGi 包的形式开发和部署 Web 服务
- CXF学习-与Spring结合:使用其他程序提供的web service 接口
- 调用他人提供的Web Service
- Runtime.getRuntime().addShutdownHook关闭钩子介绍
- 如何获取Android系统时间是24小时制还是12小时制
- lucene全文搜索之四:创建索引搜索器、6种文档搜索器实现以及搜索结果分析(结合IKAnalyzer分词器的搜索器)基于lucene5.5.3
- 笔记01——GPU渲染流程
- 如何打开VMware的vmdk虚拟磁盘文件
- OSGI中,以Web Service的方式提供文件上传的接口
- cloudera manager 设置开机自启
- 块元素的作用
- javaScript面向对象编程
- Sublime Text3
- springMVC框架--json数据的交互(四)
- 使用键值对进行本地存储(分类存储、获取)
- 24点表达式去重--c++实现
- av_dump_format函数