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

针对Jwebap配置设计改造的需求,本文介绍了当前面临的问题及挑战,并提出了初步解决方案,包括配置文件定义、配置API设计等内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这几天,一直非常苦恼,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里面包含两个标签
[code]
<component>
<class></class>
<property name=''></property>
<property name=''></property>
...
</component>
...
<dispatcher>
<class></class>
<url-pattern></url-pattern>
<property name=''></property>
<property name=''></property>
...
</dispatcher>
[/code]

对于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:[url]jwebap.sf.net[/url]
blog:[url]leadyu.iteye.com[/url]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值