基于Android平台的图书管理系统毕业设计论文.doc_第1页
基于Android平台的图书管理系统毕业设计论文.doc_第2页
基于Android平台的图书管理系统毕业设计论文.doc_第3页
基于Android平台的图书管理系统毕业设计论文.doc_第4页
基于Android平台的图书管理系统毕业设计论文.doc_第5页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

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

文档简介

程序及数据库文件加 q1973189227 毕业设计 题 目 基于android平台的图书管理系统手机客户端开发 学生姓名 学 号 xxxxx 专业班级 xxxx 指导教师 xxx 学 院 xxxxxx 答辩日期 2014 年某月 程序及数据库文件加 q1973189227 i 基于 android 平台的图书管理系统手机客户端开发 the development of library management system is based on the android platform 摘摘 要要 传统 web 应用只能在 pc 机上使用,不能做到随时随地的使用,为了解决这样的不足, 基于 android 平台的图书馆管理系统客户端就应运而生。本设计阐述了在 android 平台下图 书馆管理系统的设计与实现过程,其目的是让人们能够在基于 google android 平台的移动设 备上享用传统 web 上图书馆管理系统的基本功能。本系统采用 android 布局技术完成 ui 的 设计,后台使用 sqlserver 数据库,基于 java 语言开发完成,在不同型号的设备模拟器上 测试通过。系统实现了用户注册、登录、查询图书以及学生用户预约和密码找回等功能。 “操作简单,功能实用”这是本软件设计的核心理念,本系统力求创造最好的用户体验。 关键词:关键词:图书馆管理系统;android;客户端;数据库设计;服务器端 abstract the web application can only in traditional pc use, cant do it at any time and place to use, in order to solve the shortage of such, based on the android platform of library management system client is made. this paper expounds the workbench android library management system design and implementation process, and its purpose is to let people can be based on the google android platform of mobile devices to enjoy the traditional web on the basic functions of the library management system. the system uses the c/s structure, mvc software development model, use android ui design layout complete technology, use sqlserver2005 database,based on the java language development completed, in different types of equipment simulator test is passed. the system realizes the user register, login, inquires the books and the students user management and reservate books etc. function. “the operation is simple, functional practical“ this is the core idea of the software design, this system is the best tries to create user experience. key words : library management system; android; client; database design; server 程序及数据库文件加 q1973189227 ii 目目 录录 摘 要.i abstracti 第 1 章 前 言1 1.1 研究的目的及意义 .1 1.2 图书管理系统的现状.1 1.3 本系统的研究内容.2 第 2 章 软件设计及开发工具介绍3 2.1 总体设计.3 2.2 开发工具介绍.3 2.2.1 eclipse 的介绍.3 2.2.2 myeclipse 与 tomcat 介绍.4 2.3 关键技术介绍.6 第 3 章 系统功能设计7 3.1 前台管理.7 3.1.1 注册 7 3.1.2 用户登录 7 3.1.3 图书查询 7 3.1.4 用户管理 8 3.1.5 图书管理 8 3.2 后台管理.8 3.2.1 注册管理 8 3.2.2 登录管理 9 3.2.3 图书查询管理 9 3.2.4 用户管理 9 3.2.5 图书管理 9 第 4 章 数据库结构设计10 4.1 服务器端数据库设计.10 4.1.1 数据库逻辑结构设计 10 4.1.2 数据库物理结构设计 12 第 5 章 系统实现14 5.1 服务器端的设计-搭建java web服务器.14 5.3 服务器功能模块.14 5.3.1 注册模块 14 程序及数据库文件加 q1973189227 iii 5.3.2 登录模块 15 5.3.3 书籍查询模块 17 5.3.4 特定用户查询模块 18 5.3.5 查询所有用户模块 19 5.3.6 添加书籍模块 19 5.4 客户端的设计-设计 android ui 界面.21 5.5 具体功能模块.22 5.5.1 注册界面 22 5.5.2 登录界面 24 5.5.3 学生用户书籍查询界面 25 5.5.4 管理员界面 26 5.5.5 管理学生用户界面 26 5.5.6 管理图书界面 27 5.5.7 图书增加界面 29 第 6 章 系统测试30 6.1 用户注册测试.30 6.2 用户登录测试.30 6.3 图书查询测试.32 6.4 用户管理测试.32 6.5 书籍管理测试.33 总 结35 参考文献36 致 谢38 1 第第 1 章章 前前 言言 1.1 研究的目的及意义 移动互联网时代的来临,说明一个崭新的时代开始了。所谓移动互联网是 将移动通信和互联网整合在一起,移动设备(包括手机和上网本)可以随时随 地地访问互联网资源和应用。 智能手机是移动互联网时代一个标志性的客户端工具,它和传统的手机是 有区别的,它就像一台“小电脑” ,具有独立的操作系统,可以自由安装、卸载 软件,具有强大的计算和存储能力,可以通过移动通信网络来实现无线网络接 入。 对于移动终端设备飞速发展的今天,传统 web 上的应用出现在手机终端 是一个大的趋势。而基于 android 开发的图书馆管理系统手机客户端,正是对 这一趋势的良好体现,android 平台下的图书馆管理系统的开发,能很好的为用 户提供方便,用户能通过它能随时随地的了解系统的实时信息,做到信息的实 时化。通过 android 平台下的图书馆管理系统客户端的开发,与传统 web 应用 进行良好的互补。 同时,对于校内的图书馆管理系统来说,手机对于学生是必不可少的一个 物品,手机客户端这种形式的图书馆管理系统,能更加贴近学生的生活习惯, 并且适合学生年龄段的习性,这对学生更多的接触到图书馆的信息有一定得促 进作用。 1.2 图书管理系统的现状 目前国内的基于 android 平台的图书馆管理系统客户端还不成熟,大多数的 图书馆管理系统都出现在传统的 web 应用上,在这个环境下,基于 android 平 台的图书馆管理系统客户端属于一个崭新的应用。作为一个不太成熟的应用, 大多数图书馆管理系统都是出现在学习 android 开发的一个项目中,作为学习中 的一个练习作业。目前,绝大部分的网络应用都还是传统的 web 应用,但面 对 android 手机如此迅速发展的今天,传统 web 的应用不能满足人们随时随地 体验网络应用的想法,所以,出现在手机终端的应用将会越来越多,同时其发 展的速度也会越来越快。校内图书馆管理系统作为传统 web 应用,也必将在 手机客户端上得到应用。 2 1.3 本系统的研究内容 由此出现大量的应用出现在手机上,基于 android 平台的图书馆管理系统手 机客户端是依据现在的形式所开发的,它是一套基于开放性的图书馆管理系统, 它有传统 web 上图书馆管理系统的大部分功能。整个系统分为前台界面管理 和后台服务器管理两部分,划分为用户管理、图书管理、信息管理等三个部分。 在前台管理中,用户进行注册、登录、查询特定图书等功能;后台管理模块, 负责控制前台界面管理的所有功能;本系统设置了学生用户和管理员两类,两 类用户都是使用同一个平台,只是权限不同。学生用户只能注册、查询、预约 图书等功能;管理员拥有最高权限,可以对已经毕业的学生用户账号进行删除, 查询学生用户信息,实时更新图书馆的新书,删除或者修改已经存在的书籍信 息,并可以添加新的管理员账号等权限。 本图书馆管理系统,能够适用于各类图书馆,具有良好的可操作性,可以 随时的查询你所需要的图书信息,只要你的智能手机安装了本系统客户端,接 入互联网后就可以访问到图书馆的书籍信息,大大的方便了学生对图书馆书籍 的查询、预约等。 本系统 mvc 结构,后台服务器使用 servlet 编写服务器,同时用 tomcat 发 布服务,前台客户端环境使用的是 android 控件。通过 jdbc 来调用 sqlserver 数据库,来实现手机客户端与服务器之间数据传输。 3 第第 2 章章 软件设计及开发工具介绍软件设计及开发工具介绍 为了使软件开发能够顺利进行,使开发人员对系统各个模块的性能、系统 接口、系统开发及运行环境和计算机内部处理的逻辑及物理流程有更清晰的认 识,更利于源程序的开发,现对系统的总体设计和系统结构设计及开发工具和 关键技术做详细说明。 2.1 总体设计 基于 android 平台开发的图书馆管理系统客户端从设计者的角度来看,用 户角色分为学生用户和管理员两类;功能包括注册、登录、密码找回、书籍查 询、图书实时更新、普通用户管理共六大部分。其中系统管理中的学生用户权 限包括注册、登录、密码找回、书籍查询、预约、评论等六个模块;管理员的 权限则是查询、修改、删除、增加图书信息、管理学生用户、添加管理员账号 等模块。从使用者的角度来看分为前台和后台管理两大部分。后台管理模块是 本系统的关键部分之一,它是系统维护和信息管理平台。这两类用户使用的系 统管理平台都是同一个平台上,只不过他们执行的权限不同。 2.2 开发工具介绍 2.2.1 eclipse 的介绍 eclipse 是一个开放源代码的、基于 java 的可扩展开发平台。就其本身而 言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是, eclipse 附带了一个标准的插件集,包括 java 开发工具(java development kit,jdk) 。 eclipse 是一个开放源代码的软件开发项目,专注于为高度集成的工具开发 提供一个全功能的、具有商业品质的工业平台。它主要由 eclipse 项目、eclipse 工具项目和 eclipse 技术项目三个项目组成,具体包括四个部分组成eclipse platform、jdt、cdt 和 pde。jdt 支持 java 开发、cdt 支持 c 开发、pde 用 来支持插件开发,eclipse platform 则是一个开放的可扩展 ide,提供了一个通 用的开发平台。它提供建造块和构造并运行集成软件开发工具的基础。eclipse platform 允许工具建造者独立开发与他人工具无缝集成的工具从而无须分辨一 个工具功能在哪里结束,而另一个工具功能在哪里开始。 android 工程是在 eclipse 工具上编写的,进行 android 工程的编写,首先需 4 要在 eclipse 上安装 adt 插件,然后指定 sdk 所在的路径,便可以创建 android 虚拟机了。 创建好虚拟机后,点击开始便可以运行一个 android 虚拟机,虚拟机运行成 功界面如下: 图 2.4 android 虚拟机视图 虚拟机模拟的是 android 智能手机的界面,通过操作虚拟机可以体验到 android 智能手机的部分应用。同时虚拟机是作为开发的 android 应用运行的场 所,他提供基本的人机交互功能。 2.2.2 myeclipse 与 tomcat 介绍 myeclipse 是一个十分优秀的用于开发 java, j2ee 的 eclipse 插件集合。 myeclipse 企业级工作平台(myeclipse enterprise workbench ,简称 myeclipse)是对 eclipseide 的扩展,利用它我们可以在数据库和 javaee 的开 发、发布以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富 的 javaee 集成开发环境,包括了完备的编码、调试、测试和发布功能,支持 html,struts,jsp,javascript, hibernate,myeclipse,css, spring,sql 的功能非 常强大,支持也十分广泛,尤其是对各种开源产品的支持十分不错。 在结构上,myeclipse 的特征可以被分为 7 类: 1 javaee 模型 5 2 web 开发工具 3 ejb 开发工具 4 应用程序服务器的连接器 5 javaee 项目部署服务 6 数据库服务 7 myeclipse 整合帮助 对于以上每一种功能上的类别,在 eclipse 中都有相应的功能部件,并通过 一系列的插件来实现它们。myeclipse 结构上的这种模块化,可以让我们在不影 响其他模块的情况下,对任一模块进行单独的扩展和升级。简单而言, myeclipse 是 eclipse 的插件,也是一款功能强大的 javaee 集成开发环境,支持 代码编写、配置、测试以及除错,myeclipse6.0 以前版本需先安装 eclipse。myeclipse6.0 以后版本安装时不需安装 eclipse。 本系统是基于 mvc 架构的,所以需要在 myeclipse 上创建服务器端,利 用 java ee 中的 servlet 来提供服务,并将其部署在 tomcat 下。需要解决的是创 建不同的 servlet 来提供不同的服务。 tomcat 是 apache 软件基金会(apache software foundation)的 jakarta 项 目中的一个核心项目,由 apache、sun 和其他一些公司及个人共同开发而成。 由于有了 sun 的参与和支持,最新的 servlet 和 jsp 规范总是能在 tomcat 中 得到体现,tomcat 5 支持最新的 servlet 2.4 和 jsp 2.0 规范。因为 tomcat 技 术先进、性能稳定,而且免费,因而深受 java 爱好者的喜爱并得到了部分软件 开发商的认可,成为目前比较流行的 web 应用服务器。目前最新版本是 7.0。 tomcat 很受广大程序员的喜欢,因为它运行时占用的系统资源小,扩展性 好,支持负载平衡与邮件服务等开发应用系统常用的功能;而且它还在不断的 改进和完善中,任何一个感兴趣的程序员都可以更改它或在其中加入新的功能。 tomcat 是一个轻量级应用服务器,在中小型系统和并发访问用户不是很多 的场合下被普遍使用,是开发和调试 jsp 程序的首选。对于一个初学者来说, 可以这样认为,当在一台机器上配置好 apache 服务器,可利用它响应对 html 页面的访问请求。实际上 tomcat 部分是 apache 服务器的扩展,但它 是独立运行的,所以当你 apache tomcat 运行 tomcat 时,它实际上作为一个 与 apache 独立的进程单独运行的。而 tomcat 实际上运行 jsp 页面和 6 servlet。另外,tomcat 和 iis、apache 等 web 服务器一样,具有处理 html 页面的功能,另外它还是一个 servlet 和 jsp 容器,独立的 servlet 容器是 tomcat 的默认模式。不过,tomcat 处理静态 html 的能力不如 apache 服务器。 目前 tomcat 最新版本为 7.0.27 released。 2.3 关键技术介绍 本软件采用 java 作为开发语言,布局和数据存储是开发本软件的关键技术, 布局用来设计用户交互界面,用户界面的设计是否美观和合理直接影响用户体 验,因此运用好布局技术是直接和用户相关的,而数据存储技术则记录了用户 所有的操作数据和用户所需要提取的数据。 在 android 中,软件 ui 通常使用 xml 技术设计,而 xml 中控件的位置和状 态则离不开布局的使用,android 中常用的布局有 5 种,分别是: absolutelayout、linearlayout、relativelayout、framelayout、tablelayout,由 于布局的使用,并且布局之间可以互相嵌套,使得 android 软件 ui 的设计变得 非常灵活,即使是一些非常复杂的界面设计,只要合理的使用布局,也会使开 发变得很容易。 android 中数据存储技术主要有:文件存储、 preference、sqlite、contentprovider 和网络存储,文件存储是以流的形式读写文 件,可以以文格的格式,也可以以二进制的形式,在 java 语言中要使用流,则 写入文件的对象必须进行序列化,sqlite 是嵌入式移动设备中常用的轻量级数据 库,可看作计算机上使用的 sql server、oracle 数据库。本系统中,采用的是 oracle 数据库进行储存图书馆里的基本信息。 7 第第 3 章章 系统功能设计系统功能设计 本系统采用 mvc 模式开发的,该系统的客户端和服务器端是独立分开的, 这样的分开也就形成了前台管理和后台管理。前台管理注重用户的交互是否简 便,后台管理注重功能的逻辑和与数据库数据交互的功能。 3.1 前台管理 前台客户端的所有功能画出的功能流程图如下: 图书管理系统 图书管理系统图书管理系统 注册 登录 找回密码 书籍查询 用户管理 书籍管理 添加管理员 查询用户 删除用户 查询图书 增加图书 更新图书 删除图书 网上预约 图 3.1 前台客户端流程图 3.1.1 注册 用户通过手机客户端主界面上的注册按钮注册新的学生用户,注册用户的 信息通过服务器端和数据库连接,数据库中的用户表则会添加新的注册的信息, 同时在手机客户端提示注册成功。 3.1.2 用户登录 用户登录分为两类用户:管理员和学生用户。可以通过登录界面中选定身 份登录,服务器根据登录选定的信息选择数据库中的数据表进行匹配,用户名 和密码正确则登录成功。 3.1.3 图书查询 8 在查询界面输入所需查询书籍的书名,通过服务器端查询数据库即可显示 出所查询的书籍信息,书籍信息包括:书名、作者、是否可预约等信息。点击 要查询的书籍行,即可查看到书籍的详细信息,包括图书简介、评论列表及预 约选项,如果可以预约,则显示“我要预约”按钮,否则不显示。用户也可以 点击“我要评论”选项对本书进行评论。 3.1.4 用户管理 用户管理模块是管理员对学生用户账号的管理,对于某些特殊原因账号不 使用了,比如:学生毕业等原因不再使用账号的问题,管理员有权利对这类账 号进行删除,同时可以根据学生用户的用户名查询学生用户的信息。 3.1.5 图书管理 这个功能也只有管理员身份才能拥有,管理员通过此功能,可以对图书进 行增加、删出等操作。 通过这个模块,管理员可以对新进的图书进行添加处理,也可以对已经上 架的图书信息进行修改,并能实时发布新增书籍。对于删除功能,管理员可以 把一些已经下架,不再外借的书籍进行删除,以便造成不必要的麻烦。 3.2 后台管理 后台服务器端的任务是根据客户端发送过来的请求,根据客户端不同功能 模块,通过检索数据库不同表格,把检索结果返回给客户端显示给以用户,其 基本流程图如下: 图 3.2 后台服务器端流程图 3.2.1 注册管理 注册用户提交:向服务器提交用户注册的信息,同时更新到数据库。 9 注册管理是后台的一个重要内容,注册只提供学生用户的注册,这样可以 保证图书馆用户权限的稳定和安全。通过注册用户,用户才能享受来自手机客 户端的所有功能。通过手机客户端注册用户,来作为以后通过手机客户端登录 图书馆管理系统的唯一身份认证。 3.2.2 登录管理 登录管理:根据你登录的信息向服务器发送请求,然后和数据库信息进行 对比,来确认用户登录的成功与否。 登录时候,首先你必须选定你的登录身份,是以学生用户还是管理员身份 登录,根据你选择的不同身份,服务器向不同的数据库表来核对信息,以通过 对用户信息的核对,以确定所登录的账号密码是否正确。 3.2.3 图书查询管理 图书查询管理主要通过图书的几个关键信息进行查询,根据图书名字和图 书作者向数据库提交信息进行条件检索。通过输入信息的检索,返回检索书籍 的基本信息,比如:图书名字、图书作者、是否可预约等基本信息。 3.2.4 用户管理 后台的用户管理,是处理管理员对有特殊情况(例如退学)的学生用户和 查询特定学生用户的服务,是与数据库进行数据更新与交互的服务。 3.2.5 图书管理 后台的图书管理,是处理管理员把新书添加到书籍数据库表的服务,通过 添加到数据库表,学生用户才能在书籍查询功能中查询到新更新的书籍信息。 同时,对于不再外借的书籍从数据库删除,以此来更新数据库中的书籍名称。 10 第第 4 章章 数据库结构设计数据库结构设计 4.1 服务器端数据库设计 采用的是 sqlserver2005 数据库。首先创建数据表,以满足图书馆管理的日 常需要,表格名称分别为: admin,students,book,content,各个数据表的储 存的信息分别为:管理员信息、学生用户信息、书籍信息、书籍评论信息表。 4.1.1 数据库逻辑结构设计 在需求分析阶段已完成该系统所有的数据分析。根据该阶段所建立的概念 模型,已经得出满足系统设计要求的几个关系描述,该阶段的主要工作就是把 前一阶段的成果转化为具体的数据库。 管理员用户有用户名和密码两个属性,通过这两个属性来确定管理员用户 的身份是否合法,其中 id 为主键,其 e-r 图如下: 图 4.1 管理员 e-r 图 学生用户有用户名、密码身份证号、入学年份、性别、所在学院名称等属 性,通过这些属性,来确认学生信息表的信息,其中主键为 id,其 e-r 图如下: 11 图 4.2 学生用户 e-r 图 书籍信息表,是用来存储书籍的基本信息,其数星星包括书名、作者名、 书籍位置、出版社名称、所属科目、是否借出、最大借阅时间等,其中自动分 配的 id 和书名作为联合主键,其 e-r 图如下: 图 4.3 图书信息 e-r 图 外借书籍信息表是用来存储外借书籍的有关信息,通过此表格,来获取该 外借书籍的基本状态,其属性有书籍编号、书籍名、书籍作者、最大外借时间、 实际外借时间、外借时间、借阅者 id,其 e-r 图如下: 12 图 4.4 图书评论信息 e-r 图 对于各个实体之间的关系 e-r 图如下: 图 4.5 实体关系图 4.1.2 数据库物理结构设计 依据数据库的原理,并结合以上 e-r 图,经过转化,即可进行数据库的物 理设计。基于以上数据库的逻辑设计,考虑程序设计的简易性,同时考虑题目 的时间,该系统的数据库采用 oracle 简易版本建立一个数据库,在其下创建 4 个数据表,其结构分别如下各表: 表 4-1 数据表清单 表名说明 管理员用户表用于存储管理员信息表格 学生用户表用于存储学生用户信息表格 图书信息表用于存储图书基本信息表格 图书评论信息表用于储存图书评论的信息 表 4-2 管理员用户信息表 字段名数据类型长度主键备注 13 idnvarchar20是 根据添加用户时的日期自 动生成 namenvarchar50否管理员的登录账号 pwdnvarchar50否管理员登录的密码 表 4-3 学生用户信息表 字段名数据类型长度主键备注 useridnvarchar20是 根据添加用户时的日期 自动生成 usernamenvarchar50否用户名 userpwdnvarchar50否用户登录密码 namenvarchar20否用户姓名 gradenvarchar50否用户年级 classnamenvarchar50否用户班级 sexnvarchar4否用户性别 emailnvarchar50否用户邮箱 表 4-4 图书信息表 字段名数据类型长度主键备注 bookidnvarchar15 主键根据添加图书的日期自 动生成 booknamenvarchar50 否 图书名称 authornvarchar50否作者名 pdatenvarchar10否出版日期 pressnvarchar50否出版社 bookintronvarchar500否图书简介 lmarkernvarchar50否借阅标记 ltimenvarchar10否借出时间 rtimenvarchar10否归还时间 lnoint4否借出次数 表 4-5 外借书籍信息表 字段名数据类型长度主键备注 cidnvarchar20是根据评论日期时间自 动生成 bookidnvarchar15否图书编号 contentmentnvarchar200否评论内容 usernamenvarchar50否用户名 14 第第 5 章章 系统实现系统实现 5.1 服务器端的设计-搭建 java web 服务器 本软件是 c/s 结构的系统,因此要先搭建服务器端,利用 java ee 中的 servlet 来提供服务,并将其部署在 tomcat 下。 在 myeclipse 中新建一个 web project,取名为 libraryservice,其结构如下图: 图 5.1 服务器端代码结构 5.3 服务器功能模块 com.briup.dao 是 cvm 模式中的 dao 层,为 service 提供服务,封装对数据库 的操作的方法。 com.briup.servlet 包中就各个不同的 servlet 类,其具体情况如下: 5.3.1 注册模块 15 提供用户注册 servlet 为 registerservlet,重写其 dopost()和 doget()方法,该 servlet 是用来处理学生用户注册请求。注册的参数有 username、password、indentityid、year、gender、college,其 url 为: :8088/libraryservice/servlet/registerservlet 部分代码如下: printwriter out = response.getwriter(); string username = request.getparameter(“username“); string password = request.getparameter(“password“); string indentityid = request.getparameter(“indentityid“); string year = request.getparameter(“year“); string gender = request.getparameter(“gender“); string college = request.getparameter(“college“); librarydao dao =new librarydaoimpl(); try user user1=(user)dao.findbyusername(username); if(user1!=null) xml=makexml.makexml(“该用户名已存在了“,false); else user user=new user(); user.setusername(username); user.setpassword(password); user.setindentityid(indentityid); user.setyear(year); user.setgender(gender); user.setcollege(college); dao.save(user); xml=makexml.makexml(“恭喜您注册成功了“,true); 5.3.2 登录模块 提供用户登录的 servlet 为 loginservlet,重写其 dopost()和 doget()方法, 该 servlet 是用来处理学生用户和管理员登录的请求。登录的参数有 username、password,其 url 为: :8088/libraryservice/servlet/loginservlet 部分代码如下: printwriter out = response.getwriter(); system.out.println(“welcome clientlogin“); 16 string xml=null; /获得帐号 string flag=request.getparameter(“flag“).trim(); string username = request.getparameter(“username“).trim(); string password= (string)request.getparameter(“password“).trim(); librarydao dao=new librarydaoimpl(); if(flag.equals(“normal“) if(username!=null) try com.briup.pojo.user user=dao.findbyusername(username); if(user!=null) if(user.getpassword().equalsignorecase(password) xml=makexml.makexml(“恭喜您登录成功了“,true); else xml=makexml.makexml(“密码不对“,false); else xml=makexml.makexml(“用户名不正确“,false); catch (exception e) / todo auto-generated catch block system.out.println(“网络异常“); out.println(“); out.println(“网络异常“); else if(flag.equals(“admin“) try admin admin=dao.findbyadminname(username); 17 if(admin!=null) if(admin.getpassword().equals(password) xml=makexml.makexml(“恭喜您登录成功了“,true); else xml=makexml.makexml(“密码不对“,false); else xml=makexml.makexml(“用户名不存在“,false); catch (exception e) / todo auto-generated catch block e.printstacktrace(); 5.3.3 书籍查询模块 提供特定书籍查询 servlet 为 findbookservlet,重写其 dopost()和 doget()方 法,该 servlet 是用来处理学生用户查询特定书籍的请求。查询书籍参数有 bookname、bookauthor,其 url 为: 01:8088/libraryservice/servlet/findbooksservlet 部分代码如下: string bookname=request.getparameter(“bookname“).trim(); string authorname=request.getparameter(“authorname“).trim(); string status=request.getparameter(“status“).trim(); /status 为yes表示被借出了 为no表示没被借出没 system.out.println(“-hello i am in findbooksservlet-“); string xml=null; list list=null; librarydao dao=new librarydaoimpl(); if(status.equals(“) try list=dao.findbookbyname(bookname, authorname); if(list!=null) xml=makexml.makexml(list,list.size()+“); 18 else xml=makexml.makexml(list,“抱歉图书馆没有该书了“); catch (exception e) / todo auto-generated catch block e.printstacktrace(); else try list=dao.findbookbyname(bookname, authorname,status); if(list!=null) xml=makexml.makexml(list,list.size()+“); else xml=makexml.makexml(list,“抱歉图书馆没有该书了“); catch (exception e) / todo auto-generated catch block e.printstacktrace(); 5.3.4 特定用户查询模块 提供特定用户查询 servlet 为 finduserservlet,重写其 dopost()和 doget()方法, 该 servlet 是用来处理管理员用户查询特定学生用户信息的请求。管理员查询特 定学生用户参数有 username,其 url 为: :8088/libraryservice/servlet/finduserservlet 部分代码如下: printwriter out = response.getwriter(); string username = request.getparameter(“username“).trim(); string xml=null; librarydao dao=new librarydaoimpl(); try com.briup.pojo.user user=dao.findbyusername(username); if(user!=null) 19 try xml=makexml.makexml(user,“); catch (exception e) / todo auto-generated catch block e.printstacktrace(); else try xml=makexml.makexml(“密码不对“,false); catch (exception e) / todo auto-generated catch block e.printstacktrace(); catch (dataaccessexception e) / todo auto-generated catch block e.printstacktrace(); 5.3.5 查询所有用户模块 提供所有用户查询servlet为findalluserservlet,重写其dopost()和doget()方法, 该servlet是用来处理管理员用户查询所有学生用户信息的请求。查询所有学生 用户信息不需要提供任何参数,只需要点击查询所有按钮便可以查询出所有, 其url为: :8088/libraryservice/servlet/findalluserservlet 部分代码如下: printwriter out = response.getwriter(); string xml=null; list list=null; librarydao dao=new librarydaoimpl(); try list=dao.findalluser(); xml=makexml.makexml(list,“); catch (exception e) / todo auto-generated catch block try xml=makexml.makexml(“网络异常“,false); catch (exception e1) / todo auto-generated catch block 20 e1.printstacktrace(); e.printstacktrace(); 5.3.6 添加书籍模块 提供管理员添加书籍servlet为savebookservlet,重写其dopost()和doget()方 法,该servlet是用来处理管理员用户对新书籍进行添加上架的请求。对需要上 架处理的书籍需要提供参数有书籍名、书籍作者、书籍所属科目、书籍所在位 置,书籍出版社名字、最大借阅时间等参数,其url为: :8088/libraryservice/servlet/savebookservlet 部分代码如下: printwriter out = response.getwriter(); string bookname=request.getparameter(“bookname“).trim(); string authorname=request.getparameter(“authorname“).trim(); string phname=request.getparameter(“phname“).trim(); string location=request.getparameter(“location“).trim(); string category=request.getparameter(“category“).trim(); /string status=request.getparameter(“status“).trim(); string renttime=request.getparameter(“renttime“).trim(); string num=request.getparameter(“num“).trim(); string xml=null; int number=integer.parseint(num); if(number0) librarydao dao =new librarydaoimpl(); for(int i=0;inumber;i+) book book=new book(); book.setbookname(bookname); book.setauthorname(authorname); book.setphname(phname); book.setlocation(location); book.setcategory(category); book.setstatus(“no“); book.setrenttime(renttime); try dao.save(book); system.out.println(“i have save this book “); catch (exception e) 21 / todo auto-generated catch block try xml=makexml.makexml(“抱歉出错了“,false); catch (exception e1) / todo auto-generated catch block e1.printstacktrace(); e.printstacktrace(); try xml=makexml.makexml(“恭喜已保存了该图书“,true); catch (exception e) / todo auto-generated catch block e.printstacktrace(); 5.4 客户端的设计-设计 android ui 界面 在eclipse安装好了adt插件并且导入了androidsdk后,创建一个android project,此工程是作为图书馆管理系统的客户端,是为广大用户下载使用的, 所以,该ui界面的主要要求是要操作性强和交互简单。客户端的注意事项为: 一个是数据库的设计,一个是各个功能的布局。 android project 名称:library 工程结构如图所示: 22 图 5.2 客户端系统结构 com.briup.utils 中包含的是各种工具类和封装的方法;com.briup 中则是客户 端中实现各个功能的类,每一个界面的类都在此包中,详细情况如下: libraryactivity.java 是系统主界面,用于选择登录或者注册; registeactivity.java 是注册界面; loginactivity.java 是登录界面; nuactivity.java 是学生用户查询书籍信息界面; adminactivity.java 是管理员管理界面; managerbook.java 是管理员管理书籍界面,包括书籍的添加、查询、删除; manageruser.java 是管理学生用户界面; findoneuser.java 是管理员查询特定学生界面; findalluseractivity.java 是管理员查询所有学生界面。 5.5 具体功能模块

温馨提示

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

评论

0/150

提交评论