一种通过XML动态配置网站的方法技术

技术编号:12388973 阅读:39 留言:0更新日期:2015-11-25 22:18
一种通过XML动态配置网站的方法。用户可以在XML文件中通过扩展标签1<extension>来定义部件,扩展标签1包含一个扩展目标2属性用于指明在页面中加载该类部件的方法类,以及一个扩展点3属性用于指明解析该部件XML内容的解析器,用户可以在扩展标签1中对部件进行配置(如设置插件的显示内容)或组装(如在布局中插入插件),系统启动时会通过扩展点3获取解析该部件的解析器并将该部件的XML内容映射成一个java对象4,页面调用时会通过扩展目标2计算该java对象4(根据运行环境判断是否显示该部件以及根据部件属性生成前台样式)生成网页组件5,从而使得没有编程经验的人仅通过xml就能深入地定制网站。

【技术实现步骤摘要】
所属
本专利技术涉及一种通过XML动态配置网站的方法
技术介绍
XMAP是一个能把XML映射到Java对象的类库,通过对XML中的各标签进行遍历解析,将解析的值放入声明好的java对象中,这样一来可以通过XML配置java对象,达到模块化的效果,但解析的过程很麻烦,需要复杂的代码来实现对每个java对象的映射,不适于新手来操作。
技术实现思路
为了克服现有的XMAP类库不易于操作的不足,本专利技术提供了一套完整的解析器,涵盖了一个网站所必需的各个组成部件(如布局、插件),用户可以通过扩展的方式迅速定位到一个部件的解析器并方便地配置该部件。本专利技术解决其技术问题所采用的技术方案是:在XML文件中通过扩展标签<extension>来定义部件,扩展标签包含一个扩展目标属性用于指明在页面中加载该类部件的方法类,以及一个扩展点属性用于指明解析该部件XML内容的解析器,用户可以在扩展标签中对部件进行配置(如设置插件的显示内容)或组装(如在布局中插入插件),系统启动时会通过扩展点获取解析该部件的解析器并将该部件的XML内容映射成一个java对象,页面调用时会通过扩展目标计算该java对象(根据运行环境判断是否显示该部件以及根据部件属性生成前台样式)生成网页组件,从而使得用户可以通过XML方便地配置网站。本专利技术的有益效果是,可以让没有编程经验的人仅通过xml就能深入地定制产品,包括数据架构和文档类型,表单,生命周期,监听器,网页用户界面(按钮、选项卡、链接、视图、主题),工作流。附图说明>图1是本专利技术的XML配置数据架构、文档类型示意图图2是本专利技术的XML配置目录示意图图3是本专利技术的XML载入目录示意图图4是本专利技术的XML注册插件类型示意图图5是本专利技术的XML实例化插件示意图图6是本专利技术的暴露插件变量示意图图7是本专利技术的插件调用前台模板示意图图8是本专利技术的目录生成词汇树示意图图9是本专利技术的下拉列表显示词汇树示意图图10是本专利技术的提取XML中的扩展框架示意图图11是本专利技术的根据依赖条件挂起、加载扩展框架示意图图12是本专利技术的通过XML配置信息将扩展框架填充完整示意图图13是本专利技术的通过XML配置信息操作插件示意图图14是本专利技术的注册布局示意图图15是本专利技术的提取布局示意图图16是本专利技术的实现布局示意图图17是本专利技术的通过属性配置布局行示意图图18是本专利技术的通过变量映射控制插件模式示意图图19是本专利技术的通过功能映射控制插件模式示意图图20是本专利技术的通过插件模式重用布局示意图图21是本专利技术的通过标记功能测试方法示意图图22是本专利技术的通过插件模式重用插件示意图图23是本专利技术的XML定制网站综述示意图具体实施方式如图1所示,系统启动时会将图1左侧的xml标签语言翻译成图1右侧的数据架构和文档类型,图1中部的代码会对读取的扩展(extension)进行判断:当扩展点(point)为文档类型(doctype)1-1且其标签为文档类型(doctype)1-2时,会用文档类型描述符(DocumentTypeDescriptor)1-3实例化一个文档类型,该例实现的文档类型名叫文件夹(Folder),该文档类型还包括了普通(common)数据架构、都柏林(dublincore)数据架构,文件夹化(Folderish)面元;当扩展点(point)为文档类型(doctype)1-1且其标签为面元(facet)1-4时,会用面元描述符(FacetDescriptor)1-5实例化该名叫文件夹化(Folderish)的面元;当扩展点(point)为架构(schema)1-6时会根据其标签名架构(schema)用架构描述符(SchemaBindDescriptor)1-8实例化该数据架构,该架构的名为dublincore,前缀(prefix)为dc,其引用地址(src)为shcema文件夹下的dublicore.xsd文件1-9,在该例中列出了部分都柏林(dublincore)数据架构属性,包括字符串格式的标题(title)、描述(description)及字符串列表格式的主题(subjects)。如图2所示,系统启动时会根据图2左侧的xml标签语言生成一张连接到postgresql数据库的目录:系统先用SQL目录描述符(SQLDirectoryDescriptor)将110nsubjects目录2-1实例化为配置信息(config)2-2,再将缓存最大容量(cacheMaxSize)2-3和缓存超时时长(cacheTimeout)2-4存入缓存。根据数据源标签(<dataSource>)2-5找到其对应的服务器配置并用获取连接方法(getConnection)2-6获取一个到Postgresql的连接,可以看到生成的连接包括了数据库位置jdbc:postgresql://localhost:5432/postg,用户名postgr。在架构管理(schemaManager)中提取架构名(schemaName)2-7为110nxvocabulary的架构,架构(schema)2-8展示了110nxvocabulary对应的属性,包括string类型的id、parent,该架构被实例化后的样子如2-9所示。提取该架构的各个字段名(fieldName)2-10并将其塞入架构字段表(schemaFieldMap)2-11,当字段名2-12(同2-10)与XML中idField标签2-13中的内容“id”2-14相同时,设定该字段为架构的关键字段并规定其不许为空如2-15所示。该字段的数据类型2-16会被设置为该栏的类型(ColumnType)2-17,如果XML中的Id自动增加标签(autoincrementIdField)2-18中的值为true,会通过条件判断2-19并将该栏的类型设置为AUTOINC。如果该栏在架构中包含默认值2-20,会将该默认值(defaultValue)2-21设置到该栏。最后将通过连接(sqlConnection)2-22(同2-6),刚组建的表(table)2-23,数据文件名(dataFileName)2-24,建表策略(createTablePolicy)2-25来在postgresql数据库中建立名为110nsubjects的表。如图3所示,系统会根据xml中的建表策略、架构及数据源在postgresql数据库中建立该目录并导入数据:当建表策略为从不(never)3-1时直接跳过设置,当建表策略为缺失栏目时建表(on_missing_column)3-2时,会用hasMatchingColumns方法3-3检验是否含有缺失行,该方法会调用getMissingColumns方法3-4来寻找缺失行,该方法会先查找数据库中已存在的同名表(110nsubjects)并获取其各栏目名本文档来自技高网...

