`
leadyu
  • 浏览: 51189 次
  • 性别: Icon_minigender_1
  • 来自: 广州,福州
文章分类
社区版块
存档分类
最新评论

Jwebap项目(一)——配置管理的设计

阅读更多
这几天,一直非常苦恼,Jwebap的原先的配置设计需要改造,新的方案一直拿捏不定。先说说Jwebap的一些配置要求:

由于Jwebap的Plug-in架构,配置的要求会更高,主要我想达到以下几个目的:


1)配置的形式,可以由第三方扩展者进行扩展
以后我希望每个plug-in就是一个jar,jar里面带有部署描述,描述jar包实现了几个Component,有什么属性。

2)要能够较好的适应配置的结构变化,由于目前Jwebap配置内容多是由组件主动获取的形式获得,配置结构的与组件的依赖较大

3)解决与jdom的依赖,解决jdom在中间件环境下不兼容的问题

4)能够方便的对配置文件进行读写
主要是想通过控制台可以修改部署的Component的属性


再说说暂定的方案:

1)配置文件定义:jwebap包含自己的配置文件jwebap.xml,在jwebap.xml里面包含两个标签
<component>
   <class></class>
   <property name=''></property>
   <property name=''></property>
   ...
</component>
...
<dispatcher>
   <class></class>
   <url-pattern></url-pattern>
   <property name=''></property>
   <property name=''></property>
   ...
</dispatcher>


对于plug-in对应的jar包里面的部署描述包含如上component定义的结构。

对于组件,配置是透明的,组件主要依赖于三种Context:ComponentContext,DispatcherContext,RuntimeContext。Context的构造由启动时根据配置API获取配置,初始完成。对于RuntimeContext包含所有从各个配置文件里面加载近来的Component对象,plug-in的加载可以采用组合模式完成。

2)配置API:所有的配置项都建立对应的java模型,模型对象采用seter设置配置参数。参看org.jwebap.config.model.*。然后建立配置文件与java对象的映射规则,这里采用了apache的Digister项目完成,它是一个非常好的XML映射工具,下面一篇再跟大家简单介绍下,多亏了这个项目。

不过现在对于配置的保存这块,现在还想不到什么好办法,直接去改plug-in的部署描述,似乎不是很合适。



web site:jwebap.sf.net
blog:leadyu.iteye.com
分享到:
评论

相关推荐

    jwebap_0.6.1

     2) 部署和使用非常的简单,整个Jwebap的部署只需要部署jwebap_core_**.jar以及需要使用的各种plugin_**.jar,然后配置 jwebap.xml和web.xml就可以完成所有的部署,比起绝大多数的profiling容易的多。 同时Jwebap...

    Jwebap使用手册(强烈推荐)

    Jwebap使用手册(强烈推荐),包括配置等。

    Jwebap User Guide 配置网站日志追踪

    NULL 博文链接:https://baobeituping.iteye.com/blog/629793

    jwebap应用

    NULL 博文链接:https://canofy.iteye.com/blog/286490

    jwebap 0.6

    NULL 博文链接:https://sunshinelife.iteye.com/blog/443560

    jwebap_0.5.9_1.jar

    Jwebap的开发分为两个部分Jwebap-core部分,Jwebap-plugin部分。core部分基于jdk14提供了类静态增强,轨迹生命管理,Plugin管理,视图框架等等,在这个基础上开发plugin。我觉得,好的profiling应该能够根据不同的...

    profiler工具Jwebap_0.5.2_alpha版发布

    博文链接:https://leadyu.iteye.com/blog/138576

    jwebap_0.6.0_all.zip

    国内一个开源的profiler分析工具,特点是可以嵌入到web应用中,而不耦合业务代码。

    commontemplate-0.8.1.jar

    commontemplate-0.8.1.jar,是使用jwebap所需要的jar包。没有它,启动会有错误

Global site tag (gtag.js) - Google Analytics