基于的图书管理系统.doc_第1页
基于的图书管理系统.doc_第2页
基于的图书管理系统.doc_第3页
基于的图书管理系统.doc_第4页
基于的图书管理系统.doc_第5页
已阅读5页,还剩33页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

石家庄铁道大学四方学院毕业设计基于web的购物车系统Shopping cart system based on Web 2016 届 计算机 系 专 业 计算机科学与技术 学 号 学生姓名 指导教师 完成日期 2016年6月18日毕业设计成绩单学生姓名学号1班级专业计算机科学与技术毕业设计题目基于web的购物车系统指导教师姓名指导教师职称讲师评 定 成 绩指导教师得分评阅人得分答辩小组组长得分成绩: 院长(主任) 签字:年 月 日毕业设计任务书题目基于web的购物车系统学生姓名学号班级专业计算机科学与技术承担指导任务单位导师姓名导师职称讲 师一、 主要内容基于web系统是一个JavaScript语言可开发的应用程序,该系统主要有购物,各有各的功能。客户的功能就是手机用户通过网络连接到服务器进行如下操作: 1、用户在登录界面进行用户名的注册和登录。2、用户登录成功可以购物,并且根据物品信息不同搜素不同的书籍向客户端发送这个请求。3、购物信息通过网络发所给服务器。服务器端的功能如下所示: 1、首先通过用户级别的认证,管理员登录到管理界面。 2、管理员登录成功后可以根据是否有新的书籍信息的进行增删改等功能。 3、管理员可以对学生用户信息进行处理。二、 基本要求 1、熟练JavaScript开发语言、熟练web开发环境; 2、我们需要明白需求分析的重要性、分析功能需求和性能需求以及可行性分析; 3、系统构架图、数据模型图和程序流程图要规范而且要清楚明了; 4、数据库的设计要合理、符合范式要求、便于访问,界面设计要美观大方。3、 主要技术指标 操作系统: Windows 7 开发工具: webstorm 论文正文不少于1万字,查阅文献资料不少于10篇,其中外文文献2篇以上,翻译与课题有关的外文资料不少于3000汉字。四、参考文献搜素关于SQLite数据库,以及Android SDK开发环境,Struts+Spring+Hibernate框架的整合实现等方面的资料和参考文献。五、进度计划第7周:任务分配和开题报告第8周:需求和可行性调研 第9周:概要设计第10周第13周:详细设计和代码设计第14周第16周:写论文和答辩第17周:成绩综合评定教研室主任签字时间2016 年4月 6 日毕业设计开题报告题目基于web的购物车系统学生姓名学号班级专业计算机科学与技术一、 基于web的购物车系统研究背景现在的智能手机是群雄纷争的时刻,2008这一年Google推出一个名叫Android的开源智能手机操作系统,使用的是Linux内核,开放手机联盟(OHA)成员可以想怎样使用就怎样和想怎样修改就怎样修改SDK包,系统的开源性使它具有很好的拓展性这种性质。这款软件包括了操作系统、用户界面和应用程序,就是智能手机工作所需要的全部软件它都有。我的论文主要讲述以面向对象的程序开发语言eclipse为开发工具,基于智能手机Android的平台上设计了一个图书管理系统。本图书管理系统通过android客户端和服务器端两部分实现的,在客户端主要完成了分为学生用户和管理员,在学生用户端主要实现注册、登陆、找回密码、书籍查询、网上预约等功能。管理员主要是用户管理和图书管理这两个功能的实现。 二、 系统的功能本软件是基于Android系统的智能是手机开发的一款图书管理系统客户端,它有学生用户和管理员两个大模块,在学生用户端主要有注册、登陆、找回密码、书籍查询、网上预约等功能。而在管理员端主要有用户管理、图书管理两大功能模块。详细的说功能由: 注册: 用户将经过手机主界面上该程序的图标进入里面点一下注册按钮根据里面的提示信息进行注册就可以成为新的普通用户,注册用户这个消息会通过服务器端和数据库连接,数据库中的用户表则马上生成你注册相关信息但是不能于之前的用户信息重复,并且在手机这边会有成功注册的提示消息。 用户登录: 用户登录就只有这两种类型:管理员和普通用户。能够经过登录界面中选定身份登录,服务器根据对应的登录选定信息选择数据库中的数据表进行匹配,用户名和密码正确才会登录成功。 图书查询: 在查询界面输入用户想看书的名字和写书人的名字,便能够通过服务器端对数据库进行查找并且返回你像看的书本的相关信息,书本的信息由这几个部分组成:书名、作者、出版社名、是否被接、剩余本数。 用户管理:用户管理:用户管理就是管理员对普通用户的账号进行一些处理的过程,他可以看哈儿普通用户的基本信息,甚至可以把一些用户帐号删掉。 图书管理:这种能力只有管理员才可以干的其它的不行,管理员经过这种能力可以对图书进行一些操纵,像增加、删出。通过这个功能管理员还可以对新进的图书进行添加处理,并能实时发布新增书籍。 注册管理:用户注册帐号后客户端会把这个信息给服务器,而且在数据库中添加相关的信息。 登录管理:依据登录的信息向服务器发送请求,然后和数据库信息进行比较,看看用户登记是否成功。登录时,你的一定要选定你的登录身份,是学生用户还是管理员登记,不同的身份服务器会依据不同的数据库表来确定信息,还要确定所登录的账号密码是否正确。 3、 系统开发环境介绍Android平台由Linux操作系统、Libraries和Android Time、Application Framework和Application组成。 Android开发环境是adt-bundle-windows-x86主要介绍Android SDK和Eclipse。 服务器和数据库是集成环境XAMPP软件,它包括服务器Apache和My SQL数据库等众多软件的集成。四、参考文献 1 李世昌. 电信流程模型的研究与实现D,电子科技大学硕士论文,2007年4月2 黄塔娜. 鄂尔多斯市电子公文交换系统的设计与实现D,内蒙古大学硕士论文,2008年5月3 浅析SQL Server与Oracle、DB2的比较 , Oracle - 数据库 - TechWeb-技术社区,网络(http:/tech.techweb.),2012;32-554 李淑香. 漫谈红外辐射测温仪J,硅谷,2008年8月5 田巍. 高职学院的教学管理系统D,吉林大学硕士论文,2005年4月6阎宏 Java与模式M 电子工业出版社 2002.10.017韦斯,冯舜玺 数据结构与算法分析:Java语言描述(第2版)M机械工业出版社 2009.01.018埃史尔,陈昊鹏Java编程思想M机械工业出版社 2007.06.019王世江,盖索林Google Android开发入门指南M 人民邮电出版社 2009.1110李刚 疯狂Android讲义M 电子工业出版社 2011.6.2211Grant Allen,Mike Owens The Definitive Guide to SQLite(Second Edition)M电子工业出版社 2012.01.01五、进度计划第7周:任务分配和开题报告第8周:需求和可行性调研第9周:概要设计第10周第13周:详细设计和代码设计第14周第16周:写论文和答辩第17周:成绩综合评定指导教师签字时 间 2015年4月 13 日 摘 要这个时候正是智能手机相互之间竞争最为严重的时刻,在2008年Google推出一个叫作一个Android的开源智能手机操作系统,它的内核是叫做Linux内核,因为该系统拥有开源性而导致拓展能力非常的强大,系这款软件里面有以下几个应用程序:操作系统、用户界面和应用程序,以就是说智能手机工作里面拥有的全部软件它依然都包含有。吾主要讲述的就是开发语言是以面向对象的程序和开发工具是eclipse,这是一个基于智能手机平台上设计了一个图书管理系统。本图书管理系统通过android客户端和服务器端两部分实现的,在客户端主要完成了分为学生用户和管理员,在学生用户端主要实现注册、登陆、找回密码、书籍查询、网上预约等功能。管理员主要是用户管理和图书管理这两个功能的实现。 关键词:google,购物车,android,用户管理 AbstractAt this time of the timing between smart and clver phone competition is the most serious time, Google in 2008 design a is called an Android open source smart and clver phone operating system, its kernel is called the Linux kernel, open handset alliance (smaller companies) members can think using on how to use and want to a modification on how to modify the SDK package, Because the system has open nature and lead to expand capacity is very strong. The software with the following application: operating system, user interface and application, to say the smart and clver phone work inside it still contains all software.My paper is primarily concerned with object oriented programming as development language eclipse as the development tool, this is a smart phone based on the Android platform designed a books management system management system. This books management system management system through the android client and server two parts, main completed on the client side are divided into student users and administrators, client mainly realize the students register, login, retrieve password, books query, online booking, etc. Administrator mainly user management and the function of the two books management.Key words:Google Library management Android User Management 目 录第一章 绪论41.1项目背景41.1.1项目研究背景41.1.2 项目研究目的51.1.3项目研究的意义51.2研究内容和方法51.2.1 研究内容51.2.2 研究方法71.3技术概述81.3.1 web平台81.3.2 中介软件介绍91.3.3 MVC介绍101.3.4 四大组件11第二章 需求分析132.1 系统功能需求132.2 数据库结构分析132.3 ER图分析14第三章 软件总体设计173.1 设计功能概述173.2 设计原理概述183.2.1 Activity延迟跳转原理183.2.2 Android平台动态翻页效果原理183.2.3 Android网络连接原理183.2.4 Android消息队列原理193.3 数据库设计203.3.1 Android内置数据库特性简介203.3.2 建表语句203.3.3 数据表分析21第四章 系统详细设计234.1 最近阅读234.2 本地管理234.3 软件部分代码实现234.3.1 获取sd卡上的txt文本234.3.2 长按选项删除264.3.3 阅读文本界面的实现274.3.4 menu按钮功能的实现29第五章 系统界面335.1功能界面335.2用户阅读界面335.3菜单345.4书签操作345.5字体调节操作355.6跳转界面36结论36参考文献38致谢39第一章 绪论1.1项目背景1.1.1项目研究背景当今社会是信息化的时代,IT泛滥已经成为世界发展主流的时代,对于信息技术的依赖大大的超过我们对自己的依赖,所以,在我们日常生活中计算机和手机已经逐渐成为不可缺少的东西,它是获得信息的一种重要的渠道对于我们来说。就是因为这样的这些,电脑和手机中出现了各种各样的软件,不缺乏娱乐性,也不缺乏教育意义,让我们从这些软件中受益匪浅,使我们看到了比以前的巨大进步。因此,手机已经不在仅仅是人和人之间通话的工具,大体上来讲它是我们获取信息的一个很好的一个渠道。好的软件将标志着手机品牌的地位。所以,开发出一款好的手机软件是很重要的的。从前管理图书信息和查看图书信息,都需要去图书馆或者登陆网站进行查看。现在是用智能手机就能直接查看图书信息、网上预约图书、管理图书信息、管理用户等功能,大大的方便了人们,节约了人们大量的时间。所以,从这些地方能够看出来,拥有一个好手机的开发是相当有重要的。1.1.2 项目研究目的吾的程序的目标是相当明确的,就是要给予使用者有更多的便利,不使的看书的人走到哪里都要拿着一大本很厚很厚的书本,这就在很大的程度上减少了想看书的人的包袱。1.1.3项目研究的意义在各种软件争相竞争的今天,一个好的软件对于一个手机来说是至关重要的,对于用户来说也是不可或缺的。这个程序是基于智能手机设计出来的一款图书管理系统客户端,它主要有普通用户和管理员,在学生用户端主要有注册、登陆、找回密码、书籍查询、网上预约等功能。而在管理员端主要有用户管理、图书管理两大功能模块。1.2研究内容和方法1.2.1 研究内容本文主要通过软件工程的方法,对本系统进行标准管理的开发。主要对adroid sdk技术进行研究,通过研究其用法,开发出一套基于android系统的图书管理系统。1.2.2 研究方法本程序在整体框架研究方法是使用的是问卷调查的方法和观察研究的方法。在整体设计上我用的是结构化的方法,然而在局部开发上为了让他们方便交流我用的是快速原型的方法。设计需要掌握结构体系的主要观点是建立在结构化程序设计思想的基础上它的基本构造就是一个层一层的程序模块组合而成的系统,每一个模块都会有其只有一个进入的地方和出去的位置,每一个模块都让它大它一级的模块调用,并且模块连接和构造模块都有相应的规范,而且用系统结构图来表示系统的结构,尽最大的努力使用最优秀的方法将整个系统内各部分之间组织起来让他们正常运行。1.3技术概述1.3.1 Android平台当前程序是以java作为编程语言,从接口到功能是灵活多变的。主要用到事件Activity之间的相互换位置,然后再利用Intent让多个程序同时动起来。运行中如果某个Activity的画面被另一个Activity所取代,则这个Activity停止。要想使用户界面放在视图窗口就在这个时候程序让View类与XML(可扩展标记语言)才能实现,在这事情完了之后用注册事件来完成相对应的功能。比如,当视图将要办理用户的点击事件的时期,android就要向框架登记一个OnClickListener等。当前程序中触发事件都是经过这种模式来实现的。Java是编程语言中的一种,运行机制是将自己的代码编码翻译成字节码,然后在各种不同平台上的虚拟机来解释执行字节码,从而实现了“一次编写,到处运行”的跨平台特殊能力它具有很多其他的优点和特性,例如:都有安全性,面向对象,健壮性等等。本系统用java写的就是在这个平台上。(1)Android介绍:Android系统架构就是使用分层的架构。Android从高层到低层有4层对应应用程序层、应用程序框架层、系统运行库层和linux核心层。最开始的时候这个平台开发是使用Java来写的,但是用了其他的软件开发包则就要用相应的编程语言。网页服务器的开放源代码我们都叫它为Apache HTTP Server,一般情况下都用简称Apache,它可以在很多计算机中运行,使之成为社会上运用最广泛的Web服务器软件。它快速,可靠并且可通过简单的AP扩展,将Perl/Python等解释器编译到服务器中。Apache网页服务器是一个逻辑关系很强。但存在很多的漏洞,后来该服务器进行了新功能,新性能的不断研发和改更,变成现在使用最多的服务器。Apache 以它操作方便、运行较快、很稳定的性能,因此可以作为服务器是再好不过的选择。Apache原本最初设想只适用于小型或试验的网络,由于它是开放性的源程序,后来不断发展到各种操作系统中,在Linux操作系统中该服务器的移植性匹配的很完美。Apache是以进程为基本单位,但进程对CPU有很长时间的的占用,造成系统资源的浪费,不太适合多个CPU的处理环境。是以,对该服务器扩大时,通常对服务器群集点进行增加或不增加处理器来进行扩大的。目前为止该服务器是社会上使用最多的服务器,并且有很多的网站都是该服务器自主研发的,因此在服务器行业是遥遥领先深受人们青睐。1.3.2 中介软件介绍 Android操作系统应用程序的桥梁就是中介软件,大体上分为函数和虚拟机。Android的数据存储采用sqlite3数据库系统,用户可以用ContentProvider类获取数据。SQLite是一种轻型的数据库,设计时就采用嵌入式,由于它占用资源非常的低在嵌入式设备中大概只需要很少的内存就够用了。SQLite能够支持大部分的主流的操作系统,同时也可以跟许多的程序语言相结合,还能够和ODBC等等接口相结合,同样对于跟Mysql、PostgreSQL这两款开源世界著名的数据库管理系统相作出比较,它的优点就是处理速度比他们两个快的多。SQLite第一个版本降生到现在已经有12年,现在的版本是SQLite 3,最新的版本是3.7.8.SQLite虽然看起来很小,但是它支持的SQL语句和其他开源数据库相比较一点都不差,而且它还又个特点就是支持事务处理功能。它看起来有点像Microsoft的Access,但是从事实上来讲是有很大的区别的。比如说SQLite 能够支持跨平台,操作起来也很简单,而且还可以使用很多种语言直接建立数据库,而不是像Access一样要用Office的支持才可以创建数据库。假如你做的是小型方面的应用,或者是想做嵌入式的开发,那么现在你现在最好的选择就是使用SQLite。研究数据库系统开发的专业人士因其数据库结构简单,系统源代码也不是很多,也很适合使用它。没有数据类型是SQLite最大的特点,表明着你能够在任何表的任何列中保存你所想要保存的任意数据类型,SQLite对于不指定类型的数据是完全可以用的。虽然可以无视掉任意数据的类型, 但是任然要确定数据的类型以方便你与其他的程序员之间做交流,当你要换的数据库引擎的时候指定的数据类型可以起到提示和帮助的作用。1.3.3 MVC介绍MVC即模型视图控制器,它是一种为编程语言而设计的软件设计模式,在八十年代开发出来的,到现在被大部分的程序员使用起来。这些年来为Sun公司J2EE平台的设计模式,受到越来越多的开发者使用。模型视图控制器模式就像一个有用的工具箱,有许多益处但缺点只有很少的一点。 (1)模型企业数据和业务规则是用模型来表示的,它可以用来处理很大一部分的任务。比如说:数据库进行处理是靠它用像EJBs和ColdFusion Components这种样子的构件对象。数据中立就是说模型与数据格式没有任何的关系,就像这种样子的一个模型可以为许多个视图提供数据。为了减少代码的重复性,我们就用这种模型来写上一遍代码让多个视图来调用就行了。 (2)视图视图是用户看到并与之交互的界面。对于开始的时候Web应用程序来说,用HTML元素组成的界面来构成试图,当前新式的Web应用程序中,HTML元素组成的界面依旧在视图中占有很重要的地位,虽然说现在一些新的技术已层出不穷像Macromedia Flash和象XHTML,XML/XSL,WML等一些标识语言和Web services.怎样处理应用程序的界面变得越来越有趣味性。用自己的程序来处理不少不同的视图就用MVC来帮助。视图用真实的话来说它其实没有真实的处理发生,不管这些数据是联机存储的又或者是雇员列表的,当它作为视图的时候,仅仅是一种作为输出数据并其可以让用户进行操作。 (3)控制器要想完成用户的要求就要使控制器接受用户的输入再调用模型和视图去完成。因为当发送HTML表单和单击Web页面中的超链接的时候,它本身并不做处理也不输出东西。只是将接收到的用户请求调用对应的模型构件去处理其也用对应的视图来展示出处理后的返回数据。 总体而言,MVC的处理流程是:首先把用户的请求给控制器,并且想想一下要用那个模型来处理用户的请求,然后这个模型就会用相对应的算法来处理请求并返回处理后的数据。最后用对应视图格式化相应的数据并且返回让表示层展示给用户看。 在实际Android应用中,也采取相应的变向MVC模式措施,首先将界面布局大部分交由Layout文件夹下的各种XML配置文件进行管理,然而基础的javaBean的业务逻辑层跟上述一样的。它通过获取数据且通过Intent意图对对象进行数据传递,而且能够从程序中获取XML定义的控件对其进行数据交互。1.3.4 四大组件Android应用程序的显示是靠四大组件的支持,它们主要是由:Activity(活动),BroadcastReceiver(广播接收器),Service(服务),ContentProvider(内容提供器)组合而成的,而且把各大组件相关联起来 ,成为一体,通过Intent(意图)能够让他们有效跳转和数据传送等等其他功能。Activity是一个用户的界面的基类,它属于UI。每一个Activity都是一个类并且每个Activity类都都一定要继承于Activity基类再和其他的控件结合起来使用。Activity、service等之间的跳转和数据传输就是靠Intent才能完成的。用户使用的数据就是由Service后台服务供给的。要想完成数据的保存和读取还是要ContentProvider才能够实现。 Activity便是用户和应用程序交互的窗口,有点像我们在实践中的一个网页,当用户打开一个网页时,在这个之前打开的别的网页会被变为停止的样子,而且还会把它放在历史堆栈里面,但是用户还能够使用回退这种方法退回到之前开启过的网页里面。Activity运转一个回合主要经历就是:产生、运行、销毁,然而在运转一个回合里还将会调用很多的方法,比如:onCreate(创建) 、onStart(激活) 、onResume(恢复) 、onPause(暂停) 、onStop(停止) 、onDestroy(销毁) 、onRestart(重启)。 Service是一种长时间运行的程序,有的像在后台开启了一个服务,要想启动一个Service得通过startService(Intent service)才能够成功,绑定一个Service也可以经历bindService()还是可以的。 一种或者好多种Intent作触发事件被BroadCast Recevicer收到,收到有关消息后可做少许的简单处理,变成为一条Notification,让Android的事件广播模型得到统一。当一个外部的事件触发的时候能够用Broadcast Receiver来对外作出反应。通知用户事件发生是Broadcast Receiver经过Notification Manager来完成的,注册Broadcast Receiver会有两种方法,一种是能够在Android Manifest xml中注册,另外的一种是在在运行代码中使用Context.registerReceiver()进行注册。广播给其他的应用程序是用户经过Context.sendBroadcast()将他们自己的intent broadcasts来完成的。Content provider:它的主要目的就是提供内容,给第三方供给数据访问的接口和共享自己的数据让外面的部分可以使用。第二章 需求分析本章主要进行系统需求分析,数据库需求分析和运用Android内置数据库软件SQlite为本程序创建要用的表。2.1 系统功能需求系统需求分析就是在告诉在我们整个系统开发过程中要做些什么,来满足用户需要些什么做出需求调查分析。通过对当下最时髦的开源系统平台即手机Android的应用开发,解决上班白领、在校大学生等一些时间安排较为紧迫的人群在日常生活中能够在一些被迫闲暇的时间依然可以快速的获取知识及最新信息。利用移动电子设备的快捷方便的优势特意开发的一款TXT电子书文本阅读器。其主要实现最近阅读记录、文本动态翻页阅读及在线中心获取资源等功能。2.2 数据库结构分析数据库的结构分析在数据库开发前期的设计中在最中心的位置也就是说它很重要,一个好的系统,离不开一个层次分明,功能完美的后台数据库布局。在这个阶段主要是收集基本数据以及数据处理流程,为以后进一步设计打下基础。需求分析主要解决两个问题:内容要求:查清应用软件用户操作的数据,决定的数据库中将保存什么数据。处理要求:查看应用软件用户要求将会对数据进行什么样的处理,将要怎样处理数据库中的各种数据之间的关系。解想处理这两个问题,程序设计人员必须向应用软件的用户做出详细调查,要保证信息收集的完整性和正确性,不然的话将导致后面所做的所有工作都会白白浪费。2.3 ER图分析让各个表之间清楚明了,不但有利于进行连接查询外,还能够在很大的程度上简化数据库的操作,将会提高工作的效率。同时,由于各表间的相互关系的存在,使各表间实施了完整性的原则,可以避免一些误操作。经过建立各表之间的关系,将能够更有效地管理各表的记录。1)书籍实体图 如图3-2:书籍书籍编号书籍名图3-2 书籍实体图2)管理员实体图 如图3-3:管理员编号部门姓名年龄级别图3-3 用户实体图用户用户手机号用户编号密码用户名3)用户实体图 如图3-4:图3-4 用户实体图第三章 软件总体设计3.1 设计功能概述 基于android手机平台建设的图书馆管理系统的一个客户端啊:这里的用户分别是普通用户和管理员两类;它有下面一堆的几个功能包在里面的有注册、登录、密码找回、书籍查询、图书实时更新、普通用户管理共六大部分。此中系统管理中的学生用户权限要包括注册、登录、密码找回、书籍查询;管理员和普通的用户是不同的,他有普通用户的一切能力还有他自身的一些能力例如:可以实时更新图书信息、普通用户管理。 图 3-5 图书管理系统功能图 注册: 用户将经过手机主界面上该程序的图标进入里面点一下注册按钮根据里面的提示信息进行注册就可以成为新的普通用户,注册用户这个消息会通过服务器端和数据库连接,数据库中的用户表则马上生成你注册相关信息但是不能于之前的用户信息重复,并且在手机这边会有成功注册的提示消息。 用户登录: 用户登录就只有这两种类型:管理员和普通用户。能够经过登录界面中选定身份登录,服务器根据对应的登录选定信息选择数据库中的数据表进行匹配,用户名和密码正确才会登录成功。 图书查询: 在查询界面输入用户想看书的名字和写书人的名字,便能够通过服务器端对数据库进行查找并且返回你像看的书本的相关信息,书本的信息由这几个部分组成:书名、作者、出版社名、是否被接、剩余本数。 用户管理:用户管理:用户管理就是管理员对普通用户的账号进行一些处理的过程,他可以看哈儿普通用户的基本信息,甚至可以把一些用户帐号删掉。 图书管理:这种能力只有管理员才可以干的其它的不行,管理员经过这种能力可以对图书进行一些操纵,像增加、删出。通过这个功能管理员还可以对新进的图书进行添加处理,并能实时发布新增书籍。 注册管理:用户注册帐号后客户端会把这个信息给服务器,而且在数据库中添加相关的信息。 登录管理:依据登录的信息向服务器发送请求,然后和数据库信息进行比较,看看用户登记是否成功。登录时,你的一定要选定你的登录身份,是学生用户还是管理员登记,不同的身份服务器会依据不同的数据库表来确定信息,还要确定所登录的账号密码是否正确。图书查询管理:图书查询管理主要用书的几个重要的信息进行查找,依据书名和写这本书的人这些数据在数据库中提交信息进行查找。经过输入信息检查返回检索书籍的基本信息。 图书管理:后台的图书进行管理,管理员把新来的书添加到数据库表中,普通用户就可以看哈儿这本书的一些信息。而且管理员可以不不再外借的书籍从数据库删除,用来更新数据库中的书籍名称。3.2 设计原理概述3.2.1 Activity延迟跳转原理在很多应用软件上都会存在的一种Logo界面的表现方式,通过一个简单的Logo中介界面表现出该款软件的设计类型,在图形中让客户抢先了解软件可能提供的功能。有的像线程该类也是实现了run()方法来对要进行的动作进行处理。最后调用Timer对象的schedule()并传入一个时钟任务对象参数及一个延长的时间参数。3.2.2 Android网络连接原理在我们简单的core_java基础中已经学到过java网络编程,事实上Android的网络编程就是建立在java网络编程基础之上的。与学习过程不同的是Android的网络编程大部分是基于HTTP协议的。先要确定的是HTTP通信中的POST和GET请求方式是不同的。GET能够得到静态页面,还能够把参数摆在URL字符串后面,并且发送给服务器。而POST方法的参数是放在Http请求实体中。所以,在编程开始时,先要确定使用什么样的的请求方法,该程序采用的是POST请求方式直接访问服务器的URL来获取资源路径。由于我们这里有点别出心裁的借用到了RSS新闻订阅的有效网络资源发布方式,故而,真正的下载资源的URL是自行通过获取到服务器发布的XML文件获取到其中最新更新的文件名与之前的请求服务器的URL字符串合并而成的有效请求下载的URL。3.2.3 Android消息队列原理因为在android中,用主线程(UI线程)负责对UI控件的进行革新,假如在不是的UI线程中革新UI控件,更新的结果是在屏幕上不显示的,某些控件还可能出现错误。可事实上,我们很多结果都是通过其他新线程获取的到的实时数据,针对于种种类似情况,android提供了有效的消息队列机制来帮助解决该问题。虽然说android支持多线程,但是在android应用程序中,它仅仅是由一个主线程操作各种UI界面的单线程模式。1) Message Message消息,可以把它认成线程和线程之间的信息互换,把一些数据处理后必须的在后台中要更新UI。2) Handler Handler的大部分的作用是用来处理Message,要想使Message能够发送和执行处理就要靠Handler。而想使用Handler,就要用 implement 类里面的一种方法叫做handleMessage(Message)方法。3) Message Queue Message Queue消息队列,用来存放通过Handler发布的消息,按照先进先出执行。每一个message queue都的有一个对应的Handler。Handler会向message queue经过两种方法送出消息:sendMessage或者post。这两种消息都可以插在message queue队尾并按先进先出运行。但是经过这两种方法发送的消息运行的方式有点不同:经过send Message发送的是message对象将会被 Handler的handleMessage()函数进行处理;然而经过post方法发送的是runnable对象会自己执行。4) Looper虽然Android没有Global的Message Queue,但是Android自己一个儿为主线程(UI线程)创立Message Queue,可是在子线程里没得Message Queue这个东西,所以在调用Looper.getMainLooper()获取主线程的Looper是不为空的,但是调用Looper.myLooper() 得到现在线程的Loope的值可以为NULL。3.3 数据库设计该程序使用的mysql,做出它的是瑞典MySQL AB公司。MySQL是关联数据库管理系统,它的数据存储在不同的表中,如此就可以加快运行速度并且提高了它的灵活性。系统特性1它是用C和C+编写,能用很多种编译器进行测试,让源代码的可移植性哟偶哦保证 2可以在AIX、FreeBSD、HP-UX、Linux、Mac OS、NovellNetware、OpenBSD、OS/2 Wrap、Solaris、Windows等多种操作系统中运行3为多种编程语言提供了API。包括C、C+、Python、Java、Perl、PHP、Eiffel、Ruby和Tcl等编程语言。 4支持多线程,充分利用CPU资源 5优化的SQL查询算法,有效地提高查询速度 6不但以作为一个库而嵌入到其他的软件中提供多语言支持,而且也可以作为一个单独的应用程序应用在客户端服务器网络环境中7多种数据库连接途径可以是用TCP/IP、ODBC和JDBC等 8提供用于管理、检查、优化数据库操作的管理工具 9可以处理拥有上千万条记录的大型数据库 10支持多种存储引擎 和别的的大型数据库做比较,MySQL还是有许多可以改进的地方,例如说它规模不大还很小、功能很有限(MySQL Cluster的功能和效率都相对比较差),但是这些不利之处丝毫没有减少它受欢迎的程度。 本数据库用的是一个轻量级嵌入型数据库mysql ,在数据库中创建了几张数据表。在还没有建立网站系统或者软件的时候,一定要对系统所用到的数据进行大体上的分类和具体的结构设计,既要做到清晰明要,又要能够适合系统各项功能的调用,而且在结构上不让逻辑错误,确保关键数据在意外情况下不遭到好的,数据库是系统的重中之重。不管是在MIS系统中,还是其他系统软件中,数据库设计师需要紧密的思维逻辑将一些属性进行封装然后存放至数据库,而数据库的管理操作则通过对表的基本增删改查语句来获取某些数据表里面的内容,所以作为软件开发,对表结构和数据逻辑的层次一定要清晰理解。以下是该款软件涉及到的一些数据库表的结构信息:数据库部分:表3-1数据表清单表名说明管理员用户表可以用于存储管理员信息表格普通用户表可以用于存储普通用户信息表格书籍信息表可以用于存储书籍基本信息表格书籍外借信息表可以用于储存外借书籍的基本信息表3-2 管理员用户信息表字段名数据类型长度主键备注ID自动编号10是由数据库sequence自动生成AdminnameVarchar250否管理员的登录账号PasswordVarchar250否管理员登录的密码 表3-3 普通用户信息表字段名数据类型长度主键备注ID自动编号10是由数据库sequence自动生成UsernameVarchar250否唯一标识用户,不可缺PasswordVarchar250否普通用户用户登录密码IndentityidVarchar2100否用户注册的身份证号YearVarchar250否用户入学年份GenderVarchar230否用户性别CollegeVarchar250否用户所在学院 表3-4 书籍信息表字段名数据类型长度主键备注ID自动编号10联合主键由数据库sequence自动生成BooknameVarchar250联合主键书籍名称BookauthorVarchar250否书籍作者名PhnameVarchar250否出版社名称LocationVarchar260否所在位置CategoryVarchar280否所属科目StatusVarchar220否书籍状态RenttimeVarchar220否最大借阅时间表3-5 外借书籍信息表字段名数据类型长度主键备注IDVarchar210是由数据库自动生成Book_dateVarchar250否外借时间Act_ret_dateVarchar250否实际的外借时间Exp_ret_dateVarchar250否最大的外借时间Book_idVarchar210否书籍编号BooknameVarchar250否书籍名字AuthornameVarchar250否书籍作者名User_idVarchar210否借阅者id第四章 软件开发4.1 开发环境搭建开发环境搭建在JAVA开发中,是比较重要的一个过程,现描述如下:4.1.1 整体环境搭建整体环境分为java环境、Tomcat环境、Axis2环境、MySql环境及其管理环境。我们需要java SDK最新版、Tomcat6.0,axis2-1.6.1-bin, axis2-1.6.1-war,MySql5.5.15以及mysql-connector-java-5.1.13。以上系统全部使用win32平台版本。首先要默认安装java SDK。当安装成功后,并在系统环境变量中加入:JAVA_HOME: C:Program FilesJavajdk1.7.0_01.然后安装Mysql,为了使用中文字符,在安装配置时注意选择中文字符GBK库。如果没有选择,将对表中的中文显示出?号字样。当这个时候可以重新卸载MySql重新安装,并进行选择。下载SQLyogEnt8.14版,选择默认(local)数据库,如果连接成功,表示安装mysql成功,这时可以用SQLyogEnt来对数据库进行可视化维护了。接下来我们安装Tomcat,选择默认安装即可。安装完成后在系统环境变量中加入:CATALINA_HOME:C:Program Fi

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论