【技术保护点】
一种XML配置网站方法,将XML中的内容映射到网站,其特征是:在XML文件中通过扩展标签<extension>来定义部件,扩展标签包含一个扩展目标属性用于指明在页面中加载该类部件的方法类,以及一个扩展点属性用于指明解析该部件XML内容的解析器,用户可以在扩展标签中对部件进行配置(如设置插件的显示内容)或组装(如在布局中插入插件),系统启动时会通过扩展点获取解析该部件的解析器并将该部件的XML内容映射成一个java对象,页面调用时会通过扩展目标计算该java对象(根据运行环境判断是否显示该部件以及根据部件属性生成前台样式)生成网页组件,从而使得用户可以通过XML方便地配置网站。

【技术特征摘要】
1.一种XML配置网站方法,将XML中的内容映射到网站,其特征是:在XML文件中通过扩展
标签<extension>来定义部件,扩展标签包含一个扩展目标属性用于指明在页面中加载该类部
件的方法类,以及一个扩展点属性用于指明解析该部件XML内容的解析器,用户可以在扩展
标签中对部件进行配置(如设置插件的显示内容)或组装(如在布局中插入插件),系统启动
时会通过扩展点获取解析该部件的解析器并将该部件的XML内容映射成一个java对象,页面
调用时会通过扩展目标计算该java对象(根据运行环境判断是否显示该部件以及根据部件属
性生成前台样式)生成网页组件,从而使得用户可以通过XML方便地配置网站。
2.根据权利要求1所述的XML配置网站方法,一种建立目录方法,其特征是:根据director
ies扩展点配置目录,据其数据源属性设置数据库连接方式,据其架构属性设置各栏目名及
其类型,据其数据文件属性载入各词条信息,据其建表策略属性设置目录的数据更新方式。
3.根据权利要求1所述的XML配置网站方法,一种配置插件方法,其特征是:根据widgettypes
扩展点配置插件类型,根据widgets扩展点配置插件,将插件绑定插件类型,插件将继承插
件类型中的前台模板、后台处理方法、布局及属性。
4.根据权利要求3所述的插件配置方法,一种插件显示方法,其特征是:将插件中保存的数
据组装成标签的形式显示到前台,将插件在XML文件中定义的属性作为后台处理程序的判断
条件或封装成标签属性暴露到前台模板,从而通过修改XML深入地影响插件的表现及功能。
5.根据权利要求2所述的建立目录方法,一种显示目录方法,其特征是:获取目录的所有词
条并通过迭代的方式将它们生成一个JSONAdapter树,再通过javascript将其生成一个下拉
列表中可用的词汇树,根据每个词汇的属性为其添加对应的css样式。
6.根据权利要求1所述的XML配置网站方法,一种XML提取方法,其特征是:系统提取插件
的XML信息并将其生成一个只包含扩展目标,扩展点及原XML文件地...

【专利技术属性】
技术研发人员:谢不枯柴文钢
申请(专利权)人:北京织星科技有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1