欢迎来到天天文库
浏览记录
ID:37947847
大小:61.00 KB
页数:6页
时间:2019-06-03
《3.6和3.7osgi入门》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、对于bundle使用1:视频60:30分钟如何快速查找自己的工程进行管理?2;会不会出现版本过低问题:影响使用?3,相当于我们自己写架包直接用,那么服务器功能模块是否全部写入架包中,服务端只是获取客户端数据调用架包来实现相应功能,类似于封装调用?42、ayAnyThing"bind="setSayAnyThing"unbind="unSetSayAnyThing"18图2.1.B引入需要的包cardinality="1..1"policy="dynamic"/>上面的这段XML表示我要声明一个名为SingASong的Component,其实现类为needservicebundle.SingASong,引用了服务servicebundle.ISayAnyThing,并将其引用命名为Say,在引用服务成功后,会调用绑定方法setSayAnyThing将其注入到needservicebundle3、.SingASong类中,在被引用的服务停止时,会执行unSetSayAnyThing方法,cardinality="1..1"表示这个Component对其被引用服务强制依赖,必须至少有一个被引用服务存在时Component才能启动;policy="dynamic"表示当被引用服务变动时,会重新调用set和unset方法,但是Component不会重新生成。reference元素的各个属性的具体意义和选错误:丢失问题,自以为是随意改动,引以为戒新建bundle接口:新建接口interface》实现接口:新建类class,implements实现接口封装bundle4、其他调用:新建osgi-inf文件夹,里面新建xml文件,配置manifest-mf里面Service-Component:OSGI-INF/work.xml;,xml配置:这边新建SingASongpublicclassSingASong{ISayAnyThingsayAnyThing;publicvoidactivate(ComponentContextctxt){sayAnyThing.sayHello("O...O...O...Onlyyou...");//调用方法}publicvoiddeactivate(ComponentContextctxt){say5、AnyThing.sayHello("O...O...O个头...");}publicISayAnyThinggetSayAnyThing(){returnsayAnyThing;}publicvoidsetSayAnyThing(ISayAnyThingsayAnyThing){this.sayAnyThing=sayAnyThing;//寻找类System.out.println("注入服务成功!");}publicvoidunSetSayAnyThing(ISayAnyThingsayAnyThing){this.sayAnyThing=null;System6、.out.println("注销服务成功!");}}Bundle里面的xml配置:Servi7、ce-Component:OSGI-INF/componets.xml这边匹配SingASongOsgi与spring整合:Osgi配置:Spring-Context:SPRING-INF/
2、ayAnyThing"bind="setSayAnyThing"unbind="unSetSayAnyThing"18图2.1.B引入需要的包cardinality="1..1"policy="dynamic"/>上面的这段XML表示我要声明一个名为SingASong的Component,其实现类为needservicebundle.SingASong,引用了服务servicebundle.ISayAnyThing,并将其引用命名为Say,在引用服务成功后,会调用绑定方法setSayAnyThing将其注入到needservicebundle
3、.SingASong类中,在被引用的服务停止时,会执行unSetSayAnyThing方法,cardinality="1..1"表示这个Component对其被引用服务强制依赖,必须至少有一个被引用服务存在时Component才能启动;policy="dynamic"表示当被引用服务变动时,会重新调用set和unset方法,但是Component不会重新生成。reference元素的各个属性的具体意义和选错误:丢失问题,自以为是随意改动,引以为戒新建bundle接口:新建接口interface》实现接口:新建类class,implements实现接口封装bundle
4、其他调用:新建osgi-inf文件夹,里面新建xml文件,配置manifest-mf里面Service-Component:OSGI-INF/work.xml;,xml配置:这边新建SingASongpublicclassSingASong{ISayAnyThingsayAnyThing;publicvoidactivate(ComponentContextctxt){sayAnyThing.sayHello("O...O...O...Onlyyou...");//调用方法}publicvoiddeactivate(ComponentContextctxt){say
5、AnyThing.sayHello("O...O...O个头...");}publicISayAnyThinggetSayAnyThing(){returnsayAnyThing;}publicvoidsetSayAnyThing(ISayAnyThingsayAnyThing){this.sayAnyThing=sayAnyThing;//寻找类System.out.println("注入服务成功!");}publicvoidunSetSayAnyThing(ISayAnyThingsayAnyThing){this.sayAnyThing=null;System
6、.out.println("注销服务成功!");}}Bundle里面的xml配置:Servi
7、ce-Component:OSGI-INF/componets.xml这边匹配SingASongOsgi与spring整合:Osgi配置:Spring-Context:SPRING-INF/
此文档下载收益归作者所有