版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
题目名称基于Web的在线选房系统学院专业学生班级学号指导教师绪论1.1课题研究目的随着网络科学技术的迅速发展,互联网正在不断的改善着人们的生存消费方式,目前越来越多的学科都在研究如何让互联网更好的为大家服务,提供更加便捷便利。本系统主要提供访客在线选房功能,改变传统的排号选房方式,对于这些由于时间、地点等不方便的人员提供方便。采用计算机来替代人工执行一系列的操作,如比较直观的查看楼盘信息,查看房屋信息等等。不仅解决了购房人在排号取号的过程中遇到的各种困难,大家都有目的性的去买房,提升了任务效率,同时也减少了工作人员的任务,可以使消息及时进行传递。1.2课题研究的背景随着信息产业的快速发展,特别是近些年计算机技术逐渐的渗入到各个领域当中,逐渐的代替了传统手工的操作方式,成了人类生存消费中不可或缺的一部分。也正是在政府高度的重视下,全民各方面的素养的集体提升,国家的科技信息化建设也取得了极大的发展。计算机是人类在日益竞争激烈的环境中生存和发展的必须要掌握的一项技能,传统的选房方式采取的是线下看房以及购买销售,有时候客户由于时间、地点等原因,不能及时到达销售处看房,所以这些难题给那些有需求的客户造成很大的不方便。同时也由于信息的传递不及时,让很多的买房的人员错过了好多次的买到好房子的机会,降低了好多人排了好久的号,到最后还是一票难求的局面。网上在线选房系统的出现,克服了上面所说的多种问题,得到了普遍的应用。本系统的设计出发点主要针对传统的选房效率低下,耗费巨大;有利于减少后台工作人员的工作任务与问题。本系统的功能实现能很好的解决上述呈现的问题。1.3系统开发意义从系统的背景来看,可以看出该在线选房系统有以下几点优势。首先,投资较少,回报较快。根据一项对购房用户的情况调查显示,大多购房者在买房的时候,需要跑很多的;楼盘小区进行选房,这种选房的效率太低,并且对于卖房者来说,信息的推送的不及时也不便于销售。其次,对于卖房者来说,他们可以把房子的信息及时发布出去,一个简单的网站就能解决这个问题。搭建这样一个在线选房网站所需资金大约在5000元左右,而且比打广告或者通过销售人员线下销售方式的速度快的多。再者,不会因为任何地点影响。不论用户间隔房屋销售处有多远,甚至不论顾客是在国内还是国外,只要登入在线选房系统,就可以很方便快捷地选择自己满意的房子,并且实现在线预订。这对大量的购房群体来说是一大福音,在线选房系统突破了传统的地域,时间的限制,满足了人们在当今社会的需求。1.4系统简介本系统使用对象包含用户和管理员,用户模式主要显示房产的最新消息,适合每个需要买房的用户来使用,同时也可以在线看房子的户型,预订房子等。管理员:可以发布最新的房产消息,查看相关人员的预订房子的信息,统计信息等。1.5B/S结构介绍B/S结构,就是Brower/Sever(浏览器/服务器)构造,只需要安装一个服务器,运用浏览器运行软件,相对于传统的C/S模式,具有散布广、开发简洁、运用成本等特性。B/S模式的基本思想是在内部网络上采用Internet的传输控制协议/网际协议作为通讯协议,并以Web模型作为一种参考平台,通过简单的浏览界面,方便地提供文件传输,电子公告和新闻数据查询等服务,还可以通过防火墙或代理服务器等形式与Intrnet连接以达到客户对Internet进行浏览查询,同时对外提供信息服务。1.6本章总结本章对当前项目背景进行了分析,对本系统的价值性与实践的可操作性,肯定了开发本系统的必要性,以及为开发本项目肯定了确切的目的,使开发的目的性更加明确。2开发平台2.1软件工程简介软件工程指的是通过应用计算机学科、数学、逻辑学等原理来研发的。软件工程以传统项目的规范方法,以增加质量,节约本钱和改良算法。它是钻研和使用怎样用系统性的、规律性的进程化措施去研发和维护软件,以及怎么把经过时间验证的有用的技术和现今可以拥有的最高的技术结合在一起。1)运转时,可以提供具体要求的作用和功能的操作或计算机软件的集合。2)程序可以完全地管理信息所有的数据结构。3)描写程序功能需求和程序操作方法以及所要求运用的文档。2.2MVC思想1)M-Model主要功能是承担业务的逻辑,它包括两个方面:业务数据与业务逻辑。2)V-View主要功能是显示界面和搜集用户信息。属于视图的类,但是不包括业务逻辑和控制逻辑。2.3MySQL数据库简介MySQL具有有以下特点。1)高效的:便于操作运行,协助公司节约成本和时间。2)智能化指的是能及时的把消息进行提供。3)可信任:应用程序可以被广大用户安全的使用。2.4Ajax技术Ajax全称为“AsynchronousJavascriptAndXML”(异步Javascript和XML),就是指一种建立互交式网页使用的开发技巧。为了处理守旧的Web运用网站中时间耗费长久的缺点而更新的一种功能。在传统的操作中,比如用户在登陆验证的过程中,必须等用户输入了用户名和密码点击提交后,系统才会收到信息,并与数据库中的数据通过匹配,有时候由于网络的延时造成用户等待时间过长,用户体验下极差,因此Ajax技术的产生能解决这一问题。2.5MyEclipse工具MyEclipse是Eclipse的插件,也是一款强大的Web开发工具,具有很多强大的功能,比如支持代码的编写,配置,测试以及排错等功能。同时还可以在多个平台上使用,如window,linux,mac等操作系统上。MyEclipse在结构上有如下特点。1)网页开发工具2)ejb开发工具3)Web项目部署服务2.6JSP技术简介Java服务器页面(又称JavaServerPages,简称JSP),其从根本上来说就是一种动态网页技术,Jsp继承了Java的一些特点,具备一些Java技术简单操作、完全面向对象、与平台无关、安全有可靠的特点,能够在Servlet和JavaBean的支撑下完成一些性能完善又强大的动态应用程序的开发。JSP主要具有一下几个特点:1)跨平台:有极好的跨平台特点,由于jsp语言是基于Java语言的,一次编写以后,可以在很多不同的系统中重复运行。2)代码业务分离:将生成的内容和显示的内容区分开。主要是使用前端HTML或XML标记设计页面,使用标签或者Java语言实现后台动态代码。3)预编译:浏览器在第一次浏览时,服务器将该文件进行编译处理,然后将文件保存下来,如果以后重新访问该服务时,就不需要重新再编译了,能加快访问速度。4)多样化以及强大功能的开发平台的支持。2.7Java简介Java是一种经过解释的模式来操作的语言,它的语言编写程序既是编译型的又是解释型的。主要具有以下几个特点。1)简单Java语言的语法非常简明,也易于理解,并且它是纯面向对象的语言。它的语法规则和C++相似,也可以说是由C语言和C++语言演变的,显然掌握了C程序语言的人对Java语言就很容易理解与掌握。Java语言对C++语言进行了简洁的变更和一定的升级,简化了设计人员的管理工作。2)面向对象面向对象是Java语言的基本,也是一种重要的特点,对象的解释用属性表明,面向对象技术使应用软件的研发变得简易。Java是一种面向对象的语言,也承继了面向对象的很多益处,任何元素都要经过类和对象来访问和完成。3)安全性Java的数据结构是完整的对象,工作时,在语言、编译、运行、可执行等方面都能发挥安全性的作用,保证了每个变量的编译,也保证了用户的安全性。4)多线程多线程在操作系统的开发中已得到了比较成功的应用。多线程是指许可一个应用软件同时存在两个及以上的线程中,用于维护事务并发和多任务解决。2.8JDK1.6、Tomcat6JDK(JavaDevelopmentKit)是开发Java应用程序的一种工具,主要用于移动设备,嵌入式设备上的应用程序开发。核心就是一组规范和指南,它许可给接口增加一个非笼统的措施完成,该工具的实施可显著地提升应用系统的安全性,可伸缩性,可重复性。Tomcat服务器是一个免费的开放源代码的JSP服务器,属于轻量级应用平台,在中小型系统和同时访问用户少的情况下被大批运用,是研发和测试JSP的首选。Tomcat和IIS等Web服务器一样,具备设计HTML页面的性能,此外它也是一个Servlet和JSP容具,独立的Servlet容具是Tomcat的默认形式。Tomcat技术先进、稳固、操作简便,是目前比较受欢迎的Web应用服务器。2.9本章小结本章主要介绍了该选房系统所使用的技术方法、中心思想、模式与工具。对该系统从技术的方面进行了支持,使用了合适的数据库。系统开发工具,后台服务器,对该项目的研发都有很大的帮助,只要拥有适合的选择,就可以保证项目的顺利开发、运行和使用。3系统分析3.1系统开发步骤1)需求分析首先根据要求,调研此系统的应用现状,从而来确定系统所含有的主要功能,确定客户的整体需求。详细的设计出多个角色的不同需求,从而能使开发出来的系统满足本次设计的整体需求。2)系统设计首先理清功能模块,业务流程模块之间的关联关系。角色管理,设计好多种角色之间的关联关系。详细的数据之间的关联关系,以及后续开发的接口预留等。3)系统开发需求分析,设计出本项目的主要功能模块,流程图。理清多种角色所拥有的功能。程序功能的详细设计和编写。数据库的设计,整理多个表之间的关系。系统的调试,解决遇到的各种bug问题,对应用程序进行全面的测试,性能进行优化,界面优化等。最后设计实施方案,以便程序部署。4)系统测试根据常见的问题,重复的测试系统。考虑各种情况下,可能出现的问题。提交测试报告,保证程序正常运行。5)系统维护系统日常记录的运行维护,主要包括数据库文件的管理,监测,系统更新优化,新功能的增加,程序代码的优化。3.2用户需求分析从普通用户的角度来说,为了满足他们的需求,首先必要的是系统界面做到大气,布局美观,加载速度快,操作起来容易,简单、方便,要使每一位用户特别是不经常在线购物的人也能很快上手操作。其次就是安全方面,用户的基本信息,在后台程序中以密文的形式展现,保障数据存在的安全性。从后台管理人员的角度来说,后台操作起来方便,便于对多种角色,后台功能操作、用户管理、信息修改等基本功能。总的概括起来,本系统应该在以下这两个方面下工夫。1)程序性能,界面美观,操作简单,使用方便,注册预订容易。2)数据安全,保证文件的存储格式以密文展示。在程序开发中应该避免留下bug,防止入侵。做好应用服务器的安全工作,防止后台服务器的安全工作,保证数据的不泄露。3.3可行性分析电子市场的更新速度够快,目前市场上电脑大多都是I3,I5的处理器,CPU都是在1.6以上。并且本系统的使用的是JSP技术,MySQL数据库。由于JSP具有一次编译,多次使用、跨平台使用等特点,因此当前所使用的技术和硬件环境肯定能满足软件运行所需要的基本环境。本系统所使用的技术和工具有:JSP,JS,HTML。因此在技术和环境上根本就不需要投资。只需要在环境部署的时候需要租用一台5M左右带宽,50G左右的应用服务器就能满足系统的部署要求。在次基础上做好安全等工作,因此本系统在经济的上来说是可行的。3.4性能分析软件系统主要需要保证系统安全性,可靠性,反应的请求时间,以及在实际使用中能否良好的分配权限,使不同的用户访问不同的界面,保护好用户的隐私。3.4.1安全、保密在技术发展的同时,黑客涉及到的领域也越来越广泛。所谓道高一尺魔高一丈说的大概也是这个道理吧。目前泄密的方式主要有两种,用户不能注意做好保密工作,从而造成数据的丢失,带来损失。程序开发人员的泄密,比如有的开发人员就能把一个银行的客户信息带出来,这就造成数据的大量泄密,从而给黑客提高了大量的机会。那么如何在程序开发的时候注意保密工作?我认为可以设置一些机制来检测。1)设置好权限,防止用户非法登录,设计登录尝试的次数。2)使用复杂的验证码来防止用户的非法入侵。3)做好数据备份任务,保证程序的0损失。4)切实落实程序服务器的安全任务,以防服务器被病毒侵害,造成重大损失。3.4.2界面友好
分析该系统的主要人群应该是趋于大众化,所以需要满足广大客户的需求。但是每个客户的需求都不同,所以在程序的界面上需要下很大的工夫。因此一款程序安全性好,界面美观,操作简单,使用方便,又有良好交互性的网站就为广大用户所需要。本在线选房系统使用了Ajax(AsynchronousJavaScriptandXML)技术,在用户感觉不到的情况下,完成后台的验证工作,以此来提高用户的体验工作。3.4.3稳定、健壮
应用系统在实际实用的时候,用户的多种不合理的操作系统有可能会造成系统瘫痪。因此要求在设计的时候,就必须要考虑到这些后期可能发生的问题。在系统开发的时候,要考虑这些有可能产生的问题,并对它们进行操作和处理。程序的验证,必须是要严谨,不能因为编码,验证码,字符串等小问题,给客户带来不好的体验。因此要求开发人员必须严谨细心,才能确保程序的稳定和使用安全。3.4.4易维护、扩展用户的需求是多变的,在本系统中有很多的需求在变化。由于时间和精力有限,可能会造成系统当前只能实现一部分功能,因此如何在实际的设计中如何考虑到以后的变化,留好接口,方便以后的程序扩展,为了便于维护程序,不至于因为人员的变化,造成系统维护工作进行不了。要求在程序开发时,必须要写好注释,做好系统说明书,方便日后的维护。3.5系统实现的目标当今盛行的网站管理平台不仅需要有完满的动态网页,也需要有谨严的后台布局,注重每一个细小的环节,尤其是在设计的时候考虑到可伸缩性、可操作性,方便以后更好的维护和运用该网站。本系统运用HTML、JSP等技术来设计网页,在实际的设计中也考虑到了有重复提交的问题,这样可减少某些用户在实际使用中,出现的一些重复操作,对数据库,网站系统增加负担。本设计在现实使用中的处理方法是创建网站,以及自身的数据库,确保所发布的信息能够及时的存取、更新,同时能给用户提供简单实用的操作来获取所需要的信息,也考虑到系统的安全性,在书写sql语句时,为了防止注入入侵,禁止使用了字符串的拼接,保障数据的安全性。3.6系统运行环境系统的运行平台的配置对于系统来说是非常重要的,它将直接关系到系统运行的流畅性、稳定性、可操作性和信息的安全性。因此在网站详细设计之前要对运行环境进行细致的配备。硬件设备配置以及环境搭建:笔记本一台或者台式机一台,如下表3.1所示。表3.1配置表硬件配置内存2G以上硬盘空间100G以上软件配置环境:1)网站开发环境数据库:MySQL开发语言:JSP开发环境运行平台:Windows开发工具:MyEclipse2)服务器端Tomcat中间件服务器3)客户端兼容浏览器:IE7.0以上浏览器,谷歌浏览器,火狐浏览器,360浏览器3.7本章小结本章主要从系统的可行性钻研开始分析,对于系统开发的目的、操作方法、可行性分析进行了介绍,从总体上来看系统的总体目的确切、操作方向可靠。在技术方面谋求简洁实用,运用JSP技术,并实用稳固、完善的开发平台实施研发,因而本系统不论从资金管理上或技术操作上思考都具备肯定的开发优势,有利于进行一些必要的付出与开发使用,在系统可行性钻研的基础上对系统的数据流程得到了更进一步的了解。4系统总体设计4.1功能模块设计本系统的设计主要包括:在线选房、楼盘管理、楼盘风采、用户注册、留言管理、公告管理等,为详细设计提供基础。(主要内容为:功能模块的介绍、功能结构图、数据库E-R图、逻辑结构表的介绍)。4.1.1功能模块介绍1)在线订房该模块主要是让普通用户在线提前预定所喜欢的楼层的房子。2)楼盘管理该模块主要是管理人员发布最近所要售出的楼盘,注册用户可以在首页中获取该信息,并决定是否要在线预订等。3)楼盘风采该模块主要提供房屋的信息给用户浏览查看以便于找到满意的房子。用户注册该模块主要是为打算在线买房的用户提供账号来对自己满意的房子进行预订。5)留言管理为了更好的交流,本系统提供了在线交流功能,注册用户可以在线进行留言,与后台的管理人员进行交流。6)公告管理该模块主要是对用户发布最新的信息,方便用户及时获取最新的消息。4.1.2功能结构图本系统的功能结构图如图4.1所示。图4.1功能模块图4.2数据库设计4.2.1数据库设计E-R图1)用户表主要包括:用户名、编号、角色、添加时间和密码。如图4.2所示。图4.2用户表2)类别表主要包括:类别名、编号和简介。如图4.3所示。图4.3类别表3)留言表主要包括:用户名、时间、编号、性别、QQ、邮箱、内容和电话。如图4.4所示。图4.4留言表4)房间表主要包括:房间信息、编号、面积、类型、时间、价格和备注。如图4.5所示。图4.5房间表5)楼盘表主要包括:编号、名称、图片、时间类型和信息。如图4.6所示。图4.6楼盘表6)预订表主要包括:用户名、编号、姓名、金额、电话、时间、身份证和房间号。如图4.7所示。图4.7预订表7)新闻通知表主要包括:标题、编号、类别、内容、图片和发布人。如图4.8所示。图4.8新闻通知表8)用户注册表主要包括:姓名、性别、身份证、出生年月、QQ、电话、密码、邮箱、编号和头像。如图4.9所示。图4.9用户注册表9)友情链接表主要包括:编号、网址、时间和名称。如图4.9所示。图4.10友情链接表4.2.2数据库逻辑结构设计本系统所使用的数据表包括:用户表、类别表、楼盘表、预订表、房间表、留言表、新闻通知表、用户注册表和友情链接表。如下表所示。表4.1Allusers用户表序号字段名称字段类型大小允许为空最大长度备注1IDInt4自增编号10
2usernameVarChar16是255
3pwdVarChar20是255
4jueseVarChar16是255
表4.2类别表序号字段名称字段类型大小允许为空最大长度备注1IDInt4自增编号10
2leibieVarChar50是255
3contentText16是255
表4.3楼盘表序号字段名称字段类型大小允许为空最大长度备注1IDInt4自增编号10
2mingchengVarChar50是255
3tupianVarChar20是255
4addtimeDateTime8是23
表4.4预订表序号字段名称字段类型大小允许为空最大长度备注1IDInt4自增编号10
2roombianhaoVarChar20是255
3yudingshijianVarChar8是255
4yudingtianshuVarChar8是255
5nindexingmingVarChar8是255
6nindedianhuaVarChar11是255
7nindeshenfenzhengVarChar18是255
8beizhuVarChar200是255
9yonghumingVarChar20是255
10IsshVarChar2是255
11addtimeDateTime8是23
表4.5房间表序号字段名称字段类型大小允许为空最大长度备注1IDInt4自增编号10
2roombianhaoVarChar20是255
3leixingVarChar50是255
4daxiaoVarChar10是255
5jiageVarChar10是255
6beizhuVarChar200是255
7addtimeDateTime8是23
表4.6留言表序号字段名称字段类型大小允许为空最大长度备注1IDInt4自增编号10
2YonghumingVarChar50是255
3XingbieVarChar2是255
4QQVarChar11是255
5YouxiangVarChar20是255
6DianhuaVarChar11是255
7NeirongVarChar500是255
8AddtimeDateTime8是23
表4.7新闻通知表序号字段名称字段类型大小允许为空最大长度备注1IDInt4自增编号10
2biaotiVarChar20是255
3leibieVarChar10是255
4neirongVarChar100是255
5tianjiarenVarChar16是255
6shouyetupianVarChar16是255
7dianjilvVarChar10是255
8addtimeDateTime16是23
表4.8用户注册表序号字段名称字段类型大小允许为空最大长度备注1IDInt4自增编号10
2YonghumingVarChar50是255
3MimaVarChar50是255
4XingmingVarChar50是255
5XingbieVarChar2是255
6chushengnianyueVarChar50是255
7qqVarChar50是255
8YouxiangVarChar50是255
9DianhuaVarChar50是255
10shenfenzhengVarChar50是255
11TouxiangVarChar50是255
12DizhiVarChar300是255
13BeizhuVarChar500是255
14AddtimeDateTime8是23
15IsshVarChar2是255
表4.9友情链接表序号字段名称字段类型大小允许为空最大长度备注1IDInt4自增编号10
2WangzhanmingchengVarChar50是255
3WangzhiVarChar50是255
4AddtimeDateTime8是2
5模块设计5.1系统首页图5.1是系统主界面。该界面包括最新新闻,用户注册,在线留言,楼盘查询,进入后台的入口,首页主要显示了轮播图,当管理人员发布了最近要售出的楼盘的时候,该新闻就显示在站内新闻这一框中。注册用户在登陆后,可以选择进入不同的菜单,根据不同的账号登陆后,进入不同的后台界面。本界面的设计核心就是以简单为主,便于操作,大方为主。图5.1系统主页面实现该页面核心代码如下所示。//在此设置新闻框的宽度和高度,varfocus_width=248;varfocus_height=151;vartext_height=19;varswf_height=focus_height+text_height;varpics="";varlinks="";vartexts="";下面的代码主要的是从系统中获取新闻通知,并且展示到首页当中,在次查询的时候,限制了最多只能获取5条新闻动态,并且通过ID自增的顺序展示出来。<%Stringsqlbht;sqlbht="selectid,biaoti,shouyetupianfromxinwentongzhiwhereshouyetupian<>''andshouyetupian<>'null'orderbyiddesclimit5";ResultSetRS_resultbht=connDbBean.executeQuery(sqlbht);Stringidbht="";Stringbiaotibht="";Stringshouyetupianbht="";while(RS_resultbht.next()){shouyetupianbht=shouyetupianbht+RS_resultbht.getString("shouyetupian")+"|";idbht=idbht+"gg_detail.jsp?id="+RS_resultbht.getString("id")+"|";biaotibht=biaotibht+RS_resultbht.getString("biaoti")+"|";}%>5.2在线订房本界面主要是实现客户在登陆后进行房屋的预订功能,当管理人员在后台发布最近要售出的楼盘信息时,访客可以在站内新闻框中获取到这些信息,当需要预定该房屋的时候,必须登录。在推荐楼盘这个框中,显示的是最近要售出的楼盘的房屋信息,具体的效果图在站内新闻中就可以查询到,在这里点击预订,就可以预定此房屋信息。图5.2在线订房实现本模块代码如下所示。<tdwidth="60"align="center"><ahref="jiudianyudingadd.jsp?kefangbianhao=<%=kefangbianhao%>">预订</a></td></tr>functioncheck()functiongow(){document.location.href="jiudianyuding_add.jsp?jihuabifffanhao="+document.form1.jihuabifffanhao.value;}5.3登陆管理为保证本系统的数据安全,用户注册以后必须通过后台管理员身份认证以后才能登入进入系统。其实现的方法为,登入当时用户使用的用户名和输入的密码必须和数据库中已有的用户名和密码相同时才能进入订房系统。图5.3登陆管理实现本模块的主要核心代码如下所示。functioncheck(){if(document.form1.yonghuming.value==""){alert("请输入用户名");document.form1.yonghuming.focus();returnfalse;}if(document.form1.mima.value==""){alert("请输入密码");document.form1.mima.focus();returnfalse;}if(document.form1.xingming.value==""){alert("请输入姓名");document.form1.xingming.focus();returnfalse;}}functiongow(){document.location.href="yonghuzhuce_add.jsp?jihuabifffanhao="+document.form1.jihuabifffanhao.value;}5.4最新资讯本模块实现的主要功能是获取最新的资讯信息,用户可以直接在网上获取到最新的楼盘信息,避免了传统的获取信息方式,能有目标性的传递信息,访客可以通过最直观,最高效的获取到信息,节省了大量的时间,避免了来回在多个小区之间跑。图5.4最新资讯实现本模块的主要核心代码如下所示。<%intcurpage=1;//当前页intpage_record=25;//每页显示的记录数intzgs=0;ResultSetRS_result=connDbBean.executeQuery(sql);Stringid="";Stringbiaoti="";Stringleibie="";Stringneirong="";Stringtianjiaren="";Stringshouyetupian="";Stringdianjilv="";Stringaddtime="";inti=0;while(RS_result.next()){i=i+1;id=RS_result.getString("id");biaoti=RS_result.getString("biaoti");leibie=RS_result.getString("leibie");neirong=RS_result.getString("neirong");tianjiaren=RS_result.getString("tianjiaren");shouyetupian=RS_result.getString("shouyetupian");dianjilv=RS_result.getString("dianjilv");addtime=RS_result.getString("addtime");5.5用户注册本模块主要实现的功能是新用户的注册,需要输入用户名,密码,姓名,性别,出生年月,QQ,邮箱,电话,身份证,头像,地址,备注等信息。图5.5用户注册系统需要实现本模块的核心代码如下所示。<scriptlanguage="javascript">functioncheck(){if(document.form1.yonghuming.value==""){alert("请输入用户名");document.form1.yonghuming.focus();returnfalse;}if(document.form1.mima.value==""){alert("请输入密码");document.form1.mima.focus();returnfalse;}if(document.form1.xingming.value==""){alert("请输入姓名");document.form1.xingming.focus();returnfalse;}}functiongow(){document.location.href="yonghuzhuce_add.jsp?jihuabifffanhao="+document.form1.jihuabifffanhao.value;}5.6新闻管理前台所有要展示的新闻,都是通过这个模块发布出去的,管理人员在这里可以发布新闻,删除新闻,修改新闻的信息,在发布新闻的过程中,管理员需要填写新闻的标题,新闻的种类,新闻的基本内容,新闻的添加人,首页图片,点击率等基本信息。图5.6新闻管理系统实现本模块的核心代码如下所示。functioncheck(){if(document.form1.biaoti.value==""){alert("请输入标题");document.form1.biaoti.focus();returnfalse;}if(document.form1.leibie.value==""){alert("请输入类别");document.form1.leibie.focus();returnfalse;}if(document.form1.tianjiaren.value==""){alert("请输入添加人");document.form1.tianjiaren.focus();returnfalse;}if(document.form1.dianjilv.value==""){alert("请输入点击率");document.form1.dianjilv.focus();returnfalse;}}5.7楼盘管理本模块主要实现的是后台管理人员对楼盘信息的管理,管理人员可以增加,修改,删除最近要售出的楼盘信息,在发布楼盘的信息时,管理人员需要添加,楼盘编号,房屋的类型,房屋的面积,价格,以及备注的一些基本信息。图5.7楼盘管理实现的核心代码如下所示。functionup(tt){varpop=newPopup({contentType:1,isReloadOnClose:false,width:300,height:50});pop.setContent("contentUrl","upload.jsp?Result="+tt);pop.setContent("title","文件上传")pop.build();pop.show();}</script></head><scriptlanguage="javascript">functioncheck(){if(document.form1.kefangbianhao.value==""){alert("请输入楼盘编号");document.form1.kefangbianhao.focus();returnfalse;}if(document.form1.jiage.value==""){/alert("请输入价格");document.form1.jiage.focus();returnfalse;}}functiongow(){document.location.href="kefang_add.jsp?jihuabifffanhao="+document.form1.jihuabifffanhao.value;}</script><body>5.8楼盘预订本模块主要实现的功能是后台管理人员获取购房者的意向,便于管理和统计。图5.8楼盘预订实现此功能的核心代码如下所示。<%intcurpage=1intpage_record=10;intzgs=0;intzys=0;Stringhsgnpage=request.getParameter("page");Stringfysql="selectcount(id)asssfromjiudianyuding";ResultSetRS_resultfy=connDbBean.executeQuery(fysql);while(RS_resultfy.next()){zgs=Integer.parseInt(RS_resultfy.getString("ss"));zys=zgs/page_record+1;}if(hsgnpage!=null){curpage=Integer.parseInt(request.getParameter("page"));else{curpage=1;}if(curpage==0){curpage=1;}if(curpage>zys){curpage=zys;}ql="";sql="select*fromjiudianyudingwhere1=1";}5.9注册用户列表本模块实现的功能是后台管理人员查看前台注册的用户信息。图5.9注册用户列表实现该功能的代码如下所示。<tablewidth="100%"border="1"align="center"cellpadding="3"cellspacing="1"bordercolor="#F8C878"style="border-collapse:collapse"><tr><td>用户名:</td><td><inputname='yonghuming'type='text'id='yonghuming'value=''/> </td></tr><tr><td>性别:</td><td><selectname='xingbie'id='xingbie'style="height:19px;border:solid1px#000000;color:#666666"><optionvalue="男">男</option><optionvalue="女">:></td>5.10楼盘风采模块的主要功能是后台操作人员对房源信息进行管理,添加,修改,删除等。图5.10楼盘风采实现本模块的核心代码如下所示。functioncheck(){if(document..mingcheng.value==""){alert("请输入名称");document..mingcheng.focus();returnfalse;}if(document.f.tupian.value==""){alert("请输入图片");document.form1.tupian.focus();returnfalse;}}functiongow(){document.location.href="jiudian_add.jsp?jihuabi="+document.form1.jihuabifffanhao;5.11留言管理本模块实现的主要功能是管理人员对在线留言进行管理。图5.11留言管理实现本模块的核心代码如下所示。<table<tr><tdStringsql="";sql="select*fromliuyanbanwhere1=1";if(request.getParameter("bianhao")==""||request.getParameter("bianhao")==null){}else{sql=sql+"andbianhaolike'%"+request.getParameter("bianhao")+"%'";}sql=sql+"orderbyiddesc";ResultSetRS_result=connDbBean.executeQuery(sql);Stringid="";Stringcheng="";Stringxingbie="";StringQQ="";Stringyouxiang="";Stringdianhua="";Stringneirong="";Stringhuifuneirong="";Stringaddtime="";inti=0;while(RS_result.next()){i=i+1;id=RS_result.getString("id");cheng=RS_result.getString("cheng");%>5.12在线选房简介本模块的实现的是管理人员告诉操作人员如何去操作此系统。5.12在线选房简介本模块实现的核心代码如下所示。<%Stringlb=newString(request.getParameter("lb").getBytes("8859_1"));%><formname="form1"id="form1"method="post"action="dx_post.jsp?lb=<%=lb%>">编辑<%=lb%>:<br><br><%Stringsql="select*fromdxwhereleibie='"+lb+"'";Stringcontdent="";ResultSetRS_result=connDbBean.executeQuery(sql);while(RS_result.next()){contdent=RS_result.getString("content");}%>5.13公告发布本模块的实现的是管理人员发布通知,用户可以在线浏览这些信息。图5.13公告发布本模块实现的核心代码如下所示。<%Stringlb=newString(request.getParameter("lb").getBytes("8859_1"));%><formname="form1"id="form1"method="post"action="dx_post.jsp?lb=<%=lb%>">编辑<%=lb%>:<br><br><%Stringsql="select*fromdxwhereleibie='"+lb+"'";Stringcontdent="";ResultSetRS_result=connDbBean.executeQuery(sql);while(RS_result.next()){contdent=RS_result.getString("content");}%>5.14本章小结本章主要介绍了该系统中所包含的主要模块,以及在实际操作中每个主要模块所使用的一些关键代码。6系统调试与测试6.1程序调试常见错误6.1.1空指针异常一般是对一个为NULL值的变量进行操作引起的。在操作变量之前进行检查就能避免该异常6.1.2数值类型异常数值格式错误,操作前仔细检查数据类型就能有效的避免类似的异常6.1.3SQL语句异常出现这种问题的原因就是SQL语句出现了问题,如果要避免这种问题的发生,建议在程序中捕获此异常6.1.4某一个对象未能关闭在实际的开发应用中,可能会出现某一个对象不能关闭的现象,为了避免这种情况的出现,可以在有关对数据库操作的文件里添加自动回收代码,在JVM自动地回收对象时,取出使用的连接对象,判断是否关闭,如果没有关闭就及时处理。代码如下所示。protectedvoidfinalize(){try{If(getConn()!=null&&!getConn().isClosed()){rs.cloes();stm.close();conn.close();}}catch(SQLExceptione){}}6.2程序的测试6.2.1测试的定义及目的软件测试:利用各种条件,然后去发现程序中出现的bug。该过程主要是为了保证程序的正常运行,能否保证质量的关键点。测试目的:研发人员可能在开发中不能完全理解设计人员的思路,在一些小的方面可能会存在差异,不能完全符合设计师所要求的逻辑思路,因此测试是非常有必要的。6.2.2功能测试1)查询:通过选择不同的组合条件,看能在分页的条件下展示所需要的效果。2)插入:主要是看插入的字段长度是否满足,中文是否会乱码,最后保证在查询中能够正确显示。3)删除:主要看单个能否删除,关联能否正常删除,类似情况的处理。4)修改:测试单个修改看是否生效,有没有合理的反馈信息,级联修改能否生效。6.3测试方案本系统的测试方案运用白盒、黑盒相结合的测试方法进行测试,主要依据需求分析以及说明,按照既定的系统功能来测试,系统需求分析上有的功能将被逐一测试。首先进行黑盒测试,即从运行的系统上进行测试,如果某一部分有问题,则说明该模块有处理不当的方式方法,接下来将采用白盒测试,查看源代码并且跟踪每一个事件,对于逻辑分支比较多的处理方法,采用该测试方法将能很好的查看每一个分支是否正确。白盒测试:测试产品是否在按照设计的文档中正确运行,多条通道测试,看能否每条测试路都正确运行。黑盒测试:指的是在明确了解了产品的具体功能后,逐条的测试产品,看每个流程都能否畅通,确保能正确的按照流程图运行。黑盒测试主要查找以下类型的错误:1)基于规格说明的功能错误2)基于规格说明的构件或系统行为错误3)基于规格说明的性能错误4)面向用户的使用错误6.4本章小结信息技术的飞速发展使软件产品应用到社会的各个领域,软件产品的质量自然成为人们共同关注的焦点,开发完成后的测试工作变得很重要。本章从软件测试的目的、软件测试的内容、测试的方法及步骤等方面介绍了有关软件测试的知识,并且详细阐述了本系统所使用的测试方法以及本系统的测试分析与测试结果。
参考文献[1]林建素,孟康健.Eclipse开发.电子工业出版社,2008.[2]萨师煊,王珊.数据库系统概论(第三版).高等教育出版社,2006.[3]邵丽萍,邵亚光.Java语言程序设计[M].北京:清华大学出版社.2008[4]翟艳平.国内外客户关系管理理论研究述评与展望[J].财经论丛.2011/03[5]李刚.疯狂java讲义[M].北京:电子工业出版社,2008.9[6]黄开枝.JavaEE5完全学习手册[M].北京:清华大学出版社,2009.4[7]SteveMcConnell.代码大全2[M].北京:电子工业出版社,2006.3[8]BruceEckel.Java编程思想第四版[M].北京:机械工业出版社,2007.6[9]陆凌牛.HTML5与CSS3权威指南[M].北京:机械工业出版社,2011.4[10]AnthonyHoldener.Ajax权威指南[M].北京:机械工业出版社,2009.9.1[11]成林.Bootstrap实战[M].北京:机械工业出版社,2013.11[12]李刚.轻量级Java+EE企业应用实战[M].北京:电子工业出版社,2011.3[13]BudiKurniawan.servlet和JSP学习指南[M].北京:机械工业出版社,2013.4[14]许令波.深入分析JavaWeb技术内幕[M].北京:电子工业出版社,2012.9[15]时代印象.3dMax2012基础培训教程[M].北京:人民邮电出版社,2012.6
结束语通过这几个月的努力,毕业设计终于结束,在这段时间的学习里,遇到过困难,也看到了希望,基于Web的在线选房系统的设计,让我又学到了一门新的技术,虽然还掌握得不够精通,涉及到的一些语法,细节还有一定的欠缺,但这个项目的学习让我对JSP有一定的认识和了解,对我将来的学习和工作是有帮助的。本系统的功能基本符合设计需求,能够完成房屋信息的存储和查询,发布以及各类相关的工作。使用户方便进行浏览,留言,评价,预订等功能。通过本项目的学习,使我更加的熟悉了数据库之间关联的问题,尤其在删除时,一对多的关系情况下,只能先删除了多的对应的关系,然后才能删除单一的关系。在设计数据库的过程,使我了解到了如何减少冗余,如何优化SQL语句,使其更加便捷的运行。在设计过程中,深刻的体会到即使再小的事情,也不能粗心大意,在设计前一定要对具体的流程,业务水平做具体的分析,设计好流程图、E-R图,画好设计图,这样设计后就能一步一步按照具体的流程设计,这样目标清楚,有针对性的编写。总之在本次设计中我不仅学会了一种新的技术,而且也可以到了如何该去做开发,应该先要做流程分析,做需求调研,数据结构设计,程序开发,程序调试。由于自身的能力有限,本系统没有设计文件下发,提出意见等功能,在文章中不免有错误和不足之处,望评审老师和同学们批评指正。
致谢我的系统和论文都是在指导老师的热情关怀和耐心指导下完成的。首先,我要由衷感谢我的指导老师,是她对我的毕业设计和论文的提供了指导和帮助,她耐心、详细、实际的指导,给了我极大的帮助、激励和关心。这段时间的毕业课题设计是我大学生活回忆里十分难忘的一段过程,在这段艰辛却又充实的日子里,我深刻体会到的是指导老师的严谨与亲切,同学们的友情与帮助,以及弥漫在身边的那种积极向上,和谐融洽的学习生活氛围。在毕业设计和论文即将结束的这段时间,我的心情无法紧张又忐忑,从开题报告的撰写到设计论文的顺利完成,指导老师、同学、朋友给了我无言的帮助,在这里请接受我真挚的感谢!最后我最需要感谢的就是培养我长大含辛茹苦的默默付出父母,是你们在我的成长道路上撒下的希望的种子,这辈子无以为报,谢谢你们!开题报告学院姓名班级学号指导教师毕业设计(论文)题目基于Web的在线选房系统题目类型□工程设计□技术开发□软件工程□理论研究和方法应用□管理模式设计□其他选题目的及意义近几年来,随着人们思想觉悟以及生活水平的提高,上网已是人们生活中不可缺少的部分,计算机可谓是现代科技发展的产物,如今的计算机已经走进了千家万户,对于大多数人来,足不出户的在自己的计算机上查看自己喜欢的商品,并购买商品已经很普遍了。适当的上网可以增加人们的知识面还可以提高生活的品味,更有利于人们身心健康的发展,有利于开阔人们的思维模式,还有利于培养人们各方面的能力。也正是因为这样,网上购物得以以飞快的速度发展,遍及到世界各个层次。在线选房系统是为了更好的适应现在互联网上交易日益增加而设计开发的。用户可以根据自己的喜好浏览自己看好的房子,但如果需要选择,就必须通过注册成为会员才能进行购买,登陆后就可以购买了。每个小区都进行了详细地分类,可以随意浏览自己想要选择的房子,同时查找系统能很容易地找到房子具体位置,并通过Web查看房子的具体布置。等客户满意的时候可以选择实地看房,完成交易。设计(研究)现状和发展趋势随着Internet的不断发展,电子商务已经成为网上的一股潮流,有许多的传统商家意图从中分一杯羹,在线选房系统的出现可以说是为他们提供了一种选择,全国各地已有很多家大商场加入网上商场,为客户提供24小时方便快捷的在线订购服务。使客户可以足不出户就能看到每个小区房子的布置和场景,这是21世纪的一种发展趋势,随着这种发展趋势,在线选房必然会得到大部分人的认可。网络在各行各业的发展战略中占据重要位置,成为商家不可分割的一部分。商品的宣传已不只局限于电视与报纸,网络成为商家展示自己的另一个舞台。商家建立网站,将商家各方面的宣传与服务展现于网络中,通过网络可实现如何选房,信息查询等功能,这些在改变我们原有的经营方式与经营理念的同时,也为商家带来了更高的效益,因此,对于商家来说,网站的管理与维护至关重要。互联网用户的爆炸式的增长及互联网对传统行业的冲击让其成为人们的快速获取、发布和传递信息的重要渠道,于是电子商务逐渐流行起来,越来越多的商家在网上建立起网上商城,向消费者展示出一种全新的购物理念,同时也有越来越多的网友加入到了网上购物的行列,电子商务网站强大的生命力和电子商务网站更加光明的未来。课题研究的主要内容用户信息模块用户包括系统用户和客户。客户可通过页面进行注册申请及查看、更新注册信息。系统用户的作用:对系统用户进行管理,添加、删除、更新用户信息,对房屋进行分类管理,添加、更新、删除信息,以及根据客户交易信息对客户的订单进行管理。房屋信息模块主要包括房屋类目管理、房屋信息管理及房屋交易处理。房屋类目管理:运用3dmax对房屋进行整体的布局设计,能够实现房屋全景的在线浏览,包括房屋朝向、室内布局、整体格局设计,为用户节约看房时间,也提供了方便。用数据库创建和编辑房屋类目,添加新房屋的时候选择相应的类目。房屋信息管理:包含完整的房屋信息,房屋全景的查看、添加、更新、删除。本系统主要面向的是为了方便网上选房的用户,只要本系统的用户会一些简单的计算机操作,就可以网上在线选房,不需要用户具有较高的计算机专业知识,而且对于网站基本信息的维护也是十分简单,管理员可以在任何一台可以上网的机器上对网站进行维护,网站的简单易用性充分说明了本系统的操作可行性,实现客户需求。在实际的销售过程中,房子的宣传受到限制,顾客只能通过上门咨询、电话沟通等方式进行各种房屋信息的获取,而且时间与物理的局限性严重影响了房子的销售,并且在无形中提高了房屋的销售成本。本系统采用JAVA开发工具MyEclipse和TomCat服务器进行程序的开发和发布。课题的工作方案网页客户端系统:支持主流浏览器用户端用Android、iOS实现1.准备阶段:毕业设计参考资料,申报课题。2.审题阶段:完成开题报告,毕业任务书,进行汇总。3.毕业设计阶段:根据学校文件的通知和毕业设计管理细则的要求,完成各阶段的设计和指导工作,完成毕业设计的论文撰写。(1)利用Adobe_Dreamweaver_CS5创建HTML设计后台网站,用户APP,(2)建立数据库模型(3)按项目需求利用myeclipse、3dmax进行页面布局设计(4)利用java编写后台代码(5)实现页面跳转,计算薪资等功能和IE浏览器上进行性能测试(6)修复及调优(7)制作演讲PPT及编写论文(8)答辩课题研究有无困难准备如何解决对于系统的实现有一些困难,所以我需要多学习一些基本的知识,看一些教学视频,运用所学知识实现系统的运行。主要参考文献[1]李刚.疯狂java讲义[M].北京:电子工业出版社,2008.9[2]黄开枝.JavaEE5完全学习手册[M].北京:清华大学出版社,2009.4[3]SteveMcConnell.代码大全2[M].北京:电子工业出版社,2006.3[4]BruceEckel.Java编程思想第四版[M].北京:机械工业出版社,2007.6[5]陆凌牛.HTML5与CSS3权威指南[M
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 逛超市课件教学课件
- 冲刺一级建造师考试教案案例试题
- 《骆驼寻宝记》教案设计
- 《相互协作的人体器官》教案
- 婚礼活动租赁协议
- 五年级上册艺术教案
- 媒体传播培训合同
- 体育馆观众自行车车棚施工合同
- 天津市菜市场垃圾分类指南
- 能源开发行业薪资管理策略
- 11葡萄沟课件(课件)(31张)语文二年级上册
- 2024年北京市基础设施投资有限公司招聘笔试参考题库附带答案详解
- 2024年共青团入团考试题目及答案
- 两癌筛查年度工作计划
- 通信工程大三学生就业能力展示
- 上海市医院2024年收入观察
- 第四章 学前儿童记忆的发展
- 胰岛素自身免疫综合征个案护理
- 对数的运算完整版本
- 选煤企业安全生产标准化课件
- 国家开放大学儿童发展问题的咨询与辅导形考周测验三周-周参考答案
评论
0/150
提交评论