基于XML的通用信息发布服务
1.无需注册登录,支付后按照提示操作即可获取该资料.
2.资料以网页介绍的为准,下载后不会有水印.资料仅供学习参考之用.
密 惠 保
摘 要
随着Internet的飞速发展,Web的出现改变了人们习惯的处理方式,也给数据库技术提出了必须面对的重要问题:即如何有效地存储和管理Web上的数据或者文档,使其既能被高效地操作和维护,又能在Internet平台上方便地表示和交换。 XML技术自出现以来发展非常迅速,在许多领域内得到广泛的支持,而且拥有着广阔的应用前景。在现在的很多实际应用中,例如电子数据交换、电子商务等更是将XML作为一种基础性、支柱性的技术来看待。
本文讲述的是基于XML数据库的一个图书信息管理系统的设计与实现,该系统利用struts, spring,JDOM,schema等技术,基于多层系统架构来实现了图书信息的管理的各个功能模块,包含了对通用新闻信息的发布,书籍资源、读者资源、借书信息、还书信息等信息进行管理的设计和实现,并且介绍了采用这些技术以及系统框架的优点。本系统没有用到传统的关系型数据库,而是采用了XML作为数据库来保存数据信息,文章最后对XML的原生数据库的现状进行了分析,并展望了其未来的发展趋势。 内容来自think58 [资料来源:www.THINK58.com]
关键字:Struts, Spring, JDOM, XML, Schema,原生数据库
表现层
表现层这一层是面向用户的界面,是用户与系统之间交互的媒介。这层主要负责的内容是用户在界面发送请求, 系统接收请求,进行处理,然后通过界面将处理的结果呈现于用户。这一过程包括了用户动作、数据传递、界面显示。MVC模式就是将这三者分离,减少三者耦合。 Struts所负责的内容就是管理用户的请求,做出相应的响应,然后提供一个Controller ,委派调用业务逻辑和其它上层处理,最后为显示提供一个模型。
所以我在表现层借助了Struts来实现: 用ActionForm类封装与用户互动的数据元素。 用Action类实现业务逻辑、动作处理、链接转向。实现MVC中的C控制。借助Struts标签来完成数据呈现。实现MVC中的V显示。
3.2.2 业务层
在实际企业的项目开发中,针对每个不同领域和项目都会有自己独特的业务逻辑,一个典型Web应用的中间部分是业务层或者服务层,如果项目中代码高度耦合,那么原本有可能被重用的代码或功能,因为与具体的业务逻辑绑定在一块而导致很难被重用。而且在软件项目中,需求的变更是无法避免的,因此我们将实现这些具体逻辑的代码抽取出来分为单独的一层, 其目的是希望通过层,来降低它与系统其他部分的耦合度,这样一来,随着时间推移,客户需求变更,仍然使得它能有条理的维护。 [来源:http://think58.com]
既然该层实现的是现实中具体的业务逻辑,那该层的实现代码不可避免的会发生变更。为了让该层适应最大的变化,做到最小的改动,通常我们在编码的时候会尽量考虑到同一业务多种实现的兼容和可扩展的能力。因此我们在该层借助了Spring框架,它是一种轻量级的框架,通过依赖注入、AOP应用、面向接口编程,来降低业务组件之间的耦合度,增强系统扩展性。 Spring还提供了Setter Injection,Constructor Injection等方式供我们选择。 Spring把程序中所涉及到包含业务逻辑的对象——例如transaction management handler(事物管理控制)、Object Factories(对象工厂)、service objects(服务组件)都通过XML来配置联系起来。
业务层主要负责以下功能:
* 处理应用程序的 业务逻辑和业务校验
* 管理事物
* 允许与其它层相互作用的接口
* 管理业务层级别的对象的依赖。
* 在显示层和持久层之间增加了一个灵活的机制,使得他们不直接的联系在一起。
* 通过揭示 从显示层到业务层之间的Context来得到business services。
* 管理程序的执行(从业务层到持久层)。
3.2.3 数据解析层
这层我的项目中并没有用到传统项目开发中与数据库进行数据交互,而是采用JDOM将数据存放到XML文档中,针对CRUD(添加、读取、修改、删除)这些操作。将数据层分离的好处是,与业务逻辑的关系实现松耦合,该层只与XML文档数据库进行沟通,然后将结果传递给上一层业务层进行业务逻辑的包装和处理。
使用JDOM的原因是JDOM是一种面向Java的读、写和操作XML文档的API。JDOM和现行的SAP和DOM标准兼容,为Java程序员通过一个简单、轻量的XML文档操作方法。JDOM是专门为Java程序员开发的,所以采用许多Java语言的优秀特性,比如方法重载,集合(Collections,这是在Java2中出现的数据操作类型)和类映射(Reflection)。
由JDOM的文档声明我们将会很明显的看出应用JDOM的优势所在。JDOM文档声明如下“JDOM引用了20/80原则,即使用20%的精力解决80%的JAVA/XML问题”。
● JDOM是用JAVA开发并为JAVA提供服务的,它沿用了JAVA代码的规范和类库;
● 在众多编程语言中,JAVA是使用XML的优秀平台,XML又是JAVA应用的优秀数据表示方法。JDOM API是纯JAVA API对于JAVA开发人员来说更容易上手;
● JDOM API比DOM所提供的方法更为直观,同时简化了与XML的交互。比使用DOM更快。
在图书馆信息管理系统中,数据层包含两个部分:
一个部分是对外的接口,只将方法头暴露给业务层来调用。
think58 [资料来源:www.THINK58.com]
[资料来源:www.THINK58.com]