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

下载本文档

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

文档简介

人生最大的幸福,是发现自己爱的人正好也爱着自己。 UNIVERSITY OF TECHNOLOGY毕业设计题 目 基于Android平台的图书管理系统手机客户端开发 学生姓名 xxx 学 号 08250334 专业班级 通信工程 指导教师 xxx 学 院 计算机与通信 答辩日期 2012年6月 基于Android平台的图书管理系统手机客户端开发The development of library management system is based on the Android platform xxx0825摘 要 传统WEB应用只能在PC机上使用不能做到随时随地的使用为了解决这样的不足基于Android平台的图书馆管理系统客户端就应运而生本设计阐述了在Android平台下图书馆管理系统的设计与实现过程其目的是让人们能够在基于Google Android平台的移动设备上享用传统WEB上图书馆管理系统的基本功能本系统采用C/S结构 MVC软件开发模式使用android布局技术完成UI的设计基于Java语言开发完成在不同型号的设备模拟器上测试通过系统实现了用户注册、登录、查询图书以及学生用户管理和图书管理等功能操作简单功能实用这是本软件设计的核心理念本系统力求创造最好的用户体验 关键词:图书馆管理系统;ANDROID;客户端;数据库设计;服务器端 AbstractThe 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 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 library management 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 目 录摘 要IABSTRACTII第1章 前 言11.1 课题研究的目的及意义11.2 课题的现状11.3 课题的内容1第2章 软件设计及开发工具介绍32.1 总体设计32.2 系统结构32.3 开发工具介绍和关键技术32.3.1 Eclipse的介绍32.3.2 MyEclipse与Tomcat介绍62.3.3 关键技术介绍7第3章 系统功能设计83.1 前台管理83.1.1 注册83.1.2 用户登录83.1.3 图书查询83.1.4 用户管理93.1.5 图书管理93.2 后台管理93.2.1 注册管理93.2.2 登录管理93.2.3 图书查询管理103.2.4 用户管理103.2.5 图书管理10第4章 数据库结构设计114.1 服务器端数据库设计114.1.1 数据库逻辑结构设计114.1.2 数据库物理结构设计13第5章 模块开发及编码实现155.1 服务器端的设计-搭建JAVA WEB服务器155.2 连接数据库模块155.3 服务器功能模块165.3.1 注册模块165.3.2 登录模块175.3.3 书籍查询模块185.3.4 特定用户查询模块195.3.5 查询所有用户模块205.3.6 添加书籍模块215.4 客户端的设计-设计ANDROID UI界面225.5 具体功能模块235.5.1 注册界面235.5.2 登录界面265.5.3 学生用户书籍查询界面285.5.4 管理员界面295.5.5 管理学生用户界面305.5.6 管理图书界面315.5.7 图书增加界面32第6章 系统测试346.1 用户注册测试346.2 用户登录测试346.3 图书查询测试366.4 用户管理测试366.5 书籍管理测试37总 结39参考文献41附录一 核心代码42附录二 外文文献(原文)43附录三 外文文献(译文)52致 谢60第1章 前 言1.1 课题研究的目的及意义移动互联网时代的来临说明一个崭新的时代开始了所谓移动互联网是将移动通信和互联网整合在一起移动设备(包括手机和上网本)可以随时随地地访问互联网资源和应用智能手机是移动互联网时代一个标志性的客户端工具它和传统的手机是有区别的它就像一台小电脑具有独立的操作系统可以自由安装、卸载软件具有强大的计算和存储能力可以通过移动通信网络来实现无线网络接入对于移动终端设备飞速发展的今天传统WEB上的应用出现在手机终端是一个大的趋势而基于Android开发的图书馆管理系统手机客户端正是对这一趋势的良好体现Android平台下的图书馆管理系统的开发能很好的为用户提供方便用户能通过它能随时随地的了解系统的实时信息做到信息的实时化通过Android平台下的图书馆管理系统客户端的开发与传统WEB应用进行良好的互补同时对于校内的图书馆管理系统来说手机对于学生是必不可少的一个物品手机客户端这种形式的图书馆管理系统能更加贴近学生的生活习惯并且适合学生年龄段的习性这对学生更多的接触到图书馆的信息有一定得促进作用1.2 课题的现状目前国内的基于Android平台的图书馆管理系统客户端还不成熟大多数的图书馆管理系统都出现在传统的WEB应用上在这个环境下基于Android平台的图书馆管理系统客户端属于一个崭新的应用作为一个不太成熟的应用大多数图书馆管理系统都是出现在学习android开发的一个项目中作为学习中的一个练习项目目前绝大部分的网络应用都还是传统的WEB应用但面对Android手机如此迅速发展的今天传统WEB的应用不能满足人们随时随地体验网络应用的想法所以出现在手机终端的应用将会越来越多同时其发展的速度也会越来越快校内图书馆管理系统作为传统WEB应用也必将在手机客户端上得到应用1.3 课题的内容由此出现大量的应用出现在手机上基于Android平台的图书馆管理系统手机客户端是依据现在的形式所开发的它是一套基于开放性的图书馆管理系统它有传统WEB上图书馆管理系统的大部分功能整个系统分为前台界面管理和后台服务器管理两部分划分为用户管理、图书管理、信息管理等三个部分在前台管理中用户进行注册、登录、查询特定图书等功能;后台管理模块负责控制前台界面管理的所有功能;本系统设置了学生用户和管理员两类两类用户都是使用同一个平台只是权限不同学生用户只能注册、查询图书等功能;管理员拥有最高权限可以对已经毕业的学生用户账号进行删除查询学生用户信息实时更新图书馆的新书发布图书馆最新信息等权限本图书馆管理系统能够适用于各类图书馆具有良好的可操作性可以随时的查询你所需要的图书信息只要你的智能手机安装了本系统客户端系统大大的方便了学生的图书查询的本系统采用C/S结构后台服务器使用Servlet编写服务器同时用Tomcat发布服务前台客户端环境使用的是ANDROID控件通过JDBC来调用Oracle数据库来实现手机客户端与服务器之间数据传输第2章 软件设计及开发工具介绍为了使软件开发能够顺利进行使开发人员对系统各个模块的性能、系统接口、系统开发及运行环境和计算机内部处理的逻辑及物理流程有更清晰的认识更利于源程序的开发现对系统的总体设计和系统结构设计及开发工具和关键技术做详细说明2.1 总体设计基于ANDROID平台开发的图书馆管理系统客户端从设计者的角度来看用户角色分为学生用户和管理员两类;功能包括注册、登录、密码找回、书籍查询、图书实时更新、普通用户管理共六大部分其中系统管理中的学生用户权限包括注册、登录、密码找回、书籍查询等四个模块;管理员的权限则是除了学生用户具有的权限外还有实时更新图书信息、学生用户管理等模块从使用者的角度来看分为前台和后台管理两大部分后台管理模块是本系统的关键部分之一它是系统维护和信息管理平台根据现实需要本系统后台管理用户有两类:管理员和学生用户这两类用户使用的系统管理平台都是同一个平台上只不过他们执行的权限不同2.2 系统结构本系统总体逻辑结构为C/S结构结构图如图2-1所示:图2.1 C/S结构图2.3 开发工具介绍和关键技术2.3.1 Eclipse的介绍Eclipse 是一个开放源代码的、基于 Java 的可扩展开发平台就其本身而言它只是一个框架和一组服务用于通过插件组件构建开发环境幸运的是Eclipse 附带了一个标准的插件集包括 Java 开发工具(Java Development KitJDK)Eclipse的发展史版本代号 平台版本 主要版本发行日期 SR1发行日期 SR2发行日期如下:表2-1 Eclipse的版本号版本代号平台版本主要版本发行日期SR1发行日期SR2发行日期Callisto3.22006年6月26日N/AN/AEuropa3.32007年6月27日2007年9月28日2008年2月29日Ganymede3.42008年6月25日2006年9月24日2009年2月25日Galileo3.52009年6月24日2006年9月25日2010年2月26日Helios3.62006年6月23日2006年9月24日2011年2月25日Indigo3.72006年6月22日2006年9月23日2012年2月24日Juno(预定)3.8及4.22006年6月27日2006年9月28日2013年2月22日Kepler4.32006年6月26日2006年9月27日2014年2月28日Eclipse是一个开放源代码的软件开发项目专注于为高度集成的工具开发提供一个全功能的、具有商业品质的工业平台它主要由Eclipse项目、Eclipse工具项目和Eclipse技术项目三个项目组成具体包括四个部分组成-Eclipse Platform、JDT、CDT和PDEJDT支持Java开发、CDT支持C开发、PDE用来支持插件开发Eclipse Platform则是一个开放的可扩展IDE提供了一个通用的开发平台它提供建造块和构造并运行集成软件开发工具的基础Eclipse Platform允许工具建造者独立开发与他人工具无缝集成的工具从而无须分辨一个工具功能在哪里结束而另一个工具功能在哪里开始Android工程是在Eclipse工具上编写的进行android工程的编写首先需要在Eclipse上安装ADT插件然后指定SDK所在的路径便可以创建android虚拟机了 在Eclipse下创建虚拟机的步骤如下:(1) 安装ADT插件在Eclipse单击菜单栏的Help在Help里面选中Install NewSoftware选项之后便可以出现如下界面:图2.2 ADT安装步骤界面指定好你的ADT路径后便可以安装好ADT插件(2) 导入AndroidSDK安装好ADT插件后单击Eclipse菜单栏Windows下找到preperence点击进入得到如下界面:图2.3 AndroidSDK安装界面在左边选项选中Android在SDK Location下导入AndroidSDK路径点击Apply应用便会导入Android的各个版本(3) 创建虚拟机安装好ADT和导入AndroidSDK成功后便可以在菜单栏Windows下找到AVD manage选项单击进入后便有新建android虚拟机界面在创建界面设置好虚拟机参数点击确定后就创建好了一个android虚拟机创建好虚拟机后点击开始便可以运行一个android虚拟机虚拟机运行成功界面如下:图2.4 android虚拟机视图 虚拟机模拟的是android智能手机的界面通过操作虚拟机可以体验到android智能手机的部分应用同时虚拟机是作为开发的android应用运行的场所他提供基本的人机交互功能2.3.2 MyEclipse与Tomcat介绍MyEclipse是一个十分优秀的用于开发Java J2EE的Eclipse插件集合MyEclipse企业级工作平台(MyEclipse Enterprise Workbench 简称MyEclipse)是对EclipseIDE的扩展利用它我们可以在数据库和JavaEE的开发、发布以及应用程序服务器的整合方面极大的提高工作效率它是功能丰富的JavaEE集成开发环境包括了完备的编码、调试、测试和发布功能支持HTMLStrutsJSPJavascript HibernateMyEclipseCSS SpringSQL的功能非常强大支持也十分广泛尤其是对各种开源产品的支持十分不错在结构上MyEclipse的特征可以被分为7类: 1 JavaEE模型 2 WEB开发工具 3 EJB开发工具 4 应用程序服务器的连接器 5 JavaEE项目部署服务 6 数据库服务 7 MyEclipse整合帮助 对于以上每一种功能上的类别在Eclipse中都有相应的功能部件并通过一系列的插件来实现它们MyEclipse结构上的这种模块化可以让我们在不影响其他模块的情况下对任一模块进行单独的扩展和升级简单而言MyEclipse是Eclipse的插件也是一款功能强大的JavaEE集成开发环境支持代码编写、配置、测试以及除错MyEclipse6.0以前版本需先安装EclipseMyEclipse6.0以后版本安装时不需安装Eclipse本系统是基于C/S架构的所以需要在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.0Tomcat 很受广大程序员的喜欢因为它运行时占用的系统资源小扩展性好支持负载平衡与邮件服务等开发应用系统常用的功能;而且它还在不断的改进和完善中任何一个感兴趣的程序员都可以更改它或在其中加入新的功能Tomcat 是一个轻量级应用服务器在中小型系统和并发访问用户不是很多的场合下被普遍使用是开发和调试JSP 程序的首选对于一个初学者来说可以这样认为当在一台机器上配置好Apache 服务器可利用它响应对HTML 页面的访问请求实际上Tomcat 部分是Apache 服务器的扩展但它是独立运行的所以当你 Apache Tomcat运行tomcat 时它实际上作为一个与Apache 独立的进程单独运行的而Tomcat 实际上运行JSP 页面和Servlet另外Tomcat和IIS、Apache等Web服务器一样具有处理HTML页面的功能另外它还是一个Servlet和JSP容器独立的Servlet容器是Tomcat的默认模式不过Tomcat处理静态HTML的能力不如Apache服务器目前Tomcat最新版本为7.0.27 Released2.3.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数据库进行储存图书馆里的基本信息第3章 系统功能设计本系统采用C/S模式开发的该系统的客户端和服务器端是独立分开的这样的分开也就形成了前台管理和后台管理前台管理注重用户的交互是否简便后台管理注重功能的逻辑和与数据库数据交互的功能3.1 前台管理前台客户端的所有功能画出的功能流程图如下:图3.1 前台客户端流程图3.1.1 注册用户通过手机客户端主界面上的注册按钮注册新的学生用户注册用户的信息通过服务器端和数据库连接数据库中的用户表则会生成你注册的信息同时在手机客户端提示注册成功3.1.2 用户登录用户登录分为两类用户:管理员和学生用户可以通过登录界面中选定身份登录服务器根据登录选定的信息选择数据库中的数据表进行匹配用户名和密码正确则登录成功3.1.3 图书查询在查询界面输入所需查询书籍的书名和作者名通过服务器端查询数据库返回你所查询的书籍信息书籍信息包括:书名、作者、出版社名、是否被接、剩余本数等信息在图书查询功能中运用到了ANDROID的一个自动完成文本的控件该控件可以通过你输入的查询信息列出带有你输入字的书名以方便你的检索通过此控件大大的提高了用户检索书籍的效率同时满足了模糊查询的功能是用户查询书籍方便、快捷3.1.4 用户管理用户管理模块是管理员对学生用户账号的管理对于某些特殊原因账号不使用了比如:学生毕业等原因不再使用账号的问题管理员有权利对这类账号进行删除同时可以学生用户的用户名查询学生用户的信息3.1.5 图书管理这个功能也只有管理员身份才能拥有管理员通过此功能可以对图书进行增加、删出功能通过这个模块管理员可以对新进的图书进行添加处理并能实时发布新增书籍对于删除功能管理员可以把一些已经下架不再外借的书籍进行删除以便造成不必要的麻烦3.2 后台管理后台服务器端的任务是根据客户端送发送过来的请求根据客户端不同功能模块通过检索数据库不同表格把检索结果返回给客户端显示给以用户其基本流程图如下:图3.2 后台服务器端流程图3.2.1 注册管理注册用户提交:向服务器提交用户注册的信息同时更新到数据库 注册管理是后台的一个重要内容注册只提供学生用户的注册这样可以保证图书馆用户权限的稳定和安全通过注册用户用户才能享受来自手机客户端的所有功能通过手机客户端注册用户来作为以后通过手机客户端登录图书馆管理系统的唯一身份认证3.2.2 登录管理登录管理:根据你登录的信息向服务器发送请求然后和数据库信息进行对比来确认用户登录的成功与否 登录时候首先你必须选定你的登录身份是以学生用户还是管理员身份登录根据你选择的不同身份服务器向不同的数据库表来核对信息以通过对用户信息的核对以确定所登录的账号密码是否正确3.2.3 图书查询管理图书查询管理主要通过图书的几个关键信息进行查询根据图书名字和图书作者向数据库提交信息进行条件检索通过输入信息的检索返回检索书籍的基本信息比如:图书名字、图书作者、出版社名、是否被借、剩余数量等基本信息3.2.4 用户管理后台的用户管理是处理管理员对有特殊情况的学生用户和查询特定学生用户的服务是与数据库进行数据更新与交互的服务3.2.5 图书管理后台的图书管理是处理管理员把新书添加到书籍数据库表的服务通过添加到数据库表学生用户才能在书籍查询功能中查询到新更新的书籍信息同时对于不再外借的书籍从数据库删除以此来更新数据库中的书籍名称第4章 数据库结构设计4.1 服务器端数据库设计采用的是Oracle数据库在本系统中采用了简易版的Oracle即数据库的名字为Oracle XE首先要解决的是在该数据库里某个用户下创建表首先配置Oracle数据库步骤如下: (1) 以Oracle管理员身份进入Oracle在终端输入的命令为:sqlplus /as sysdba;(2) 启动Oracle在终端输入的命令为:startup;(3) 创建新的用户在终端的命令为:先以管理员身份登录数据库然后创建新的用户的命令为:create user liuyujuan identified by liuyujuan;grant resourceconnect to liuyujuan;所创建的用户账号和密码分别为:liuyujuanliuyujuan; (4)然后以liuyujuan用户登录命令为:sqlplus liuyujuan/liuyujuan在账户liuyujuan下创建数据表以满足图书馆管理的日常需要表格名称分别为: lib_adminlib_userlib_bookslib_ret各个数据表的储存的信息分别为:管理员信息、普通用户信息、书籍信息、书籍外借信息表4.1.1 数据库逻辑结构设计在需求分析阶段已完成该系统所有的数据分析根据该阶段所建立的概念模型已经得出满足系统设计要求的几个关系描述该阶段的主要工作就是把前一阶段的成果转化为具体的数据库管理员用户有用户名和密码两个属性通过这两个属性来确定管理员用户的身份是否合法其中ID为主键其E-R图如下:图4.1 管理员E-R图学生用户有用户名、密码身份证号、入学年份、性别、所在学院名称等属性通过这些属性来确认学生信息表的信息其中主键为ID其E-R图如下:图4.2 学生用户E-R图书籍信息表是用来存储书籍的基本信息其数星星包括书名、作者名、书籍位置、出版社名称、所属科目、是否借出、最大借阅时间等其中自动分配的ID和书名作为联合主键其E-R图如下:图4.3 书籍信息E-R图外借书籍信息表是用来存储外借书籍的有关信息通过此表格来获取该外借书籍的基本状态其属性有书籍编号、书籍名、书籍作者、最大外借时间、实际外借时间、外借时间、借阅者ID其E-R图如下:图4.4书籍外借信息E-R图对于各个实体之间的关系E-R图如下:图 4.5 实体关系图4.1.2 数据库物理结构设计依据数据库的原理并结合以上E-R图经过转化即可进行数据库的物理设计基于以上数据库的逻辑设计考虑程序设计的简易性同时考虑题目的时间该系统的数据库采用Oracle简易版本建立一个数据库在其下创建4个数据表其结构分别如下各表:表4-1 数据表清单表名说明管理员用户表用于存储管理员信息表格普通用户表用于存储普通用户信息表格书籍信息表用于存储书籍基本信息表格书籍外借信息表用于储存外借书籍的基本信息表4-2 管理员用户信息表字段名数据类型长度主键备注ID自动编号10是由数据库sequence自动生成AdminnameVarchar250否管理员的登录账号PasswordVarchar250否管理员登录的密码表4-3 普通用户信息表字段名数据类型长度主键备注ID自动编号10是由数据库sequence自动生成UsernameVarchar250否唯一标识用户不可缺PasswordVarchar250否普通用户用户登录密码IndentityidVarchar2100否用户注册的身份证号YearVarchar250否用户入学年份GenderVarchar230否用户性别CollegeVarchar250否用户所在学院表4-4 书籍信息表字段名数据类型长度主键备注ID自动编号10联合主键由数据库sequence自动生成BooknameVarchar250联合主键书籍名称BookauthorVarchar250否书籍作者名PhnameVarchar250否出版社名称LocationVarchar260否所在位置CategoryVarchar280否所属科目StatusVarchar220否书籍状态RenttimeVarchar220否最大借阅时间表4-5 外借书籍信息表字段名数据类型长度主键备注IDVarchar210是由数据库自动生成Book_dateVarchar250否外借时间Act_ret_dateVarchar250否实际的外借时间Exp_ret_dateVarchar250否最大的外借时间Book_idVarchar210否书籍编号BooknameVarchar250否书籍名字AuthornameVarchar250否书籍作者名User_idVarchar210否借阅者id第5章 模块开发及编码实现5.1 服务器端的设计-搭建java web服务器本软件是C/S结构的系统因此要先搭建服务器端利用Java EE中的servlet来提供服务并将其部署在Tomcat下需要解决的是创建不同的servlet来提供不同的服务Web服务的名称:LibraryService在MyEclipse中新建一个web project取名为LibraryService其结构如下图:图5.1 服务器端代码结构5.2 连接数据库模块 com.briup.jdbc是CVM模式中的低层数据库层包中的类是用来连接数据库和操作数据库的其中JDBCConnectionFactory.java用来连接数据库的连接数据库的三个变量为:private static String url;private static String userName;private static String userPwd;连接数据库需要urlusernameuserPassword这三个值而这三个值放入到jdbcinfo中通过Properties来获取部分代码如下:Properties pro = new Properties();pro.load(new FileInputStream(E:Myeclipse6.5 workspaceLibraryServicesrccombriupjdbc jdbcinfo);url=pro.getProperty(url); userName = pro.getProperty(userName); userPwd = pro.getProperty(userPwd);new oracle.jdbc.driver.OracleDriver(); Connection conn = DriverManager.getConnection(urluserNameuserPwd);5.3 服务器功能模块com.briup.dao是CVM模式中的Dao层为service提供服务封装对数据库的操作的方法com.briup.servlet包中就各个不同的Servlet类其具体情况如下:5.3.1 注册模块提供用户注册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);elseUser 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);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);if(admin!=null)if(admin.getPassword().equals(password)xml=MakeXML.makeXml(恭喜您登录成功了true);elsexml=MakeXML.makeXml(密码不对false);elsexml=MakeXML.makeXml(用户名不存在false); catch (Exception e) / TODO Auto-generated catch blocke.printStackTrace();5.3.3 书籍查询模块提供特定书籍查询servlet为findBookServlet重写其doPost()和doGet()方法该servlet是用来处理学生用户查询特定书籍的请求查询书籍参数有bookname、bookauthor其url为: :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(listlist.size()+);elsexml=MakeXML.makeXml(list抱歉图书馆没有该书了); catch (Exception e) / TODO Auto-generated catch blocke.printStackTrace();elsetry list=dao.findBookByName(bookname authornamestatus);if(list!=null)xml=MakeXML.makeXml(listlist.size()+);elsexml=MakeXML.makeXml(list

温馨提示

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

评论

0/150

提交评论