基于android studio的图书管理系统的APP开发

上传人:文*** 文档编号:53920367 上传时间:2022-02-11 格式:DOC 页数:42 大小:1.10MB
返回 下载 相关 举报
基于android studio的图书管理系统的APP开发_第1页
第1页 / 共42页
基于android studio的图书管理系统的APP开发_第2页
第2页 / 共42页
基于android studio的图书管理系统的APP开发_第3页
第3页 / 共42页
点击查看更多>>
资源描述
目录摘要IABSTRACTII1 绪论11.1 课题研究的目的及意义11.2 国内课题研究现状21.3 课题综述22 系统分析与设计32.1 需求分析32.1.1 功能需求32.1.2 性能需求32.2 可行性分析42.2.1 经济可行性42.2.2 技术可行性42.3 开发工具介绍和关键技术42.3.1 eclipse介绍42.3.2 SQL Server 2008介绍72.3.3 Tomcat介绍82.3.4 关键技术介绍93 系统总体设计103.1 设计原则103.2 系统结构113.3 设计思想113.4 用户使用模块113.4.1 用户注册123.4.2 用户登录123.4.3 书籍查询133.4.4 用户管理133.4.5 图书管理133.5 管理员管理模块133.5.1 注册管理143.5.2 登录管理143.5.3 书籍查询管理143.5.4 用户管理143.5.5 图书管理143.6 系统数据分析和设计153.6.1 数据库逻辑结构设计153.6.2 数据库物理结构设计164 详细设计184.1 客户端的设计Android的界面设计184.2 服务端的设计搭建web服务器194.3 具体功能界面224.3.1 注册界面224.3.2 登陆界面234.3.3 图书查询预约界面264.3.4 添加图书界面294.3.5 管理学生用户界面315 系统测试与性能测试325.1 软件测试325.2 本系统测试325.2.1用户普通功能模块测试335.2.2 用户管理模块测试335.3 本章小结33结束语34致谢35参考文献36基于Android的图书管理系统客户端设计与实现摘要传统的WEB应用只能在电脑上使用,不方便用户随时随地的使用。为了解决这样的不足,基于Android 平台的各种应用客户端就应运而生。为了能够让人们在基于 Android 平台的移动设备上享用图书管理系统的功能,本设计阐述了在 Android 平台下图书管理系统的设计和实现过程,该系统采用C/S结构,使用Android 布局技术完成界面设计,使用java语言开发完成。系统实现了用户注册、登陆、查询图书,以及学生用户管理和图书管理等功能,并在不同型号的设备模拟器上测试通过。关键词:图书管理系统,Android,客户端,数据库设计,服务端。DESIGN AND IMPLEMENTATION OF LIBRARY MANAGEMENT SYSTEM CLIENT BASED ON ANDROID ABSTRACTTraditional WEB application only on computer use, convenient to use anytime, anywhere. To address this deficiency, the client-based applications on the Android platform came into being. In order to allow people to enjoy the function library management systems on mobile devices based on the Android platform, the design describes the design and implementation process of library management system in the Android platform, the system uses C / S structure, layout techniques to complete the Android interface design, use java language development is completed. System user registration, login, check books, and student user management and library management functions, and tested on different types of equipment simulator through. KEY WORDS Library Management System, Android, Client, Database Design, Server.371 绪论1.1 课题研究的目的及意义随着计算机和通信技术的发展,人类已经逐渐的进入信息化社会。信息和材料能源一样成为一种社会的基本生产材料,在人类社会生产活动中发挥着重要的作用,大幅度地提高了社会生产力。同时人们对信息和数据的利用与处理也已进入自动化、网络化和社会化的阶段。因此,开发相关的管理信息系统已经成为各行各业D的必须1。管理信息系统作为一门边缘科学,集管理科学、信息科学、系统科学、现代通信技术和电子计算机技术与一体,可以解决企业或组织所面临的问题。对内来看,可以提高工作效率;对外来看,可以获得竞争优势2。图书作为一种信息资源,用户阅读的资料繁多,包含很多的信息数据的管理。以前,有很多的图书管理都是手工的,尚未使用计算机进行管理。根据调查得知,人们对图书管理的方式主要是计算机管理,及少量的基于文本、表格等纸质媒介的手工处理。手工处理对于大量的图书信息管理很不方便,耗时耗力,而且容易出错。对于大中型的图书馆来说,计算机管理已经成为家常便饭,好的计算机图书管理系统可以相当容易的实现对图书、用户的管理,安全性和稳定性较高,已经成为这些图书管理主流管理方式3。但是,这只是对于图书管理人员来说的。对那些我那个图书馆来回跑的用户来说,这样的情况还是很不方便的。在移动互联发展极速的今天,作为主流管理的计算机已经不能满足一些人们的要求,所以,作为移动互联时代标志性的客户端工具智能手机的出现就显得有些理所当然了4。而基于android 平台的智能手机就是其中的代表。智能手机就像一台微型电脑,具有强大的计算和存储能力,可以通过通信网络来实现网络的介入,可以随时随地的使用。这样的功能弥补了计算机携带不方便的不足。所以,基于android 平台的图书管理系统客户端,也就满足了用户与图书馆交互的不足5。通过android 平台的图书管理系统客户端,用户可以很好地为用户提供方便,随时随地了解图书信息及图书借阅。而智能手机的普及可以使得这个图书管理系统得到广泛的使用6。1.2 国内课题研究现状计算机技术的快速发展及计算机网络的普及,英特网成为人们查找信息的重要途径。本世纪是信息的时代,所以信息的交换流通就显得特别的重要10。因此,快速的实现信息交互就显得非常很有必要。目前,国内基于Android 平台的图书管理系统还不太成熟,大多数的图书馆都采用计算机管理的方式,基于Android 平台的图书管理系统就显得不太成熟,暂时,还没有太大的市场。但是,在计算机管理渐显弊端的今天,Android技术逐渐走进了人们的视线。随着智能手机的市场占有率的不断提高,基于Android技术的应用将会越来越多,图书管理系统作为传统的计算机应用,也必将在手机客户端得到广泛的应用7。1.3 课题综述 智能手机的普及,使得Android技术的到广泛的推广,基于Android的图书管理系统作为出现在手机上,已经是必不可挡的趋势。该系统是一套简单,实用性强的系统,可以简化户对图书的操作,方便用户的使用7。技术方面,Java语言是Internet 开发的一个强大工具,运用Java来开发这样一个管理系统软件,不仅功能强大,可复用性强,更能为使用者到来方便。对于该系统的设计,一般采用java服务器端、客户端的开发,采用Microsoft SQL Server 2008 作为后台数据库开发工具,以Jdk 作为JavaBean、Servlet开发工具,在Windows 系统中用jdbc连接技术进行服务器连接8。本系统增加了管理员功能,管理员可以通过该系统实现对用户信息和图书信息的简单操作。而用户可以通过该系统的搜索功能来实现图书的查找以及对图书借阅信息的掌握。本系统以PC机模拟图书馆服务器,在同一局域网wifi下就可连接手机客户端。2 系统分析与设计2.1 需求分析需求分析就是把软件计划期间建立的软件可行性分析求精和细化,分析各种可能的解法,并且分配给各个软件元素。简单点说需求分析就是告诉系统必须完成哪些工作。它主要包括以下两方面。2.1.1 功能需求本系统会涉及到图书信息、图书借阅信息、读者信息以及管理员的多种数据管理。从管理的角度出发可以将图书管理分为图书管理和用户管理。图书管理包括添加图书,删除图书,查询图书等。用户管理包括读者的个人信息管理,借阅管理等。客户端上的图书管理主要有以下几个部分组成:(1)添加图书:把新进的图书添加进入数据库。(2)图书信息管理:把图书的详细信息(如:作者,价格等)写入数据库。(3)图书查询管理:用户可以根据图书名称等对图书进行查询。(4) 图书预约管理:用户可以根据查询反馈信息来预约图书。用户管理主要功能有以下组成:(1)用户信息管理:可以对用户信息进行操作。(2)用户借书管理:用户可以预约图书。2.1.2 性能需求系统的运行对运行环境的一些要求:(1)硬件环境:处理器:现有Inter Pentium系列或更高内存:不小于1G硬盘空间:100G显卡:AMD/Intel现有系列(2)软件环境:开发环境:Win7/Windows XP开发工具:Eclipse数据库管理系统:SQL Server2008运行环境:Win7、WindowsXP2.2 可行性分析2.2.1 经济可行性本设计是基于Android的 图书管理系统,在使用方面向用户体验靠拢,所以本系统设计目的就是简单,使用,经济。开发成本:本系统开发只需要一台个人电脑,另可选择免费的Eclipse,Android SDK,SQL Server 2008等开发工具。使用成本:Android 2.0以上手机一部。2.2.2 技术可行性基于Android 的图书管理系统客户端是可行的,因为在移动互联技术快速发展的今天,智能手机已经普及大众了,而且Android技术以相当的成熟9。我们可以使用Android开发出适用于手机客户端的各种应用。本系统在开发工具方面采用了Java EE 版本的Eclipse,并且配置好Android环境,开发简单,方便。数据库方面则使用了SQL Server 2008,这是一个功能强大,最重要的是可跨平台的数据库,适用于各种Web 和 Android开发。2.3 开发工具介绍和关键技术2.3.1 Eclipse介绍Eclipse 是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件泽建构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括Java开发工具(Java Development Kit,JDK)。Eclipse是著名的跨平台的自由集成开发环境(IDE)。最初主要用来Java语言开发,通过安装不通过的插件Eclipse可以支持不同的计算机语言,比如C+和Python等开发工具。Eclipse的本身只是一个框架平台,但是众多插件的支持使得Eclipse拥有其他功能相对固定的IDE软件很难具有的灵活性。许多软件开发商以Eclipse为框架开发自己的IDE。Eclipse是一个开放源代码的软件开发项目,专注于高度集成的工具开发提供一个全功能的、具有商业品质的工业平台。它主要由Eclipse项目、Eclipse工具项目和Eclipse技术项目三个项目组成,具体包括四个部分组成Eclipse Platform、JDT、CDT和PDE。 Eclipse发展史如表2-1所示。表2-1 Eclipse版本号版本代号版本平台主要版本发布日期SR1发行日期SR2发行日期Callisto3.22006.6.26N/AN/AEuropa3.32007.6.272007.9.282008.2.29Ganymede3.42008.6.252009.9.242009.2.25Galileo3.52009.6.242009.9.252010.2.26Helios3.62010.6.232010.9.242011.2.25Indigo3.72011.6.222011.9.232012.2.24Juno3.8及4.22012.6.272012.9.282013.3.1Kepler4.32013.6.262013.9.272014.2.28Luna4.42014.6.25N/AN/AAndroid工程是在Eclipse工具上编写的12,进行android工程的编写,首先需要在Eclipse上安装ADT插件,然后指定SDK所在的路径,便可以创建android虚拟机了。在Eclipse下创建虚拟机的步骤如下:(1)安装ADT插件在Eclipse单击菜单栏的Help,在Help里面选中Install NewSoftware选项,之后便可以出现界面如图2-2所示。图2-2 ADT安装步骤界面指定好你的ADT路径后,便可以安装好ADT插件。(2)导入AndroidSDK安装好ADT插件后,单击Eclipse菜单栏Windows下找到preperence,点击进入,得到如图2-3所示。图2-3 AndroidSDK安装界面在左边选项选中Android,在SDK Location下导入AndroidSDK路径,点击Apply应用,便会导入Android的各个版本。(3)创建虚拟机安装好ADT和导入AndroidSDK成功后,便可以在菜单栏Windows下找到AVD manage选项,单击进入后便有新建android虚拟机界面,在创建界面设置好虚拟机参数点击确定后,就创建好了一个android虚拟机。创建好虚拟机后,点击开始便可以运行一个android虚拟机,虚拟机运行成功界面如图2-4所示。图2-4 android虚拟机视图虚拟机模拟的是android智能手机的界面,通过操作虚拟机可以体验到android智能手机的部分应用。同时虚拟机是作为开发的android应用运行的场所,他提供基本的人机交互功能。2.3.2 SQL Server 2008介绍SQL Server 2008实在Microsoftd的数据平台上发布,可以组织管理任何数据。可以将结构化、半结构化和非结构化额文档的数据直接存储到数据库中。可以对数据惊醒查询、搜索、同步、报告和分析之类的操作。数据可以存储在各种设备上,从数据中心最大的服务器一直到桌面设计和移动设备,它都可以控制数据为不用管数据存储在哪里13。SQL Server 2008出现在微软数据平台远景上是因为它使得公司可以运行他们最关键任务的应用程序,同时降低了管理数据基础设施和发送观察信息给所有用户的成本。这个平台有以下特点:(1)可信任的使得公司可以以很高的安全性、可靠性和可扩展性来运行他们最关键任务的应用程序。(2)高效的使得公司可以降低开发和管理他们的数据基础设施的时间和成本。(3)智能的提供了一个全面的平台,可以在你的用户需要的时候给他们发送观察和信息。SQL(Structured Query Language,结构查询语言)是一个功能强大的数据库语言。SQL通常使用于数据库的通讯。ANSI(美国国家标准学会)声称,SQL是关系数据库管理系统的标准语言。SQL语句通常用于完成一些数据库的操作任务,比如在数据库中更新数据,或者从数据库中检索数据。标准的SQL命令,比如“Select”、 “Insert”、 “Update”、 “Delete”、 “Create”和 “Drop”常常被用于完成绝大多数数据库的操作。SQL功能强大,是一种完备的数据处理语言,不仅用于数据库查询,而且用于数据库中的数据修改和更新,概括起来,它可以分成以下几组:(1)DML(Data Manipulation Language,数据操作语言):用于检索或者修改数据。 (2)DDL(Data Definition Language,数据定义语言): 用于定义数据的结构,比如 创建、修改或者删除数据库对象。(3)DCL(Data Control Language,数据控制语言):用于定义数据库用户的权限。其中DML组可以细分为以下的几个语句:SELECT:用于检索数据;INSERT:用于增加数据到数据库;UPDATE:用于从数据库中修改现存的数据;DELETE:用于从数据库中删除数据。2.3.3 Tomcat介绍Tomcat服务器是一个免费的开放源代码的Web应用服务器,属于轻量级应用服务器,在中小型新系统和并发访问用户不是很多的场合被普遍使用,是开发和调试jsp程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache服务器,可利用它响应对HTML(标准通用标记语言下的一个应用。)页面的请求。史记山Tomcat部分是Apache服务器的扩展,但他是独立运行的,所以当你运行tomcat时,它实际上作为一个与Apache独立的进程单独运行的。诀窍是,的那个配置正确时,Apache为HTML页面服务,而Tomcat实际上运行JSP页面和Servlet。另外,Tomcat和IIS等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。不过,Tomcat处理静态HTML的能力不如Apache服务器。Tomcat很受广大程序员的喜欢,因为它运行时占用的系统资源少,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能;而且它还在不断地改进和完善中,任何一个感兴趣的程序员都可以更改它或在其中加入新的功能。2.3.4 关键技术介绍本系统开发采用的语言是java,使用的关键技术是布局和数据存储。布局是用来设计用户交互界面,用运好页面布局技术可以是该系统有个良好美观的界面以及很好地用户体验,因此运用好布局技术直接和用户使用是相关的。而操作者所有的操作数据和用户需要提取的数据都存储在数据库中,它使用了数据库存储技术。Android中,软件界面设计常用布局有五种:AbsoluteLayout、LinearLayout、RelativeLayout、FrameLayout、TableLayout,由于布局的使用,并且布局之间可以相互嵌套,使得android软甲的界面设计变得相当的灵活,只要运用的合理,即使一些复杂的页面也可以变得简单。Android中数据存储技术有文件存储、preference、sqlite、ContentProvider和网络存储,文件存储是以流的形式读写文件,可以以文件的格式,也可以以二进制的形式,在java语言中要使用硫,则写入文件的对象必须进行序列化,sqlite是嵌入式移动设备中常用的轻量级数据库,可以看做是计算机上的sql server、oracle等数据库。本系统中采用的sql server。3 系统总体设计 3.1 设计原则软件开发需要遵循一定的原则,其原则有以下几个方面(1)软件可靠性原则:可靠性直接关系到涉及自身的声誉和生存发展竞争能力,意味着该软件在测试运行过程中避免可能发生故障的能力,且一旦发生故障后,具有解脱和排除故障的能力。(2)实用性原则:要力求最大限度得满足实际工作的需要,考虑各业务层次、各管理环节数据处理的实用性,把满足用户生产的和管理业务作为第一要素进行考虑。用户接口和操作界面设计尽可能做到界面美观大方、操作简便实用。(3)可扩展性原则:为适应将来的发展,系统应具有良好的可扩展性和可维护性。软件设计应尽可能模块化、组织化,使应用系统可灵活配置,适应不同的情况。数据库的设计应尽可能考虑到未来的需要。(4)安全性原则:应用软件与数据库系统的设计要做到安全可靠,防止非法用户的入侵。数据库的备份策略恰当,以防灾难性事故的发生。(5)用户界面设计原则:用户界面的设计应符合Windows规范的图形用户界面(GUI),做到美观大方。用户界面应当直观、明了、条理清晰。实现“傻瓜型”管理-易学、易用、易管理。(6)数据库设计原则:一致性原则:对信息进行统一的分析与设计,协调好各数据源,保证系统数据的一致性和有效性;完整性原则:数据库的完整性是指数据的正确性和相容性,要防止合法用户使用数据库时向数据库加入不规范的数据,对输入到数据库中的数据要审核和约束机制;安全性原则:数据库的安全性是指保护数据,防止非法用户使用数据库或合法用户非法使用数据库造成数据泄漏、更改或破坏,数据库要有人证和授权机制;可伸缩性原则:数据库的设计应充分考虑发展的需要、移植的需要,应具有良好的扩展性,伸缩性和适度冗余;规范化数据库的设计:应遵循规范化理论。规范化程度过低的数据库,可能会存在插入/删除异常、修改复杂、数据冗余等问题,解决的方法就是对关系模式进行分解或合并,转换成高级范式。3.2 系统结构基于Android 图书管理系统手机客户端从设计者角度划分,可以分为用户(学生)和管理员。学生用户具有的权限包括行实名注册、用户登录、查找图书、图书借阅、定制借阅时间;管理员权限则是通过该系统进行图书更新、书籍查询、以及用户管理等15。从使用者角度可以分为前台和后台两大部分。后台是本系统的最重要部分,该部分是本系统的信息维护和管理平台。根据显示要求,本系统后台有两类用户:用户和管理员。用户和管理员都可以通过该系统进行操作,只不过权限会有所不同。本系统总体设计结构为C/S结构,结构如图3-1所示。图3-1 C/S结构图3.3 设计思想基于Android的图书管理系统客户端共分为两大模块:图书管理和用户管理。图书管理模块主要是对新书的录入,破损下架图书的删除以及对图书的查询。用户管理模块主要是对用户的管理,查找,删除等。结构上看,Android图书管理系统客户端是C/S结构,该设计包括了服务器端和客户端的设计。3.4 用户使用模块普通用户功能流程图如图3-2所示。图3-2 用户使用流程图3.4.1 用户注册用户可以通过手机客户端上的注册按钮来打开注册界面,然后根据注册界面提示信息填入对应数据来完成用户注册,注册信息会添加到数据库,满足注册条件后会返回注册成功。注册完成后即可登录,执行用户相关操作。3.4.2 用户登录登录用户按照功能角色分为两类:学生和管理员。用户可点击登陆界面角色按钮选定角色后进行登录,点击登录后,数据库会匹配用户信息,用户信息正确后,即可完成登录。3.4.3 书籍查询在查询界面输入书名,通过服务器连接数据库来返回查询信息,查询信息包括:书名,作者,图书价格,是否被订阅等信息。3.4.4 用户管理用户管理模块式管理员对学生用户账号的管理,对于不使用的账号,管理员可以对它进行删除,同时管理员还有权限对用户信息进行查询。3.4.5 图书管理图书管理模块可以让管理员通过此功能,对图书进行添加和删除等功能。通过这个模块,管理员可以对最近购买的图书进行添加处理,而且管理员还可以对一些下架或者破损严重的书籍进行删除,以免误导学生,造成不必要的麻烦。3.5 管理员管理模块后台管理的功能是可以把用户请求,通过不同功能模块,去检索数据库,然后把结果返回个客户端的用户,如图3-3所示。图3-3 管理流程图3.5.1 注册管理用户提交注册信息:用户填写完注册信息后,点击注册按钮,向服务器发送注册信息,服务器保留其信息,并且更新数据库。注册管理在后台功能里面是很重要的,注册不仅可以实现学生的注册,而且还可以实现管理员的注册。管理员注册会增加一个管理员注册激活码,以免被人胡乱注册,保证图书管理系统的安全性。3.5.2 登录管理登录管理:登陆管理可以把登录用户名和密码发送到数据库,和数据库中用户信息进行对比,对比正确则可以登录成功,反之失败!用户进入登陆界面,会有用户名、密码以及角色选择输入框,角色包括学生和管理员。用户选定角色并且输入正确的用户名和密码之后则可完成登录。登录过程包括填写信息和数据库请求和响应。3.5.3 书籍查询管理用户通过图书查询输入框来对图书进行查询,如输入图书名称,之后把信息发送给服务器端的数据库,数据库会对书籍进行查找,查找完成之后把查找信息发送给用户,该信息会包括图书名称,作者,是否被借阅等。3.5.4 用户管理管理员具有删除和查询用户信息的权限,对于一些有特殊情况,比如学生毕业,退学等学生进行删除,实时保持数据库的最新状态。3.5.5 图书管理管理员具有该功能的权限。最为管理员,需要经常对数据库进行更新。新购进的图书,管理员需要把它添加进数据库;破损图书,下架图书,管理员会将之从数据库删除;同时管理员还可以查询图书的借阅信息。3.6 系统数据分析和设计3.6.1 数据库逻辑结构设计本系统设计阶段完成数据分析,并且根据数据信息建立相应的关系,目的是把该阶段的数据结果转化为数据库。管理员和学生用户有以下属性:id、username、password、college_name、sex、type几个属性。数据库通过用户的name、password这两个属性来确定用户身份是否合法。E-R图如图3-4所示。图 3-4 用户E-R图图书信息表:专门用来存储书籍的信息。E-R图如图3-5所示。图3-5 图书E-R图对于各个实体之间的关系E-R图如图3-6所示。图3-6 实体E-R图3.6.2 数据库物理结构设计根据以上的E-R图,转化成数据库的物理设计。基于以上逻辑设计,考虑程序设计的简易性,该系采用SQL Server 2008建立简单数据库,在下边创建两个表。表数据清单设计如表3-1所示。表3-1 数据表清单表名说明用户表用于存储用户信息书籍信息表用于存储书籍基本信息用户表中存储了用户的各种信息,如表3-2所示。表3-2 用户表字段名数据类型长度主键备注Usernamevarchar50否PasswordVarchar50否IDcardVarchar50否In_timeVarchar10否College_nameChar10否Regist_idChar10否允许为空SexChar10否TypeChar10否IDInt 是图书表中存储了图书的全部状态,如表3-3所示。表 3-3 图书表字段名数据类型长度主键备注Bookidvarchar50主键BookbuyVarchar50否BookauthorVarchar50否IsborrowChar10否UsernameVarchar50否允许nullTimeVarchar20否允许nullTimestopVarchar20否允许nullBooknameVarchar50否StudentidVarvhar50否允许null4 详细设计4.1 客户端的设计Android的界面设计在Eclipse安装好了ADT插件并且导入了AndroidSDK后,创建一个android project,此工程是作为图书馆管理系统的客户端,是为广大用户下载使用的,所以,该UI界面的主要要求是要操作性强和交互简单。客户端的注意事项为:一个是数据库的设计,一个是各个功能的布局。Android Project 名称:bookmanagement。工程结构图如图4-1所示。 图4-1 客户端工程图4.2 服务端的设计搭建web服务器本软件是C/S结构的系统,因此要先搭建服务器端,利用Java EE中的servlet来提供服务,并将其部署在Tomcat下。需要解决的是创建不同的servlet来提供不同的服务。Web服务的名称:bookweb。工程界面如图4-2所示。图4-2 服务端工程图构建服务器过程:打开eclipse-点击file-new-other 如图4-3所示。图4-3 Servers构建图1-server-next如图4-4所示。图 4-4 Servers构建图2选择对应tomcat版本-next 如图4-5所示。图 4-5 Servers构建图3进入到Add and Remove界面双击available框中的项目,然后项目会移动到右边框中-最后点击finish。如图4-6所示。图4-6 Servers构建图44.3 具体功能界面4.3.1 注册界面对于一个系统的开始,首先必须的是用户的注册界面,注册模块是为了登录系统所进行的获取通行证的步骤,注册所有的信息都将提交给数据库进行存储,注册的信息将作为用户在本系统进行一切活动的标识。注册功能对应的程序名为com.briup包下的RegisterActivity.java。注册界面如图4-7所示。图4-7 注册界面核心代码如下:dialog_group.setOnCheckedChangeListener(new OnCheckedChangeListener() Overridepublic void onCheckedChanged(RadioGroup arg0, int checkedId) / TODO Auto-generated method stubif(checkedId = dialog_boy.getId()sextype = 男;else if(checkedId =dialog_girl.getId()sextype = 女;); dialog_regis.setOnClickListener(new OnClickListener() Overridepublic void onClick(View arg0) / TODO Auto-generated method stub username = user_name.getText().toString(); password = user_password.getText().toString(); idcard = user_identity.getText().toString(); in_time = user_time.getText().toString(); college_name = collegename.getText().toString(); regist_id = tearher_regis.getText().toString();if(username !=null & password !=null & idcard !=null & in_time !=null & college_name !=null)/ 处理注册事件json = urlParameter.regist(username, password, idcard, in_time, college_name, regist_id, sextype, strtype);try if(json!=null & json.getBoolean(result)Toast.makeText(context, 注册成功!,3000).show();dialog.dismiss();elseToast.makeText(context, 注册失败!,3000).show(); catch (JSONException e) / TODO Auto-generated catch blocke.printStackTrace();elseToast.makeText(context, 参数不可为空!,3000).show();4.3.2 登陆界面登录界面作为系统的门面,登录界面完成的功能是验证所登录用户的账号是否正确,以验证是否有进入系统的权限。登录界面如图4-8所示。图4-8 登录界面核心代码如下: protected void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException if (null = req) return; res.setContentType(text/html;charset=utf-8); req.setCharacterEncoding(utf-8); res.setCharacterEncoding(utf-8); PrintWriter out = res.getWriter(); String username = req.getParameter(username); String password = req.getParameter(password); String type = req.getParameter(type);if(username != null & password != null & type != null) String sql = select top 1 username,password,type from user_name where username=+username+ and password=+password+ and type=+type+; System.out.print(sql); try resultSet = ControlDB.getInstance().executeQuery(sql);if(resultSet.next()maps.put(username, resultSet.getString(username);maps.put(password, resultSet.getString(password);maps.put(type, resultSet.getString(type);map.put(name, maps);map.put(result, true);out.println(Utils.getInstance().getMapJSONObject(map);resultSet.close();elsemap.put(result, false);out.println(Utils.getInstance().getMapJSONObject(map); catch (SQLException e) / TODO Auto-generated catch blocke.printStackTrace();elsemap.put(result, false);map.put(name, 请求参数不可为空);out.println(Utils.getInstance().getMapJSONObject(map); out.flush(); out.close(); 4.3.3 图书查询预约界面学生用户通过输入所需查询的书籍名字和书籍作者名,便可以从数据库中查询到所查询的图书。界面如图4-9所示。图4-9查询预约界面代码如下:public class Subscription extends HttpServlet/* * */private static final long serialVersionUID = 1L;private int statement ;private Map maps = null;private Map map= null;Overridepublic void init() throws ServletException / TODO Auto-generated method stubmaps = new HashMap(); map = new HashMap();super.init();Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse res)throws ServletException, IOException / TODO Auto-generated method stubres.setContentType(text/html;charset=utf-8); req.setCharacterEncoding(utf-8); res.setCharacterEncoding(utf-8);this.doPost(req, res);Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse res)throws ServletException, IOException / TODO Auto-generated method stubif (null = req) return; res.setContentType(text/html;charset=utf-8); req.setCharacterEncoding(utf-8); res.setCharacterEncoding(utf-8); PrintWriter out = res.getWriter(); String bookid = req.getParameter(bookid); String bookname = req.getParameter(bookname); String username = req.getParameter(username); String time = req.getParameter(time); String timestop = req.getParameter(timestop); String studentid = req.getParameter(studentid); if(bookid !=null & bookname !=null & username != null & time !=null & timestop !=null & studentid != null) String _bookname = new String(bookname.getBytes(ISO-8859-1),UTF-8); String sql = update book_name set isborrow=1, time=+time+,username=+username+,timestop=+timestop+,studentid=+studentid+ where bookid=+bookid+ and bookname=+_bookname+; System.out.print(sql); try statement = ControlDB.getInstance().executeUpdate(sql);if(statement = 1)map.put(result, true);map.put(name, 借阅成功);out.println(Utils.getInstance().getMapJSONObject(map);elsemap.put(result, false);map.put(name, 借阅失败);out.println(Utils.getInstance().getMapJSONObject(map); catch (SQLException e) / TODO Auto-generated catch blocke.printStackTrace(); else map.put(result, false);map.put(name, 请求参数不可为空);out.println(Utils.getInstance().getMapJSONObject(map); Overridepublic void destroy() / TODO Auto-generated method stubsuper.destroy();4.3.4 添加图书界面该界面由于向数据库中添加新进图书。界面如图4-10所示。图4-10 添加界面核心代码如下:if(bookid != null & bookname != null & bookbuy !=null & bookauthor !=null & isborrow !=null) if( !SqlStatm.getInstance().isselect(bookid) ) bookname =new String(bookname.getBytes(ISO-8859-1),UTF-8); bookbuy =new String(bookbuy.getBytes(ISO-8859-1),UTF-8); bookauthor =new String(bookauthor.getBytes(ISO-8859-1),UTF-8); String sql = insert into book_name (bookid,bookname,bookbuy,bookauthor,isborrow,username,time,timestop,studentid) values (+bookid+,+bookname+,+bookbuy+,+bookauthor+,+isborrow+,+username+,+time+,+timestop+,+studentid+); System.out.println(sql); try statement = ControlDB.getInstance().executeUpdate(sql);if(statement = 1)map.put(result, true);map.put(name, 插入成功);out.println(Utils.getInstance().getMapJSONObject(map);else
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸设计 > 毕业论文


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!