• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com专业计算机教程网站
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure
您的位置:首页 > 网页设计 >XML/XSLT > 使用XML实现多渠道接入网站的构架

使用XML实现多渠道接入网站的构架

作者:佚名 字体:[增加 减小] 来源:互联网 时间:2017-08-06

本文主要包含网页制作,网页,构架,网站,实现,接入,使用,",>,<等相关知识,佚名 希望在学习及工作中可以帮助到您

  其实写这篇文章的目的最多的想法是把自己在去年在瑞士做项目时应用的一个框架给展现出来让大家共享,但我又有点担心我的表达能力不能将我在里面使用的思想很好的表现出来,所以迟迟 不敢下笔,最后还是下了决心,写吧, 不行就在好好改改,当然也希望大家多提些意见。
  一.背景
  在现在的网站中,接入的渠道是越来越多了,技术也是越来越先进,WAP, SMS,EMAIL, 传统的Web, Socket等等,如果连数据库和LDAP也算接入的话,那在设计之中需要扩展的空间要做到很好 很好,才保证在添加新的渠道情况下不需要更多的修改代码甚至不改代码的情况。但可能吗?我想也不可能,但有什么方式可以更好的解决这种多渠道接入的框架的完美性呢?
  二.构架 使用XML实现多渠道接入网站的构架
  【图一】
  如图一所显示,在现有的所有接入都已经使用上的时候,设计者看的都眼花缭乱了,如果是为了凑份子,那这些程序怎么写都可以,而且也肯定可以实现,但维护起来就会比较痛苦,还是回到那个问题,怎么可以实现更完美呢?在项目组的构架讨论中,我提出了路由的感念,并得到了大
  家统一的认可,如图二显示 使用XML实现多渠道接入网站的构架
  【图二】
  图二看起来象个八爪的章鱼,章鱼腿分别连接所有的接入渠道,进行连接所有这些渠道的核心就是这个章鱼的头XMLRouter,Router在此的作用是沟通所有渠道,实现数据的路由,争强系统在构架上的扩展性和灵活性,好处会很多很多。称呼为XMLRouter是因为如果不使用XML这种灵活而又规范的语言来做为数据传输的媒介,那Router的工作量也同样会成倍的增加,定义好XML的规范后将为以后的扩展带来很多好处.
  三.思想和模式
  XMLRouter的最初想法来自于计算机的主板和<<Design Pattern>>之中的Builder Pattern, 计算机主板的PCI 插槽定义了PCI的规范,只要你生产的卡符合PCI标准,那你插入到这个主板上就可以工作, 至于里面是怎么工作的则是已经封装好了. Builder Pattern则是提出将复杂的构建分离开来, 一步一步的进行实现.XMLRouter是将这些复杂的渠道分离开来,一个个的进行表现.
  Services思想:为了能和Router进行沟通,在这些渠道接入时必须定义统一的接口,这里成为Services, 只要符合Services规范的程序就可以接入到Router并进行数据的路由.
  Factory模式和Composite模式
  XMLRouter在实际的设计中将采用Factory模式产生,Router由RouterFactory生产, 在投入使用时将放置于队列中,传递数据和接收数据以及返回数据都从队列中取相应的Router来调用,应用了Composite的模式.
  四.XML配置文件
  XML文件对于Router之中的使用分为两个部分, 第一个是Router的配置,如:
  <?xml version="1.0" ?>
<services>
   <!-- database Service -->
   <service name="database" type="database" class="com.web.service.DBService">
   <connector
       driver="com.microsoft.jdbc.sqlserver.SQLServerDriver"
       url="jdbc:microsoft:sqlserver://192.168.0.179:1433" user="test"
       passwd="test" />
   </service>
   <!-- Web Service-->
   <service name="web" type="web" class="com.web.service.WebService" >
     <connector />
   </service>
……
</services>

  这是Router的配置文件, service节点代表需要接入的渠道, service节点包含connector子节点, 子节点的配置根据type来区分, 如果是database则包含url, user, passwd,driver等属性, 如果是socket则包含 port, maxthread等属性, 属性值可以根据自己的定义来配置.
  另一种XML文件则是XML交易数据文件,用于在所有的services中传递数据,每个Services自己包涵一个相应的XML文件,比如webtrans.xml格式如下:
  <?xml version="1.0" ?>
<transaction>
   <trans name="addDoc" service="database" method="insert">
     <property name="createtime" type="timestamp"/>
     <property name="creatorid" type="long"/>
     <property name="doctypeid" type="int"/>
     <property name="docstatusid" type="int"/>      
   </trans>    
</transaction>

  相应的dbtrans.xml格式如下
  <trans name="addDoc" table="TDOC_DOCS" method="insert">
     <primarykey name="docid" />    
     <set>
       <property name="createtime" type="timestamp"/>
       <property name="creatorid" type="long"/>
       <property name="doctypeid" type="int"/>
       <property name="docstatusid" type="int"/>      
     </set>
   </trans>

您可能想查找下面的文章:

  • XML入门教程:XLink-XML/XSLT
  • XML入门教程:XPath-XML/XSLT
  • XML入门教程:CSS样式表-XML/XSLT
  • XMLHTTPRequest对象-XML/XSLT
  • XML入门教程:XSLT-XML/XSLT
  • WAP教程(1):WAP 简介-XML/XSLT
  • WAP教程(9):WML 实例-XML/XSLT
  • WAP教程(2):WAP 基础-XML/XSLT
  • WAP教程(8):WML 变量-XML/XSLT
  • WAP教程(3):WML 格式化-XML/XSLT

相关文章

  • 2017-08-06(javascript+asp)XML、XSL转换输出HTML
  • 2017-08-06XML教程:XML有哪些用途?
  • 2017-08-06XML教程:什么是XML及XML和HTML的区别
  • 2017-08-06了解WEB页面工具语言XML(五)好处
  • 2017-08-06XMLHTTPRequest对象-XML/XSLT
  • 2017-08-06WAP教程(9):WML 实例-XML/XSLT
  • 2017-08-06了解WEB页面工具语言XML(三)支持工具
  • 2017-08-06编写SVG布置画布和坐标系统以及视窗的方法
  • 2017-08-06简单了解XML中的处理指令
  • 2017-08-06什么是XML?

文章分类

  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure

最近更新的内容

    • 历数Firefox2.0对XML处理的改进
    • WAP教程(7):WML 计时器-XML/XSLT
    • 网页制作关于代码的18个小技巧
    • 了解WEB页面工具语言XML(五)好处
    • XML入门教程:XPath-XML/XSLT
    • 了解WEB页面工具语言XML(四)应用分类
    • 用javascript操作xml方法与技巧
    • 详解XML中的代码注释书写方法
    • XML模式:DocBook XM
    • 什么是XSL?

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有