- 浏览: 44935 次
- 性别:
- 来自: 西安
最新评论
-
luojiangbo:
学习了
OSGI服务以及Equinox扩展点注册表对比 -
德安德鲁:
牛人云小白 写道楼主大神级别的教程令无数众人顶礼膜拜。楼主能给 ...
OSGI-Eclipse 扩展点,扩展机制 -
牛人云小白:
楼主大神级别的教程令无数众人顶礼膜拜。楼主能给份工作不?
OSGI-Eclipse 扩展点,扩展机制 -
牛人云小白:
你说这个我没回答上来,是不是人家一听都知道我是没有工作过的。
Log4j,实现加载自定义log4j.xml配置文件,并实现动态监听log4j.xml日志级别更新 -
德安德鲁:
牛人云小白 写道TM的,过了两天一看,还是这一篇旧作,啥时候出 ...
OSGI-自动发现,加载Bundle(jar包)
文章列表
OSGI:
OSGI的体系架构是基于插件式的软件结构,包括一个 OSGI 框架和一系列插件,在 OSGI中,插件称为 Bundle,其中,OSGI框架规范是OSGI规范的核心部分,它提供了一个通用的、安全可管理的 Java 框架,通过这个框架,可以支持 Bundle 服务应用的部署和扩展。Bundle 之间可以通过 Import Package 和 Require-Bundle 来共享 Java 类,在 OSGi 服务平台中,用户通过开发 Bundle 来提供需要的功能,这些 Bundle 可以动态加载和卸载,或者根据需要远程下载和升级
OSGI 架构图: ...
Eclipse的组件架构师基于插件的,这就意味着将一组代码组件化为一个单一的组件,然后利用Eclipse框架注册为组件之一,其他组件可以绑定该组件或者调用该组件。
扩展点是插件允许其他插件向公开扩展点的插件提供附加功能的方法。
插件(Plug-in):
Eclipse功能实现的最小单位,包含了Java代码或者其他文件。插件位于plugins目录下,使用清单文件plugin.xml向系统说明如何继承到平台中。
扩展点(Extension point):
本插件为其他插件提供的接口,插件可以自定义扩展点,也可以实现其他插件的扩展点。
扩展(Exten ...
Xstream常用注解: @XStreamAlias("message") :
别名注解
作用目标: 类,字段
@XStreamImplicit
隐式集合
@XStreamImplicit(itemFieldName="subElementName") 作用目标:
集合字段
@XStreamConverter(SingleValueCalendarConverter.class)
注入转换器 作用目标: 对象
@XStreamAsAttribute 转换成属性 作用目标: 字段
@XStreamOmi ...
在实际开发项目中,大部分产品的日志级别是ERROR级别的,因为这样可以提升系统运行效率,也可以防止INFO日志过多,日志文件很快被写满,以至于系统不能保存长时间的日志。进而造成定位问题不方便。
但是在ERROR级别下可能无法看到系统运行的详细日志信息。有时候需要查看INFO日志。所以最好有一种方法可以在系统运行过程中,动态修改日志级别。
实现动态修改日志级别,有两种办法:
1、利用Log4j提供的类和方法
2、自己实现监控log4j.xml文件更新,并实现动态配置更新。
一、 创建Plug-in Project工程,名为“PluginMgrCenter”,主要实现定时监控给定文件夹下jar包,对未加载的jar包进行加载
1、创建工程
2、工程结构如下图示意:
3、实现Activator类的方法,Activator类的作用,说白了就是该Bundle启动,停止会调用该类覆写的start(),stop()方法。
Activator类的start()方法中,保存osgi框架传进来的BundleContext对象,并启动一个定时任务。
代码如下:
package pluginmgrcenter;
...