APP下载

基于Flash AS3和XML实现的图书馆管理系统

2012-10-18李军峰

大众科技 2012年6期
关键词:跨平台按钮书籍

肖 洋 何 斌 李军峰

(91404部队评测中心,河北 秦皇岛 066000)

基于Flash AS3和XML实现的图书馆管理系统

肖 洋 何 斌 李军峰

(91404部队评测中心,河北 秦皇岛 066000)

该系统采用Flash AS3开发,专为触摸屏设计的一款新型图书馆管理系统,功能全面,采用XML作为数据库后台,实现系统的跨平台性,利用JS使得系统脱离Flash沙盒,以达到修改数据的目的,具有很好的应用价值。

AS3;Flash;XML;JS;跨平台

目前,基于RIA的Web应用的越来越多,本文采用RIA中最具影响力的Flash AS3作为主要开发语言,设计并实现了一种适用于各类触摸屏、操作更加快捷、美观的图书馆管理系统。

1 相关技术的简介

AS3全称Action Script3,是快速构建丰富互联网程序(RIA)的理想语言。在其上构建的Flash Player程序或者AIR程序,都真正支持跨系统应用,已经毫无疑问地成为目前和下一代因特网应用程序编程语言的主流[1]。

AS3支持先进的ECMA Script for XML(E4X),使得XML就像AS3语言的一种内建数据类型一样,处理自然简单,成倍降低所需要的代码数量,显著提高了程序运行效率[2]。因此,本文在数据库设计上并没有采用传统的SQL、Oracle等来存储数据,而是采用XML来实现各类数据的存储,已实现跨平台和操作快捷。

2 系统的设计

本文设计的图书馆运行在Web框架内,主要实现了图书浏览、图书借阅、图书归还、图书搜索、借阅记录等五大功能,由于Flash出于安全沙盒的考虑,AS3不具备直接修改数据的功能,只有通过JS等第三方语言来实现数据的更改,因此,图书借阅、图书归还两个模块涉及到数据的修改,需要调用Web中JS函数XMLModify,其余模块只是涉及数据的读取。其中,总体功能设计框图如图1所示。

在图书馆的主界面上,主要显示图书浏览、图书搜索、借阅记录三个模块,可以按定制的分类浏览或者搜索。用户点击某一本书后,进入该书的简介,内容包括书籍作者、出版社、借阅状态、内容简介等,如果借阅状态为可借,用户可以选择借阅该书,则跳至借阅功能模块,输入用户名、密码等信息,完成借阅。在图书搜索和借阅记录中,用户选择自己所借的图书后,通过还书按钮跳入图书归还模块,输入密码等信息完成图书的归还。

图1 功能设计图

3 系统的实现

图书浏览、图书搜索、借阅记录三个模块的实现,主要包括各类XML数据文件的读取,构建AS3公共函数XMLRead(XMLstr:String),主要代码如下:

//加载外部xml

xml.ignoreWhite=true;

System.useCodePage=true;

var XML_URL:String=XMLstr;

var myXMLURL:URLRequest=new URLRequest(XML_URL);

Bagging算法是通过引导程序使用一个训练集的多个版本,即放回抽样,多每一个数据集都来训练一个不同的模型,在对训练模型通过整合输出形成一个最终的预测结果。基本算法如下。

var myLoader:URLLoader=new URLLoader(myXMLURL);

通过时间轴上标记的按钮图元实例化读取的各个书籍数据,其中使用了Tweener.as作为书籍按钮的效果美化文件类,当滑动到某本书时,书籍作被抽出来的动作,书籍下方用不同的标志标识该书借阅状态,例如用红色人形标志表明书籍已被借完,处于无法借阅状态,如图2所示。此时如果做点击动作,则跳入该书的简介界面,如果该书还可以借阅,则会出现右侧的“借阅该书”按钮,否则只有“返回”按钮,如图3所示。点击“借阅该书”按钮进入图书借阅模块。

图2 图书浏览效果图

图3 图书简介效果图

图书搜索和借阅记录在本系统中主要设计为列表形式显示相关信息,采用FlashCS4集成组件DataGrid实现。

在图书借阅和图书归还模块中,主要涉及到与 JS交互的问题,在AS3中需要将要被修改的信息如书名、书籍类型、用户名、书籍状态、书籍余量等信息发送至JS中,其主要代码如下:

function modify(book_name:String,book_list:String,

book_state:String,borrower:String.....):void {

if (ExternalInterface.available) {

try {

Flash所嵌入的 Web网页中,在 JS代码中设计了函数XMLModify,接收Flash所传递出的值,其中主要代码如下:function XMLModify (book_name:String,book_list:String,

book_state:String,borrower:String.....){

//读取外部XML文件

foreach(XmlNode xn in nodeList){

XmlElement xe =(XmlElement)xn;

......

xmlDoc.Save(book_list.xml);

XML数据文件在本系统中是按照书籍类别来区别,比如软件测试、软件编程等,以 softwaretesting_list.xml、comlanguage_list.xml等来区别,每个XML文件子项中都包含了书名、作者、借阅状态、借阅人、借阅时间等信息。

4 二级标题

通过FlashAS3和XML的结合,嵌入到Web中实现了一种新型的图书馆管理系统,满足各类中小图书馆的日常需求,和传统图书馆的管理系统相比,它的各种触摸设计与用户的交互性更强、更快捷。

[1] 孙颖.Flash ActionScript3殿堂之路[M].北京:机械工业出版社,2007.8.

[2] 蔡朝晖.Flash CS3商业应用实战[M].北京:清华大学出版社,2008.1.

Library management system based on XML and Flash AS3

The system is a new library management system using flash AS3 to develop, specially designed for touch screen, it was comprehensive functions, using XML database as background, cross-platform of the system was realized, to achieve the objective of modifying data, using JS made the system break away from the Flash sandbox, so it is very good value.

AS3;Flash;XML;JS;cross-platform

TP317

A

1008-1151(2012)06-0076-02

2012-05-07

肖洋,供职于91404部队评测中心。

猜你喜欢

跨平台按钮书籍
当你面前有个按钮
鲁迅与“书籍代购”
Chinese books find an audience overseas中国书籍享誉海外
跨平台APEX接口组件的设计与实现
书籍
死循环
书籍是如何改变我们的
基于QT的跨平台输电铁塔监控终端软件设计与实现
基于OPC跨平台通信的电机监测与诊断系统
基于B/S的跨平台用户界面可配置算法研究