自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 收藏
  • 关注

原创 调用webservice的方式解析

webservice:就是应用程序之间跨语言的调用1.xml:通过xml格式说明调用的地址方法如何调用2.wsdl: webservice description language web服务描述语言3.soap simple object access protoacl (简单对象访问协议)     客户端调用WebService的方式:1.通过wximport生成代码

2015-08-28 15:31:24 727

原创 一个服务接口的多个实现的选择

OSGI中使用接口来定义服务,所以每个服务理论上都是可以有多个不同的实现。在这种情况下,如果不做任何指定,Felix框架在通过ServiceReference获取服务对象时,会返回其中一个服务实现。具体Felix如何选择多个实现中的一个,算法尚不明确。但是我们程序中不能指望这个不确定的服务实现,所以必须通过某种方法,指定需要的服务实现。具体方法有一下几种:1.在代码中通过调用context

2015-08-10 14:55:59 2148

原创 插件启动顺序控制

在使用obr的时候,用deploy -s命令部署和启动插件,如果一个插件有依赖的插件,felix可以自动计算出来并部署启动所依赖的插件,这样保证了被依赖的启动,由于使用了ipojo,可以自动注入依赖的服务,并启动那些一开始依赖不满足而未启动的pojo,这样就可以在不用特别关注插件启动顺序的情况下,确保所有插件正确启动了。但是在开发groovy插件时,碰到一个情况,就是groovy插件pom

2015-08-10 14:54:04 1570

原创 主机命令执行

JAVA中使用Process p = Runtime.getRuntime().exec("命令内容"),可以执行所在主机的命令,执行结果通过Process对象的两个Stream返回,一个是getInputStream(),一个是getErrorStream()。直接获得这两个输入流,并判断流的内容,很难控制先后关系,并且无法准确判断命令是否执行成功。一个比较好的解决方法是ProcessBuild

2015-08-10 14:50:19 620

原创 本地IP获取

使用JAVA程序,获取本机所有网络连接的IP,最简单直接的方法是:InetAddress[] ias = InetAddress.getAllByName(InetAddress.getLocalHost().getHostName());for (InetAddress ia : ias) {        System.out.println(ia.getHostAdd

2015-08-10 14:49:23 437

原创 使用脚本批量执行GOGO命令

FELIX框架自带了GOGO shell,提供命令行,用于OSGI框架和插件的操作。可以使用source filename.tsl的命令,来批量执行编写在filename.tsl文件中的多个命令,方便了多个命令的重复执行。尝试写了一个install.tsl,目的是在启动felix后,把我们自己开发的插件安装好,内容如下:echo refresh local obrr

2015-08-10 14:47:11 1307

原创 OSGI(Felix)项目开发和持续集成流程

一.本机开发在JIRA接受开发任务,在开发者设备(本机)的IDE(推荐使用纯Eclipse3.7及以上,不推荐使用MyEclipse,要求必须安装maven和maven的Eclipse插件),创建Java-Maven项目。编辑pom.xml,确保使用maven-bundle-plugin生成OSGI插件项目。开发功能代码。本部门OSGI插件项目的命名规则初步约定如下:com.ailk.ca

2015-08-10 14:43:45 1943

原创 OSGI中引用外部包的几种方法

在JAVA程序中,用到外部包中的类几乎是必然的事情,在OSGI和MAVEN环境下,引用外部包的方法总结如下:1.java.开头的包,是JDK提供了,代码中直接import。2.org.osgi开头的(包括core、compendium等),是osgi规范提供的,已经包含在osgi框架(Felix)中,开发时需要导入,但是发布程序中不需要包含,由Felix提供,实现方法是添加scop

2015-08-10 14:41:23 9628 1

原创 使用BND工具把普通JAR变成OSGI插件

我们自己开发的插件可以使用maven-bundle-plugin来实现插件打包,特别是MENIFEST.MF文件的创建。很多第三方资源jar包已经包含了OSGI信息,可以直接当作插件运行。但是还是有很多必须用到的第三方JAR在MENIFEST.MF中没有插件信息,不能直接在FELIX中运行。虽然我们可以通过把这些jar嵌入到我们自己的插件项目中来使用,但是这样还是不太方便,因为我们仅仅是使用这些j

2015-08-10 14:40:00 2643

原创 spark-submit提交kafka测试

spark-submit --jars /home/aus/spark/lib/spark-streaming-kafka_2.10-1.0.0.jar,/home/aus/spark/lib/kafka_2.8.0-0.8.1.jar --master spark://10.21.17.202:7074 --class KafkaWordCount /home/aus/spark/data/

2015-08-10 10:12:16 2265

原创 spark各种函数解析

1.combineByKey:使用用户设置好的聚合函数对每个Key中的Value进行组合(combine)。可以将输入类型为RDD[(K, V)]转成成RDD[(K, C)]。函数原型def combineByKey[C](createCombiner: V => C, mergeValue: (C, V) => C,    mergeC

2015-08-10 10:08:16 2465

原创 Spark-sql支持的sql语法

版本:1.3.0 protected val ABS = Keyword("ABS")  protected val ALL = Keyword("ALL")  protected val AND = Keyword("AND")  protected val APPROXIMATE = Keyword("APPROXIMATE")  protected val AS = 

2015-08-10 10:06:30 4604 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除