I
小区物业管理系统的设计与实现
摘 要
Internet已经成为人们生活、工作、学习越来越离不开的平台。[1]Web技术已经不在局限于单纯地提供信息服务,而是日益成为一个操作平台,为用户提供强大的服务功能。例如网上电子商务、社会信息数据库等。网络实现了远程通讯,人们能够通过计算机网络进行电子邮件的发送,召开网络会议,网上购物,甚至坐在家里就可以上大学(网上教育)。网络有巨大的潜力待我们去开发与探索。
因此,基于B/S体系架构创建这个小区物业管理网站,紧跟行业发展,满足人们生活、学习的需要。建立一个基于B/S架构的小区物业管理网站,实现信息网络化。通过较丰富的功能将 Web的技术特点体现出来。该系统可供管理员、注册用户登录使用。登录者可以查询信息或者发布信息,可以通过此网站了解小区物业管理情况,小区住户还能够查询各种收费。系统中管理员为必不可少的模块项,主要是为了安全有效地存储和管理及维护网站的各类信息,赋予管理员特定的权限,可以对用户和各种信息进行添加,删除,修改等。方便网站的管理与维护。
要实现这样的功能,离不开后台数据库的支持。用户验证注册信息,收集到的用户信息,分析得出的关联规则表等大量的数据都由数据库管理系统管理。本文中数据库服务器端采用了MYSQL作为后台数据库,以先进的JDBC技术与数据库连接,结合SQL语句处理对用户添加,删除,修改等操作,使Web与数据库紧密联系起来。 关键词:物业管理,信息管理,MYSQL
II
The Design and Implementation of Residential Property
Management System
ABSTRACT
Internet has become the way people live, work, study more and more inseparable from the platform. Web technology is not limited to simply providing information services, but increasingly as a platform to provide users with powerful services. Such as online e-business, community information database. Networks for remote communication, people can use a computer to send e-mail network, network meeting was held, online shopping, and even more than the University can sit at home (online education). Network has great potential to be for us to develop and explore.
Therefore, based on B / S architecture to create the residential property management sites, followed by development of the industry to meet the people living, learning needs. A Based on B / S structure of the residential property management sites, to achieve the information net -work. Rich functionality through the Web's technical characteristics reflected. The system is available for administrators, registered users log on using. Login information or publishing who can query information through this website for residential property management, residen tial tenants can also access a variety of charges. System administrator for the necessary modu le entry, mainly for the safe and effective storage and management and maintenance of all typ es of information the site to give specific permission to the administrator, and all kinds of inf or mation users can add, delete, modify, etc. . Easy site management and maintenance.
To achieve such functions, can not do without back-end database support. User authenti cation registration information, collected user information, association rules drawn from the analysis of data tables by the large number of database management systems management.This article uses MYSQL database server as the backend database, with advanced technology and JDBC database connection, with SQL statements on users to add, delete, modify, etc, so closely linked to Web and database.
KEY WORDS: Property Management, information management,MYSQL
III
目 录
摘 要 ........................................................................................................................................... I ABSTRACT .............................................................................................................................. II 1 绪论 ........................................................................................................................................ 1
1.1 引言 .............................................................................................................................. 1 1.2 背景 .............................................................................................................................. 2
1.2.1 B/S模型的优点 .................................................................................................. 2 1.2.2 JSP技术发展背景 .............................................................................................. 3 1.3 技术介绍 ...................................................................................................................... 4
1.3.1 MVC模式介绍 ................................................................................................... 4 1.3.2 struts技术介绍 ................................................................................................... 5 1.3.3 JDBC技术及其常用接口 .................................................................................. 6 1.2.4 MyEclipse的介绍 ............................................................................................... 6
2需求分析 ................................................................................................................................. 9
2.1 系统综合要求 .............................................................................................................. 9 2.2 实体-联系图 ................................................................................................................. 9 3系统设计 ............................................................................................................................... 11
3.1系统的功能模块设计 ................................................................................................. 11 3.2数据库设计 ................................................................................................................. 11 3.3 页面设计 .................................................................................................................... 13
3.3.1具体页面如下 ................................................................................................... 13 3.3.2 页面设计的技术问题 ...................................................................................... 16 3.4搭建Struts框架 .......................................................................................................... 16 4 系统实现 .............................................................................................................................. 18
4.1 系统基本结构 ............................................................................................................ 18
4.1.1 系统的基本结构图 .......................................................................................... 18 4.1.2系统的程序目录结构 ....................................................................................... 18 4.1.3 系统数据库设计 .............................................................................................. 20 4.2 系统页面实现代码 .................................................................................................... 21
4.2.1 css代码 ............................................................................................................. 21 4.2.2 页面代码 .......................................................................................................... 22 4.3 动作实现代码 ............................................................................................................ 23 5 软件测试 .............................................................................................................................. 27 6 总结 ...................................................................................................................................... 28
IV
致 谢 ........................................................................................................................................ 30 参 考 文 献 ............................................................................................................................ 31
小区物业管理系统的设计与实现 1
1 绪论
1.1 引言
[2]
在我国内地,物业管理是一个新兴的服务行业。经过20多年的发展,现已在全国
大中城市逐渐形成企业化经营、专业化管理和社会化服务的格局。随着人们生活水平的提高,在选住房时,不仅要看选住房的设计、建造水平、面积大小等,还要看有无好的居住环境、家居生活是否安全和方便。后者必须要有好的物业管理做保证。因此,搞好住宅小区的物业管理,有利于推进住宅产业化的发展,提高住宅和人居环境质量,改善人民生活。[11]这样要求小区管理者对物业管理进行宏观和微观的细致管理,其中最好的办法是用计算机操作的小区物业管理系统来实现对小区物业的管理,这就为我们设计小区物业管理系统提供了市场需要。[3]管理的服务标准包括:房屋维修管理、公共设施维护管理、公共秩序管理、清洁服务和绿化养护管理。这为我们的系统设计提供了参考标准。伴随着小区的规模不断扩大和住户的不断增多,像小区中的汽车,小区附带设施,小区的各项维护、投诉等事务都将越来越复杂,工作也随着变大。但是,一直以来人们使用传统人工的方式管理各种数据,这种管理方式存在着许多缺点,比如:效率低下,保密性差,还有时间一长,将产生大量的文件和数据,对于查找、更新和维护都呆了不少的困难。作为计算机应用的一部分,使用计算机对企业单位的各项信息进行管理,具有着手工管理所无法比拟的优点。例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高工作的效率,也是企业的科学化、正规化管。因此,开发这样一套小区物业管理系统软件成为很有必要的事情。
本次毕业设计主要就是为了设计一套小区物业管理系统,来满足现代物业管理的需要。主要工作为完成客户端,Web服务器端应用程序和数据库的制作,实现网上小区物业管理系统的创建,实现与完善整个基于B/S小区物业管理网站的组织建立和测试工作。
主要功能有按权限登录,分别获得各自权限以内的操作:系统管理员对管理员和物业信息进行添加,删除,修改等功能。业主可以通过系统发表投诉、查询缴费清单等功能。最重要的是有多个模块为模块管理员所使用,完成对于人员、财务、停车场等的管理。这个系统理想达到的状态是,使用它可以将整个需要人来完成的管理工作变得方便、迅速。
整个个性化页面生成系统主要由使用JSP技术开发实现个性化Web页面生成和JS结合JavaBeans技术实现组件重用两部分组成。在后台处理方面采用了Struts框架技术进行开发和JDBC技术对数据库进行操作。
整个系统结构如图1-1所示[1]。
陕西科技大学毕业论文(设计说明书) 2
用户 页 JSP 小区物业 添加,删除,修改等操作 图1-1 系统结构图 Database服务器 Web服务器 图1-1 系统结构图
1.2 背景
1.2.1 B/S模型的优点
几乎没有限制的客户端访问和极其简单化的应用程序部署和管理是B/S模型的优势所在。它和C/S模型比较优点极为突出。
两层技术模型(Two-Tier Architecture)是指客户机直接与服务器交流,没有其他服务介入的技术模型。对用户量在12—100的局域网环境中,两层模型的确是个不错的方案。由于该模型中,所有的用户连接都是被保持的,也就是说即使在空闲状态,连接依然存在。所以,用户的并发请求数量有限的。为了解决这个限制,使得成千上万的用户可以被无顾虑地添加,我们最好选用三层模型B/S结构,即Browser/Server(浏览器/服务器)结构,是随着Internet技术的兴起,对C/S结构的一种变化或者说是改进的结构。用户界面完全通过浏览器实现,一部分事务逻辑在前端实现,但是主要事务逻辑在服务器端实现,形成三层结构,是一种全新的软件系统构造技术。B/S模型结构图1-2所示。
从图中可以看到这种结构的一个重要的特点是,用户可以完全不需要安装客户端软件,当然也不需要担心任何软件升级和不兼容等任何客户端所遇到的问题。相比之下,B/S模型的优点显而易见,更适合这个网站的构建,有利于网站的维护和扩充。
小区物业管理系统的设计与实现 3
WWW浏览器 本地访问用户计算机 Internet网络 HTML页面 HTTP请求 WWW服务 HTML 第一层服务器 服务程序 CGI/Fast CGI/JAVA Servlets/ASP/JSP 取值 Internet网 数据 数据库 SQL 语句 数据端服务器
图1-2 B/S模型结构图
1.2.2 JSP技术发展背景
[1]
Web技术的迅猛发展正推动Internet上信息服务类的进步。WWW服务的基础是
HTML语言。这个系统模块中用到的JSP技术是在HTML语言的基础上使用脚本语言对网页的对象模型进行编程。JSP全称Java Server Pages,它是由Sun Microsystems公司提出、许多公司参与建立的一种动态网页技术标准。它诞生在1999年6月1日。目前国内外已经在广泛地使用JSP。随着JAVA语言得到普及,越来越多的公司开始关注JSP的前景。
[5]
传统的动态网页制作包括CGI、ASP、JSP三种,而JSP具有明显的优势。使用
CGI-BINJ接口是一个最早的动态WEB页面问题的解决方案。缺点,CGI程序必须从CGI接口读入一长串的字符串,再从字符串中取得所需要的数据并加以处理。过程十分繁琐。另一个缺点,除了Perl是解释语言外,其他都是编译式的语言。每次修改后,都必须重新编译一次,这给开发人员带来麻烦,增加了工作量。ASP和JSP都能取代CGI使网站建设和发展变得简单快捷。尽管JSP技术和ASP在许多方面都有相似的,但仍然存在很多不同之处,其中最本质上的区别在于:两者是来源于不同的技术规范组织,其实现的基础,WEB服务器平台要求不相同。
[6]
作为Java平台的一部分,JSP拥有Java编程语言“一次编写,各处运行”的特点。
一次写入,之后,可以运行在任何具有符合JavaTM语法结构的环境。取代之过去单一
陕西科技大学毕业论文(设计说明书) 4
平台开发。
ASP主要工作环境是微软的IIS应用程序结构,又因Activex对象具有平台特性,所以ASP技术不能很容易地实现在跨平台的WEB服务器的工作。
从开发人员的角度来看其区别在于:ASP仅支持组件对象模型COM,而JSP技术提供的组件都是基于JavabeansTM技术或JSP标签库。
JSP标签可扩充性。JSP技术能够使用开发者扩展JSP标签,JSP开发者能定制标签库,减少对脚本语言的依赖
生成可重用的组件。JSP基于组件的技术方法加速了总体开发过程。 JSP组件(Javabeans,或定制的JSP标签)是跨平台可重用的。Javabeans组件可以访问数据库,并能以分布式系统模式工作于UNIX和WINDOWS平台。
易于维护性。 基于JSP技术的应用程序比基于ASP的应用程序易于维护和管理。JSP突出的组件技术使修改内容而不影响逻辑或修改逻辑而不影响内容变得很容易实现。
如上的比较不难看出,JSP技术编写的程序运用要更加灵活,可扩展性更强。
1.3 技术介绍
1.3.1 MVC模式介绍
MVC模式[7]是国外用得比较多的一种设计模式,最早是在Smalltalk中出现的。MVC包括3中对象,间的地说,Model是应用对象,View是它在屏幕上的表示,Controller定义用户界面对用户输入的响应方式。
MVC设计模式中的“模型”指的是真正完成任务的代码。对大多数Web应用程序来说,功能比界面感觉更重要。在模型同界面相分离的情况下,代码即可实现可管理性和可重用性。模型通常也被称作“业务逻辑”。
所谓“视图”起始就是使用界面。在MVC模式下,在通常的设计前提下界面任务并不大。当然,视图应该具有一定的功能性并遵循可用性的约束,但视图不应该处理数据。事实上,界面的每一部分都只能包含采集数据的足够逻辑,并把它传递给设计模式中的其他组成部分以进行处理。
“控制器”控制着模型和视图之前的交互过程。它决定着向用户返回怎样的视图,检查通过界面输入的信息,以及选择处理输入信息的模型。
在JSP开发中,最常使用Model2。Model2实际上符合MVC模式。Model2中各组件的关系如图1-3所示:
小区物业管理系统的设计与实现 5
控制器 (Servlet) 模型 (JavaBean) 用户 图1-3 Model2中各组件的关系
视图 (JSP) 1.3.2 struts技术介绍
Struts 是 Apache软件基金会(ASF)赞助的一个开源项目。它最初是 Jakarta项目中的一个子项目,并在2004年3月成为ASF的顶级项目。它通过采用 Java Servlet/JSP 技术,实现了基于Java EE Web应用的MVC设计模式的应用框架,是MVC经典设计模式中的一个经典产品。
[7]
在 Struts 中,已经由一个名为 ActionServlet 的 Servlet 充当 控制器(Controller)
的角色,根据描述模型、视图、控制器对应关系的 struts-config.xml 的配置文件,转发视图(View)的请求,组装响应数据模型(Model)。在 MVC 的 模型(Model)部分,经常划分为两个主要子系统(系统的内部数据状态与改变数据状态的逻辑动作),这两个概念子系统分别具体对应 Struts 里的 ActionForm 与 Action 两个需要继承实现超类。在这里,Struts 可以与各种标准的数据访问技术结合在一起,包括Enterprise Java Beans(EJB), JDBC 与 JNDI。在 Struts 的视图(View) 端,除了使用标准的JavaServer Pages(JSP)以外,还提供了大量的标签库使用,同时也可以与其他表现层组件技术(产品)进行整合,比如 Velocity Templates,XSLT 等。通过应用 Struts 的框架,最终用户可以把大部分的关注点放在自己的业务逻辑(Action)与 映射关系的配置文件(struts-config.xml)中。
[8]
在 Java EE 的Web应用发展的初期,除了使用 Servlet 技术以外,普遍是在
JavaServer Pages (JSP)的源代码中,采用 HTML 与 Java 代码混合的方式进行开发。因为这两种方式不可避免的要把表现与业务逻辑代码混合在一起,都给前期开发与后期维护带来巨大的复杂度。为了摆脱上述的约束与局限,把业务逻辑代码从表现层中清晰的分离出来,2000年,Craig McClanahan 采用了 MVC 的设计模式开发Struts。后来该框架产品一度被认为是最广泛、最流行 JAVA 的 WEB 应用框架。
2006年,WebWork 与 Struts 这两个优秀的Java EE Web框架(Web Framework〕的团体,决定合作共同开发一个新的,整合了 WebWork 与 Struts 优点,并且更加优雅、扩展性更强的框架,命名为 “Struts 2”,原Struts的1.x 版本产品称为“Struts 1”。
陕西科技大学毕业论文(设计说明书) 6
至此,Struts项目并行提供与维护两个主要版本的框架产品——Struts 1 与 Struts 2。 本次毕业设计就是用的Struts2。 1.3.3 JDBC技术及其常用接口
JDBC API为java开发者使用的数据库提供了统一的编程接口,它由一组Java类和接口组成。JDBC API似的开发人员可以使用纯Java的方式来连接数据库,并进行操作。
在企业级环境中进行的数据库操作远远不只是连接数据库并执行语句,还需要考虑其他方面的要求,包括使用连接缓冲池来优化资源的使用,实现分布式事务处理。
本次使用的JDBC版本里,包括了java.sql和javax.sql两个包,分别为针对基本的数据库编程服务的类和接口与为数据库方面的高级操作提供接口和类的类。
每个数据库驱动程序必须实现Driver接口。对于Jsp开发者而言,只需要使用Driver接口就可以了。我们在编程中要连接数据库,必须先装载特定厂商提供的数据库驱动程序(Driver)。这次使用的是com.mysql.jdbc.Driver。
[7]
DriverManager类是JDBC的管理层,作用于用户和驱动程序之间。DriverManager
类跟踪可用的驱动程序,并在数据库和相应驱动程序之间建立连接。另外,DriverManager类也处理诸如驱动程序登录时间限制及登录和跟踪消息的显示等事务。JDBC允许用户使用调用DriverManager的方法getDriver、getDrivers和registerDriver及Driver的方法连接。在这次毕设中,是通过调用DriverManager类中Class.forName方法,显式地加载驱动程序类。代码为Class.forName(“com.mysql.jdbc.Driver”)。在DriverManager中有一个非常重要的方法,就是getConnection(parameter…),在编程中通过这个方法来获得一个连接,在这次编程中也用到了。代码为:
Connectionconn=DriverManager.getConnection(“jdbc:mysql://localhost/prop_management”,”root”,”root”)。函数里面的参数代表本次使用的数据库地址。 1.2.4 MyEclipse的介绍
MyEclipse,是一个十分优秀的用于开发Java, J2EE的Eclipse插件集合,MyEclipse的功能非常强大,支持也十分广泛,尤其是对各种开源产品的支持十分不错。
MyEclipse企业级工作平台(MyEclipse Enterprise Workbench ,简称MyEclipse)是对Eclipse IDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML, Struts, JSF, CSS, JavaScript, SQL, Hibernate。
在结构上,MyEclipse的特征可以被分为7类:
a) JavaEE模型 b) WEB开发工具
小区物业管理系统的设计与实现 7
c) EJB开发工具
d) 应用程序服务器的连接器 e) JavaEE项目部署服务 f) 数据库服务 g) MyEclipse整合帮助
从Genuitec发布了MyEclipse Enterprise Workbench 5.0以来,MyEclipse就以智能,快捷,简单和便宜的J2EE工具存在。它的价格对于个人和企业开发人员来说都是非常有吸引力的。这是J2EE IDE市场一个重量级的选手。通过增加UML双向建模工具、SYSIWYG的JSP/Strutsdesigner、可视化的Hibernate/ORM工具、Spring和Web services支持,以及新的Oracle数据库开发,MyEclipse继续为业界提供全面的产品。通过升级,myeclipse改进了Java EE 5 和 Spring功能部件,支持AJAX开发和测试,支持RAD Web 开发,快速Java EE部署和测试,MyEclipse学习中心。当到了7.0版本的时候,就不再需要配置Tomcat以及服务器了,提供的支持包括:Eclipse 3.4.1/Ganymede、REST web服务、新的myeclipse操作板、spring工具集更新、集成Manven2、open JPA支持、高级javascript工具、专业的jsdt实现、报表工具加强、jsf和ICEfaces工具更新。等到了8.0版本的时候又增加了JavaProfiler 、Struts 2 Support 、MyEclipse Lite 、WTP Project Support 、MyEclipse Reports等更新内容,从而具有了Java事件探查器,对Struts 2的支持,加载模块的自定义功能,对WTP项目的支持,对WTP项目的支持,App server等新特征。再后来就是经典的8.6了,它在团队协作和集中工作环境的集中配置管理方面有了相当大的改进,包含了上百个功能的改进和新特性。主要改进包括:
编号不对,阿拉伯数字
a)MyEclipse 8.6 M1引入了一个全新的JavaScript编辑器,该编辑器提供了更好的JavaScript/HTML高亮标记和代码支持,同时提供了更为精确的语法校验功能。
b)MyEclipse 8.6 M1新增了Struts2图形编辑器(貌似之前笔者见过Struts1.x的图形编辑器,也是MyEclipse对Struts支持的一个卖点)。
c)MyEclipse 8.6 M1引入了MyEclipse配置中心功能(该功能是MyEclipse 8.6中的重大卖点)。
d) 该功能包括,允许用户更方便的安装/卸载 MyEclipse模块。
e) 快速检索和安装目前最流行的Eclipse插件(貌似与IDEA一样直接检索到之后可以通过checkbox选择安装,十分方便)。
f) 浏览,编辑和安装所有的软件更新(同时支持自定义升级站点)。 g) 轻松的在团队中共享MyEclipse 8.6工作平台配置。
i) 通过授权获取用户的工作台变更信息,同时让用户共享这些工作台的配置。 j) 通过MyEclipse配置中心持久化(保存)工作台的个性化设置。
k) 允许独立共享工作台配置信息,也可以通过授权让特定的用户更改工作台配置
陕西科技大学毕业论文(设计说明书) 8
信息。
l) MyEclipse 8.6 M1新增了大量的应用程序服务器联接器,让MyEclipse 8.6支持更多的应用程序服务器。Glassfish 3 ,JBoss 6, Resin 4,Jetty 7,JOnAS 5,SpringSource tc Server, Java System Web Server 7。
m) MyEclipse 8.6 M1在开源框架的支持方面也进行了不少改进包括:Spring 3.0,Hibernate 3.3,Spring Security 2.0,Spring Security 3.0。
n) MyEclipse 8.6 M1新增了截屏功能。
o)MyEclipse 8.6 M1改进了对UML2.0的支持。
p) MyEclipse 8.6 M1改进了对JavaServer Faces, Facelets, ICEfaces的支持。 本次使用的是MyEclipse 9.0版本,也是现在的最高版本,它集成了Eclipse 3.6.1,支持HTML5和JavaEE6。使用起来方便快捷,并且能够照顾到现在最先进的java开发技术要求,因此选择了这个版本作为本次开发的工具。
小区物业管理系统的设计与实现 9
2需求分析
2.1 系统综合要求
[10]
通过查资料,获知随着市场经济的发展和人们生活水平的提高,住宅小区已经成
为人们安家置业的首选,几十万到几百万的小区住宅比比皆是。人们花的钱越多,不但对住宅的本身的美观、质量要求越来越高,同时对物业小区的服务和管理也要求很高,诸如对小区的维修维护,甚至对各项投诉都要求小区管理者做的好,做的完善。这样要求小区管理者对物业管理进行宏观的和微观的细致管理,其中最好的办法是用计算机操作的小区物业管理系统来实现对小区物业的管理,这就为我们设计小区物业管理系统提供了市场需要。
作为计算机应用的一部分,使用计算机对企业单位的各项信息进行管理,具有着手人工管理所无法比拟的优点。例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高工作的效率,也是企业的科学化、正规化管理与世界接轨的重要条件。因此,设计一个小区物业管理系统是非常必要的。
通过调查访谈获知小区物业管理系统需要处理以下几个方面的问题[3]:
1)用户登录管理:这是系统的必要部分,通过它可以对登录信息进行管理。实现对进入系统的人员进行分类管理,实现不同身份的用户能够获得相应功能的使用权限。 2)业主资料管理:该模块需要对业主的基本资料进行管理。是物业管理产生的基础,物业管理是相对于该小区的所有住户而言的。
3)人员安排管理:该模块主要就是对于保安人员、保洁人员和维修人员基本信息的管理。这是后勤保障所必须的部分,只有对工作人员的管理合理了,才能让后勤服务质量提高。
4)投诉管理:这个是在本系统中唯一提供业主与物管部门交互的平台,这也是业主们非常需要的一个环节,业主可以通过该功能项向有关部门提出自己对于物管的要求和建议。同时物管部门也可以通过这个平台了解用户的需求。
5)缴费项目管理:这个功能是为缴费管理服务的,它可以规定好业主需要缴费的各个项目。
6)缴费管理:可以实现缴费功能,这些费用包括用户的各种费用。能够对用户的欠费、已缴费、缴费时间等信息进行查询和处理。这也是物业管理中非常核心的一个方面。 7)车位管理:对于现在的小区停车场的管理也是非常重要的,因为车的数量大,管理起来比较麻烦,用计算机来进行统一管理就方便多了。
2.2 实体-联系图[9]
陕西科技大学毕业论文(设计说明书) 10 应缴费用 缴费项目 房间号 车位号 已交费用 欠费金额 缴费时间 业主姓名 投诉时间 投 诉 详细内容 工作号 工作类型 发布 N 处理标志 1 单位 业主 房间号 1 角色 投诉类型 身份证号 N 有 姓名 性别 1 有 费用 缴费状态 N 业主姓名 缴费月份 房间号 车 位 籍贯 联系电话 投诉标题 工作描述 人 员 工 资 姓 名 加入时间 身份证号 性 别 图2-1 实体-联系图
小区物业管理系统的设计与实现 11
3系统设计
3.1系统的功能模块设计
小区物业管理系统 系统管理 物业管理 业主 系统登录添加用户删除用户修改登录密码业主资料管理人员安排管理投诉管理缴费项目管理缴费管理车位管理发表投诉缴费查询进入系统的管理,包括通过登录页面登录进行系统的管理。系统管理员登录以后可以对登录用户进行添加、删除,以及修改用户登录密码。第二部分又可以分为四个方面,分别对应四个物业管理小模块,包括资料管理、后勤管理、财务管理和停车场管理。其中,资料管理由专门的管理员负责,可以对业主资料进行查询,增加,删除和修改操作。后勤管理员则负责两部分的内容,一是人员安排管理,可以对人员的安排及个人信息进行查询、增加、修改等操作。然后就是对于业主投诉的管理。可以查询业主的投诉,并负责安排人员进行处理。财务管理员也有两项功能可以进行,其中一个是缴费项目管理,它是针对物业中不同缴费项目的变化对缴费项目进行查删改。另一个就是物业管理中非常重要的一块——缴费管理,它具有承担缴费的功能。包括业主账单查询,账单生成和缴费等几个方面。停车场管理员主要负责车位的管理。系统为管理员提供的是车位信息的查询、增加和更改功能。[12]对于业主,系统也提供了两个功能,一个是发表投诉功能,用于业主向物业管理部门提出自己对物业管理的意见和建议。还有一个是缴费查询功能,让用户在家就可以查询到自己的物业账单情况。
3.2数据库设计
管理员表(tb_manage)={管理员号+管理员姓名+登录密码+角色名+权限}
表3-1 用户登录表(tb_manage)
字段名
由以上功能模块图可以看见,[11]本小区物业管理总共分为3个部分,第一部分为对
类型 图3-1 系统功能模块图
说明 陕西科技大学毕业论文(设计说明书) 12
系统管理员号 系统管理员姓名 登录密码 真实姓名 权限 int varchar varchar varchar varchar Not null Not null Not null Not null Not null 投诉管理表(tb_complain)={投诉类型+投诉时间+投诉标题+处理标志+详细内容}
表3-2 投诉管理表(tb_complain) 字段名 投诉类型 投诉时间 投诉标题 处理标志 投诉详情 类型 varchar varchar varchar varchar varchar 说明 Not null Not null Not null Not null Not null 人员表(tb_staff)={员工号+员工姓名+工作类别+性别+身份证号+加入时间+工资+工作描述}
表3-3 人员表(tb_staff)
字段名 人员号 工作类别 人员姓名 人员性别 身份证号 加入时间 工资 工作描述 类型 varchar varchar varchar varchar varchar varchar double varchar 说明 Not null Not null Not null Not null Not null Not null Not null Not null 业主资料表(tb_owner)={业主姓名+性别+籍贯+联系电话+身份证号+单位+房间号+角色}
表3-4 业主表(tb_owner) 字段名 业主姓名 性别 籍贯 联系电话 身份证号
类型 varchar varchar varchar varchar varchar 说明 Not null Not null Not null Not null Not null 小区物业管理系统的设计与实现 13
单位 房间号 角色 varchar varchar varchar Not null Not null Not null 收费项目表(tb_charge)={收费项目名+收费标准}
表3-5 缴费项目表(tb_charge) 字段名 缴费项目名 缴费标准 类型 varchar double 说明 Not null Not null 缴费表(tb_pay)={缴费项目名+应收金额+实收金额+欠费金额+收费时间+业主姓名+缴费状态+缴费月份+标记}
表3-6 缴费表(tb_pay) 字段名 缴费项目名 应缴费用 实缴费用 欠费金额 缴费时间 业主姓名 缴费状态 缴费月份 房间号 缴费号 类型 varchar double int double varchar varchar int varchar varchar int 说明 Not null Not null Not null Not null Not null Not null Not null Not null Not null Not null 车位表(tb_car)={车位号+业主姓名+房间号}
表3-7 车位表(tb_car) 字段名 车位号 业主姓名 房间号 类型 varchar varchar varchar 说明 Not null Not null Not null 3.3 页面设计
3.3.1具体页面如下
陕西科技大学毕业论文(设计说明书) 14
图3-2 login.jsp页面
这个页面为用户登录页面,由三个图片分别对应登录名字、登录密码和登录按钮,有两个text框进行用户名和密码的输入,在后台进行验证的时候就是使用这两个输入值进行判断登录的。为了体现系统的时代感,我特地把页面的文字部分都使用的英文。在颜色方面也是用了比较清爽舒服的蓝色和淡黄色。它是通过css实现整体页面格调配置的。
图3-3 welcome.jsp页面
这个页面为登录后的第一个页面,展现给用户的是一横排的功能选项,可以通过鼠标单击进入不同的系统功能模块。中间是一幅带动态的图片,有星光不断闪烁,看起来比较温馨,自认为作为小区物业的首页是比较不错的,让用户有入系统如归的感觉。
图3-4 userList.jsp页面
小区物业管理系统的设计与实现 15
这是用户查询页面,从这张图片可以很明显地看见系统的log在右边,这个是在网上找的,是从一个音乐库里发现这个连谷歌都翻译不出来的英文,在网上查询发现它是一个免费音乐源,我就把它理解为愿意奉献,愿意服务的意思,加在这里作为log了。在页面顶部的右面有现在时间显示,这是使用javascrip来实现的,它可以显示与电脑系统时间同步的时间。下面任然跟首页相同的一横排功能模块选择项。大家还可以清楚的看见其下还有子项。接下来就是两个表单,分别为查询用户条件和搜索按钮,这代表了本系统关于查询页面的整体布局。查询包括两个部分,一个是按什么关键字查询,另一个就是用户输入的关键字。按钮在这次设计中的作用非常大,它是作为前台页面和后台进行交互的唯一动作实现点——单击。下面就是对查询内容进行显示的部分。在最右面有edit标志,其实他是一个连接,可以连接到对相应项的内容的修改页面。再下来的添加用户按钮也是连接到添加用户页面的。删除用户是第二个表单的动作按钮,实现删除用户的功能。
图3-5 userAdd.jsp页面
这是增加用户页面,其他的增加页面跟它几乎相同,在白色表单外的内容跟其他页面都是一样的,这里不做解释了。对于白色表单部分就是由各项输入或者选择名加上text输入框或者select选择框。最下面就是提交按钮和重置填入或者选择内容的按钮。
图3-6 carplaceAlter.jsp页面
陕西科技大学毕业论文(设计说明书) 16
这是修改信息的代表页面,基本上跟增加页面一样,不过在这里需要的主键值是在数据库里面有的,可以通过页面处理从查询页面获得的。它跟增加信息页面最大的不同地方就是动作的执行,也就是后台的sql执行语句不同。
其他的页面跟以上页面类似,这里就没有一一列举。 3.3.2 页面设计的技术问题
在设计页面时,由于非艺术专业的,对于颜色的把握和整体页面架构的组成搭配不能很好的完成,可能有很多不足的地方。但是,在这次设计页面和实现页面的过程中我查阅了一些与html、css和javascript有关的专业书籍,与此同时还参考了一些实用代码。学到了很多相关知识,在这次毕业设计的过程中也用了很多。下面就介绍一下在本次毕设中是如何使用以上三种语言的。
在html方面,我多处用到了form表单来传递页面数据和信息,以便于后台方法对页面进行操作。另外,[14]使用table标签来对页面进行分块,对内容进行定位,形成页面的最终效果。还有input标签,是在表单中用的比较多的,它的text类型在这次编程过程中用得又是相当多的。因为这次关于增加操作几乎都要由它来将用户输入数据传给后台。还有botton类型也在动作中起到了很重要的作用。其他的标签还有select标签、check标签、textarea标签等也有运用。
css在页面的结构方面发挥了很重要的角色,它主要是为了配合页面的布局,字体设定,整体背景设置,按钮形状大小设定,它把一些共同的页面设计代码放在了一起,便于多处引用,这样减少了代码,减少了工作量,简化了编程。
[15]
对于javascript的作用是显而易见的,它存在的目的就是为了给静态页面增加一
些动态的内容,包括判空、动态时间显示、问候语显示、文字变化、图片处理等。在本次毕设中主要用到了对于表单中text是否填写,select是否选择进行判断,看其是否为空,若为空作出提示。另外还使用它实现了系统与计算机时间的同步显示。
3.4搭建Struts框架[8]
在Myeclipse中建立好web工程,让后就开始搭建Struts框架,具体步骤如下: 在工程下点击右键,选择Myeclipse下级菜单中选择增加struts框架,然后自动生成了Struts 1.3 Library,下面会自动导入很多struts所需要的文件。另外,在WEB-INF下,lib文件夹里生成struts-config.xml。这个文件用来配置页面跳转和方法调用。
在src文件夹下面建com.sust.utils包,这个包就是存放连接数据库的方法类,字符类等底层文件代码。便于上层的调用,达到让上层不用再编写连接数据库的代码,形成通用函数为以后各层调用。再建com.sust.entity包,这个是个存放实体类的包,每一个实体类就对于一张数据表,这样有利于有针对性的页面操作。紧接着建立com.sust.dao包,这是个接口包,定义了对数据库进行增、删、改和插入的基本方法接口,再由com.sust.daoImp包下的类对以上各方法进行实现。这样就形成了方法实现和接口类,从
小区物业管理系统的设计与实现 17
而可以保证以上接口只需调用接口就可以很好的完成上层代码编写。这样做的目的就是为了能够减少上层代码,不混乱,需要对数据库进行操作的时候,只需要定义sql语句就能完成相应的操作。接下来还需要建立com.sust.service包,这个包存放的是数据操作函数的接口。其中的每一个函数就是对应的一个系统功能。通过这个接口包,可以使上层调用只通过接口就实现,不必要多次编写代码。下面就是建立com.sust.serviceImp包,它主要是存放数据操作函数的实现方法。主要任务就是给出具体的sql语句,根据系统的各个功能对数据库进行操作。这一层以下才负责对数据库进行操作,后面的逻辑层就只需要调用这些方法就可以实现对页面数据的基本操作了。从而减少对数据库操作的代码,这也体现了struts框架的特点和优势。最后需要建的就是com.sust.action包,这个包就是直接针对页面数据的操作。
最后,还需要给工程加入数据库,这样以便于在移植工程的时候不会因为数据库的问题影响程序的使用。做法就是下好mysql数据库的驱动程序,将其直接拷贝到工程目录下即可自动生成Web App Libraries文件夹,其中存放着所有连接、操作mysql数据库的文件。
陕西科技大学毕业论文(设计说明书) 18
4 系统实现
4.1 系统基本结构
4.1.1 系统的基本结构图
用户登录 Login.jsp 主界面 Welcome.jsp 系统管理员办公室管理员后勤管理员财务管理员停车场管理员业主 权限管理用户管理数据管理业主资料管理投诉管理人员管理收费项目管理缴费管理车位管理发表投诉费用单查询4.1.2系统的程序目录结构
图4-1 系统的基本结构图
小区物业管理系统的设计与实现 19
com.sust.action com.sust.dao com.sust.daoImp src com.sust.entity com.sust.service com.sust.serviceImp com.sust.struts com.sust.utils backup backupList.jsp carplaceAdd.jsp carplace carplaceAlter.jsp carplaceSearch.jsp chargeAdd.jsp WebRoot charge chargeList.jsp chargeUpdate.jsp complainAlter.jsp complain complainneed.jsp complainSearch.jsp css images js 目录 WEB-INF lib mysql-connector-java -5.1.7-bin.jarctor -java-5.1.7-bin.jar struts-config.xml web.xml 图4-2 系统程序目录结构图
图中src为本次系统设计的动作实现包,前面的com.sust为包的前缀名,第一个为
通常要求的,点后面的sust标明我是陕西科技大学的学生。在这些包当中,util包里面放的是连接数据库的底层类;entity是实体类,其下的每一个类就对应一张数据库中的表,存在的目的就是为了让便于上层的动作对数据库的操作;再上面一层就是dao包和
陕西科技大学毕业论文(设计说明书) 20
daoImp包,前者为数据库操作方法的接口包,后者为方法的实现类包;在往上就是针对页面进行的数据操作方法,service包和serviceImp包这两个包也是对应为接口和实现类;最上面的即是action包,是获取页面数据,通过方法对其进行操作的。这里没有给出struts的配置文件struts.xml,它存放的是动作跳转路径配置,在整个系统中起到了“大脑”的作用。
由于页面太多,其他的jsp文件夹没有一一画出来,它们包括informationDelete.jsp、informationIssue.jsp、OwnerAdd.jsp、OwnerList.jsp、OwnerUpdate.jsp、pagestat.jsp、payAdd.jsp、payList.jsp、paySend.jsp、payUpdate.jsp、powerList.jsp、staffAdd.jsp、staffList.jsp、StaffUpdate.jsp、userAdd.jsp、userList.jsp、userUpdate.jsp等二十多个页面。 4.1.3 系统数据库设计
分析功能要求,为本系统后台数据库设计7个表,其截图见图4-3——图4-9。
图4-3用户登录表截图
图4-4 投诉表截图
图4-5 员工信息表截图
图4-6 业主信息表截图
小区物业管理系统的设计与实现 21
图4-7缴费项目表截图
图4-8缴费表截图
图4-9 车位表截图
4.2 系统页面实现代码
4.2.1 css代码
Css文件主要包括有login.css,mainborder1.css,mianborder2.css,miancss1.css,miancss2.css,submit1.css,submit2.css七个样式表文件,分别定义了登录页面的背景、布局情况、文本框大小等;主要页面的背景颜色、字体大小、表格布局、文本框大小形状等;以及按钮的形状大小。
body{
text-align:center;
background:url(../images/background.jpg)repeat-x; margin:0px auto; }
[15]
以上为定义背景的代码,它主要使用了让文字居中,背景使用之前准备好的背景图片,以及边缘设置。这是对于页面整体的设置,在多处得到调用。
#login table{ margin:40px auto; text-align:center; }
[15]
这段代码定义了页面布局,使用的是table标签,将边缘空白设置为40px auto,将文本框设置在表格中间显示。这是对于整个登录页面的布局设置。其他的页面布局代码类似。
陕西科技大学毕业论文(设计说明书) 22
Textin{ Width:140px; }
这是定义文本框的代码,非常简单,就只有宽度。 #table table{
Border-collapse:collapse; width:700px; font-size:12px; color:#000000; }
[15]
这段是对特定表格内的内容进行设置的代码,包括表边框设置,表的宽度定义,字体要求,以及颜色都做了特殊的设置。
button input{ height:25px; width:60px;
background:#FFFFFF;
border-bottom:#666666 1px solid; border-bottom:#666666 1px solid; border-right:#666666 1px solid; border-topt:#666666 1px solid; border-left:#666666 1px solid; }
[15]
在本次设计的页面中有多处使用了按钮,这就是关于按钮属性设置的代码。包括按钮的高和宽,背景色,上下左右四个方向的空白和颜色设置。 4.2.2 页面代码
编写页面代码的过程中参考了《巧学巧用HTML CSS JavaScript制作网页》,主要使用了html的font等标签对文字进行了设定;用a标签创建连接;用table标签对页面进行布局;还使用了form标签,通过其与后台处理函数通信实现系统的动态功能。在设
小区物业管理系统的设计与实现 23
计页面的过程中配合着css的样式,美化页面。另外,为了让页面变得生动,在html代码里面嵌入javascript代码,实现动态显示时间等功能。
4.3 动作实现代码
1)连接数据库DateBaseConnection.java:文字不能加底色
这里需要导入java.sql.Connection、java.sql.DriverManager、java.sql.SQLException几个java包,还需要加入mysql的驱动程序,这个工作将在配置本次毕设环境中作具体介绍。
主要实现代码有:
Class.forName(“com.mysql.jdbc.Driver”); [7]
conn=DriverManager.getConnection(“jdbc:mysql://localhost/prop_management”,”root”,”root”);
System.out.println(conn);
第一行代码主要是引入mysql的驱动程序,第二条代码实现的是连接这次毕设所使用的数据库prop_management,本地数据库的名字和密码都为root(这是在安装数据库的时候设定的,目的是为了保证操作数据库的安全)。
PreparedStatement ps=conn.prepareStatement(sql); rs=ps.executeQuery();
这两条代码就是对数据库进行查询,获得返回值。这里没有具体给出sql的值,就是为了在上层中调用这个函数,保证上层不直接编写访问数据库的函数,实现代码的重用。
try{ conn.close();
}catch (SQLException e){ e.printStackTrace(); }
这段代码就是断开数据库连接,目的是保证在对数据库进行操作结束之后不再产生后续影响,保证数据库的安全性。
PreparedStatement ps=conn.prepareStatement(sql); conn.setAutoCommit(false); ps.executeUpdate();
陕西科技大学毕业论文(设计说明书) 24
conn.commit();
这段代码主要是对数据库进行增删改操作的。加入第三句主要是针对需要改变数据库表值的时候,防止数据库受到其他操作的影响而必须加入的语句。 2)数据库接口层BaseService.java:
本层主要列出所有的对于页面的操作的函数定义,以便于服务层的调用。这样做的
目的可以实现面向接口的开发,从而保证了代码的简化。 3)数据接口方法实现BaseServiceImp.java[16]:
在这次毕设中,主要使用的的方法有对数据表的查询、插入、删除和更新操作,在ResultSet rs=null;
String sql=”select *from tb_manage where managename=”’”+managename+”’and password=’”+password+”’”;文字不能加底色
rs=baseDaoImp.findResult(sql); try{ if(rs.next()){ return true; }
}catch (SQLException e){ e.printStackTrace(); }
return false;
此段代码就是其中一个查询数据库的实现函数。主要就是通过调用baseDaoImp层的数据库操作函数进行查询操作。用if(rs.next())来判断查询结果是否为空。在这个编程中加入了抛异常的语句,目的是为了让代码更加健壮、安全。
String sql_01=”select *from tb_charge where chargestandard’”+chargestandard+”’”; String sql_02=\"update tb_charge values('\"+chargename+\"','\"+chargestandard+\"')\";
String sql_03=\"insert into tb_charge values('\"+chargename+\"','\"+chargestandard+\"')\";
String sql=\"select * from tb_charge where chargename='\"+chargename+\"'\"; String sentence=\"tb_charge\";
if(((this.get_Rows(sentence, sql))>0)||((this.get_Rows(sentence, sql_01))>0)){ baseDaoImp.prepareCUD(sql_02); }else{
baseDaoImp.prepareCUD(sql_03);
实现的时候也主要使用一些以上操作的sql语句连接数据库层的函数来得以实现的。
小区物业管理系统的设计与实现 25
}
}catch (Exception e){ e.printStackTrace(); }
此段代码是其中一个更新操作的实现函数。它里面需要对某个参数进行if语句判断来选择sql语句的执行,从而达到双条件查询的母的。 4)动作方法实现:
这就是struts里面的action,它的作用主要是调用数据库层的函数,对于页面获取的数据进行处理和操作[17]。
try{
String point41= \"添加人员成功!\";
String staffnum=request.getParameter(\"worknum\"); String workname=request.getParameter(\"oneway\"); String staffname=request.getParameter(\"staffname\"); String sex=request.getParameter(\"gender\"); String cardnum=request.getParameter(\"cardnum\"); String intime=request.getParameter(\"intime\");
double wages=Double.parseDouble(request.getParameter(\"wages\")); String workinfo=request.getParameter(\"workinfo\");
baseService.addstaff(staffnum, workname, staffname, sex, cardnum, intime, wages, workinfo);
request.getSession().setAttribute(\"point41\return mapping.findForward(\"staffAdd\"); }catch (Exception e){ e.printStackTrace();
return mapping.findForward(\"error1\"); }
这就是其中一个action方法的实现。它主要就是调用request 的getParameter(“String”)方法来获取页面表单传过来的值。需要注意的是从页面获取的都是String类型的数据,对于所需参数不是String类型的需要进行数据类型转换,从以上代码可以看出,主要是采用强制转换的方法实现的。接下来,代码中就是通过调用servise层的方法对数据进行处理,这里实现的是将页面数据插入数据表中。这段代码仍然含有抛异常的部分,目的也很明确,保证代码健壮性。另外大家在以上代码中还能发现对于一句字符串进行操作
陕西科技大学毕业论文(设计说明书) 26
的代码,它的作用就是在addstaff操作成功之后返回一个操作成功提示语,这个提示语可以通过c标签接收,然后显示在页面上。
小区物业管理系统的设计与实现 27
5 软件测试
软件测试是在软件投入运行前,对软件需求分析、设计规格说明书和编码的最终的复审,是软件质量保证的关键步骤。确切的说,软件测试就是为了发现错误而执行的过程。一般分为两个阶段:[18]第一阶段是单元测试,即在编完一模块后进行测试;第二阶段是综合测试,即在开发完软件后进行综合测试。对于我的毕业设计系统也进行了测试,方法如下:
在设计的过程中,我会通过查询操作能否显示成功;增加操作能否在数据库里找到插入的值;修改操作是否让数据库的数据得到正确的相应改变;删除操作能否让数据库里面的数据被删除等最基本的系统使用要求来测试系统。
我还邀请同学来试用,由他们来给我提出测试结果和开发建议。逐一排除系统bug,实现符合用户需求的系统功能。
通过测试,发现了系统中有好多问题。比如:增加操作出现与数据库主键数据重复的情况,操作函数会执行,但是会得到不正确的结果,开发环境也会报错;还有在一些特殊查找的时候显示出问题;还有缴费项目的要求没有达到真正的用户缴费要求。这些问题都是在同学的测试过程中发现的,现在基本上都解决了。
通过最终测试得到,本系统能够基本完成最初设计的各大功能,并且能很好的适应各种严格条件下的使用,基本符合用户的需求。
陕西科技大学毕业论文(设计说明书) 28
6 总结
经过三个多月的调查、学习、研究和设计,系统的制作接近了尾声。在这里我将系统设计做如下总结。
本系统的功能已基本达到设计的要求。系统中各个模块的功能基本实现,为整体系统的构建奠定了基础。经过测试得出本系统已基本符合用户需求。
系统模块的功能有待被进一步扩展。例如,系统中还可以将缴费模块联系上水电气表等各种需要缴费的仪器数据,可以实现整个小区的缴费、查询等比较完整和比较方便快捷的缴费管理。系统的页面可以设计的更加精美。还可以把设施维护管理作为单独的一个模块出现(现在将其放在投诉模块中一起解决的)。
系统中模块划分明确,模块功能设计有较强的针对性。
系统的设计遵循软件开发的全过程,使我对软件系统的开发过程有了更深刻的认识。感受到软件工程这门课的重要性。
设计体现出了所使用的编程技术的优点,本次使用了Struts框架,使编程变得简单。我从中也体会到了接口技术是怎样使用的,它都有什么优势。
在系统的设计中能够灵活运用JSP的对象技术,并且使用有效的SQL语言操作后台数据库。
软件的设计没有完美无缺的,这个系统在很多地方都存在着不足,还需要我们进一步的改进和完善。后期的维护工作也是本系统软件的重要工作。
在这段时间里,我受益匪浅,不仅将所学的知识运用到实践,而且更进一步学习了软件开发技术,增强了JSP开发技术的语法基础,能够将其比较灵活地使用。以下是我个人制作中得出的一点见解
如果查询语句中有多个Select且嵌套,如
public String getS(Statement stmt,String sql1,String sql2) {
ResultSet rs=null; Try {
rs=stmt.executeQuery(sql1); while(rs.next()) {
ResultSet rs1=stmt.executeQuery(sql2) If(rs1.next()) {
String s1=rs.getString(1);
小区物业管理系统的设计与实现 29
String s2=rs1.getString(1); .............. }}}
catch(SQLException e){} return rs; }
如果如上所述,两个以上的Select 语句使用一个Statment ,那么将出错或者得出的结果不正确。可以使用增加Statement 参数的方法解决,,以实现上述查询功能,但是使用增加Statement 参数的方法毕竟是有局限的,如果嵌套层数增加,Statement 参数也许也得跟着增加,这样对于程序的可扩展是不利的。
编写SQL语句的时候很容易出错的,一定要仔细。连接后台也有好多问题等着开发人员,这次在数据库的使用这一块让我吃了不少苦头。在写完语句以后最好是先让他们在数据库查询界面运行一下,不然查错是很麻烦的。
另外,在获取表单数据的时候,经常需要进行字符串转换,否则数据库不能识别,只将字符存储为乱码。有时候还需要设置一个中间变量来传递字符串的转换。这也是一个非常容易出错的地方,编写的时候一定要注意数据库里面对应的项的数据类型到底是怎样的。
还有,我在这次编写过程中受到变量的影响,头疼了好长时间。检查好长时间才发现是因为自己为了偷懒,把一些函数变量设为了相同,导致在页面跳转过程中出了好多错误。由于这种错误非常隐秘,检查起来非常困难,因此浪费了我好多开发时间,由此获得深刻教训,注意在使用变量名的时候,看这个变量名会不会影响其他的部分。
最后还有一个非常重要,也是非常基础的问题,那就是跳转路径的问题,有相对路径的访问,也有绝对路径的访问,一定要分清楚。页面路径和方法路径是有区别的。
将这个作品投入使用是我们的期望,系统功能会在实践中不断的摸索、改进,达到最佳的使用效果。
陕西科技大学毕业论文(设计说明书) 30
致 谢
在本次毕业设计过程中,得到了指导老师的指导与支持。在此特别感谢吴华老师的大力帮助。指导老师的悉心指导和大力支持,在总体结构、功能的把握上给予了非常大的帮助,并严格要求我们的设计、开发时间,保证我能够按时按质完成毕业设计。在此我一并向她表示感谢。另外,在开发过程中同学给我提供了外包的视频教程,还在我编程过程中悉心帮我差错讲解,让我学到不少东西,并且提高了完成毕设的速度,才使我得以在规定时间内完成毕设,我要感谢他们,谢谢他们的支持和帮助。我还要感谢我的母校——陕西科技大学,以及在大学四年生活中给予我关心和帮助的老师和同学,是他们教会了我专业的知识和做人的道理。通过这次毕业设计我还明白了作为一名计算机专业的大学毕业生,我们要会的不仅仅是编写代码,更重要的是要有整体把握系统设计的能力。并且还需要在困难面前充满耐心,面对错误和问题一定要冷静,并且要认真思考。我会在以后的工作和学习中不断完善自己,为我最热爱的母校争光,为自己翻开辉煌的新篇章。
转眼间,大学生活即将结束,回首过去四年的大学生活,真是有苦也有乐,然而更多的则是收获,感谢母校的各位老师不但无私地传授给我们知识,也教会了我们如何做人。管理信息系统专业的毕业设计任务繁重,但正是在这几个月紧张而充实的设计中,我感到自己的知识得到了一次升华,我相信:我的毕业设计会给我的四年大学画上一个圆满的句号。
21世纪已经到来了,在新的世纪里,人们自然对未来有许多美好的愿望和设想。现代科学技术的飞速发展,改变了世界,也改变了世界的生活。作为新世纪的大学生,应当站在世界的发展前列,掌握现代科学技术知识,调整自己的知识结构和能力结构,以适应社会发展的要求。新世纪需要具有丰富现代科学知识、能够独立解决面临任务、有创新意识的新型人才。
小区物业管理系统的设计与实现 31
参 考 文 献
[1]孙卫琴,李洪成.Tomcat 与 Java Web 开发技术详解[M].电子工业出版社,2003年6月:1-205.具体点
[2]戴玉林,王媚莎.物业管理实务[M].北京:化学工业出版社,2007.7. [3]于卉敏.物业管理工作细化执行与模板[M].北京:人民邮电出版社,2008.4. [4]张晶.Java Web 开发指南[M].北京:清华大学出版社,2010.1.
[5] Brown等.JSP编程指南(第二版)[M].电子工业出版社 ,2003年3月:1-268. [6] BruceEckel.Java编程思想[M].机械工业出版社,2003年10月:1-378
[7]刘晓华,张健,周慧贞 .JSP应用开发详解(第三版)[M].电子工业出版社 2006年版. [8]孙鑫.Struts 2 深入详解[M].北京:电子工业出版社,2008.7.
[9]张海藩.软件工程导论(第5版)[M].北京:清华大学出版社,2008.2. [10]孙涌.现代软件工程[M].北京希望电子出版社,2003年8月:1-246.
[11]沈应奎,曾凌.Java Web数据库系统应用开发与实例[M].北京:人民邮电出版社,2008.2.
[12]申吉红,廖学峰,余健.JSP课程设计案例精编[M].北京:清华大学出版社,2007.2. [13]萨师煊,王珊.数据库系统概论[M].高等教育出版社,2002年2月.
[14]Dick Oliver Michael Morrison.HTML与CSS入门经典(第7版)[M].北京:人民邮电出版社,2007.3.
[15]宋朝东.巧学HTML、CSS、JavaScript制作网页[M].北京:人民邮电出版社,2005.6. [16]吴亚峰,纪超. Java se 6.0编程指南[M].人民邮电出版社,2007年版. [17]朱红,司光亚.JSP Web编程指南[M].电子工业出版社, 2001年9月. [18]佟伟光.软件测试[M].北京:人民邮电出版社,2008.5.
因篇幅问题不能全部显示,请点此查看更多更全内容