1、II毕业论文(20_届)基于JSP的宁波成品房交易系统分析与设计房产信息管理与查询模块所在学院商学院专业班级电子商务学生姓名学号指导教师职称完成日期年月日III摘要随着经济的发展,消费观念的更新以及房地产市场的逐步成熟,作为“半成品”的毛坯房已渐渐不能满足市场的需求,成品房作为时代发展的产物,正逐渐成为房产交易的主力。近几年,网购风也愈演愈烈,房地产业作为国民经济的支柱之一,网上购房也悄然兴起。首先,本文对成品房交易系统进行了概述。其次,对成品房交易系统进行分析,通过需求捕获明确业务流程,确定用户需求,建立需求模型;通过发现类、关联分析、职责分析,建立领域模型;通过识别参与者、合并需求获得用例
2、、细化用例描述,分模块建立用例模型;通过ROBUSTNESS分析法建立交互模型,从而完成对系统的分析。设计阶段,在NETBEANS和DREAMWEAVER开发环境中,运用JSP技术进行编码实现,采用SQLSERVER2000进行后台数据库管理。最后,本文对实现网站功能的关键技术进行了分析,如数据库链接技术、创建表单的FORM标签等,实现了成品房交易系统的房产信息管理及查询功能,构建出图文并茂的成品房交易网站。关键词JSP;成品房;房产信息管理IVABSTRACTWITHTHEDEVELOPMENTOFECONOMY,THEUPDATEOFCONSUMERATTITUDES,THEGRADUAL
3、MATURITYOFHOUSEMARKET,ASA“SEMIFINISHEDPRODUCTS“,THEROUGHHOUSEHASGRADUALLYCOULDNOTMEETTHENEEDSOFTHEMARKETFINISHEDHOUSEASAPRODUCTOFTHETIMES,AREGRADUALLYBECOMETHEMAINPROPERTYTRANSACTIONSINRESENTYEARS,ONLINESHOPPINGHASBECOMEMOREANDMOREPOPULAR,THEREALESTATEASONEOFTHEPILLARSOFTHENATIONALECONOMY,ONLINEPURC
4、HASEISALSOQUIETRISINGFIRSTLY,THEARTICLESUMMARIESTHETRADINGSYSTEMOFFINISHEDHOUSESECONDLY,WETHROUGHCAPTURINGREQUIREMENTSTOCLEARTHEBUSINESSPROCESS,MAKESUREUSERNEEDS,THANBUILDINGTHEDEMANDMODELITISBYFINDINGTHECLASSES,ANALYZINGTHEASSOCIATIONANDRESPONSIBILITY,TOBUILDTHEDOMAINMODELBYIDENTIFYINGTHEPARTICIPAN
5、TS,COMBININGDEMANDTOGETUSECASE,DESCRIBINGTHEUSECASEINDETAIL,TOBUILDTHEUSECASEMODELBYSUBMODULEBYROBUSTANALYSISTOESTABLISHINTERACTIONMODEL,SOWECOMPLETETHEANALYSISOFTHESYSTEMINTHEDESIGNSTAGE,THESYSTEMDEVELOPMENTSINTHENETBEANSANDDREAMWEAVER,USINGTHEJSPCODEREALIZATIONTECHNOLOGY,ANDUSINGTHESQLSERVER2000TO
6、MANAGETHEBACKDATABASEFINALLY,THEARTICLEANALYZESTHEKEYTECHNOLOGIESOFTHESYSTEMTHATREALIZESITEFUNCTIONSUCHASTHEDATABASELINKTECHNOLOGY,FORMTAGSATLAST,REALIZESSOMEFUNCTIONS,SUCHASTHEREALESTATEINFORMATIONMANAGEMENTANDINQUIRYFUNCTIONCONSTRUCTTHEPERFECTFINISHEDHOUSETRADINGSITEKEYWORDSJSPFINISHEDHOUSEINFORMA
7、TIONMANAGEMENTMODULE目录1成品房交易系统概述111成品房交易系统的研究背景112成品房交易系统的国内外现状213成品房交易系统的特点32成品房交易系统分析521需求捕获522建立领域模型723建立用例模型824建立交互模型143成品房交易系统设计1731总体设计原则1732平台的选择1733子系统的划分1834数据库与表的设计1935类图的设计214成品房交易系统关键技术2341数据库链接技术2342信息发布技术2442查询技术255成品房交易系统两大功能模块实现2851程序设计2852系统部分截图和关键代码28结论33参考文献34121世纪,是“鼠标加水泥”的时代。互联网
8、的迅速普及,电子商务的快速兴起,使经济与网络之间的联系越来越密切。作为国民经济新的增长点的房地产业,也逐步搭上电子商务这趟快速发展的列车。网络与房地产行业相结合的发展模式,也迅速成为开发商及消费者的追捧对象。1成品房交易系统概述11成品房交易系统的研究背景在国际互联网热进入中国的时候,中国正处在住宅和房地产快速发展时期。住宅消费已经成为居民的消费热点,房地产业已经成为国民经济的新的增长点,在最近几年,又迅速成长为有着支柱产业地位的重要产业。成品房作为房地产业的一部分,作为时代发展的产物,正引领楼市进入产业化时代1。互联网是信息产业的一部分,2010年1月15日,中国互联网络信息中心(CNNIC
9、)2在京发布了第25次中国互联网络发展状况统计报告,数据显示,截至2009年12月30日,中国网民规模已达384亿人,较2008年底增长8600万人,年增长率为289;其中,宽带网民规模达到346亿人,较2008年增长了7600万;同时,我国手机网民数量迅速增长,规模已达233亿人,占整体网民的608。手机和笔记本作为网民上网终端的使用率迅速攀升,互联网随身化、便携化的趋势日益明显。而商务交易类应用的快速增长,也使得中国网络应用更加丰富,经济带动价值更高。据CNNIC调查,2009年中国网络购物市场交易规模达到2500亿,2010年网购物市场将迎来更大规模的发展。随着我国互联网普及率的逐年提高
10、,互联网正在走进人们的工作与生活,扮演着一个重要的角色。龚剑(2006)3指出今后我国电子商务的发展将呈现以下趋势(1)纵深化趋势。电子商务的基础设施将日臻完善,支撑环境逐步趋向规范,企业和个人发展电子商务将向深度拓展。(2)个性化趋势。互联网的出现、发展和普及本身就是对传统经济社会中个人的一种解放,个性化信息需求和个性化商品需求将成为发展方向。(3)专业化趋势。面向个人消费者的专业化趋势和面向企业客户的专业化趋势。(4)国际化趋势。我国电子商务企业将随着国际电子商务环境的规范和完善逐步走向世界。(5)区域化趋势。我国地区经济发展的不平衡和城乡二元结构所反映出来经济发展的阶梯性、收入结构层次性
11、十分明显。(6)融合化趋势。电子商务将由最初的全面开展型走向新的融合,同类网站之2间的兼并、不同类别网站之间互补性的兼并和战略联盟三中方法。房产交易网的出现为房地产业开辟了一条快速、便捷的销售渠道,它具有传播范围广、速度快、无时间地域限制、内容详尽、双向交流等特点,有利于提高房产信息传播的效率。同时,用户只需点击鼠标就可以足不出户的了解市场的房产信息,大大节约了用户的购房时间。据调查,绝大部分的房产交易网仅局限于毛胚房的交易,并未涉及到成品房的交易。面对房产交易的空缺,及对现存的较成功房产交易网站的分析,提出了建设专注成品房的交易网站,满足消费者群体的需求。因此,成品房交易网站必将有较大的发展
12、空间。12成品房交易系统的国内外发展现状宿莲梅(2006)4指出在国内,从1999年5月,搜房网正式开通,2000年L月20日,完成大中华区大规模的网上业务整合,成为大中华区和泛亚地区最大的房地产及与家有关的专业门户网站和产业平台,业务范围几乎涵盖房地产的所有领域。这是网络与房地产在中国最早的结合之一,开启了房地产网络营销的大门。王京婕(2007)5指出在当前房地产营销“鼠标加水泥”的时代,房产交易系统越来越完善,功能越来越齐全,如,视频营销、地图导航等等。目前,人气较旺、运行较好的房产交易网站有搜房网、焦点房产、58租房、新浪房产、我爱我家等。但这些房产交易网站有一个共同之处,就是均未涉及到
13、成品房交易。在国外,精装修房(即成品房)已经盛行多年,基本已不出售毛坯房。刘溟(2004)6指出在美国,五年的时间里,房地产网站增长了一百倍,最大的房地产网站“家居顾问”的待售房屋有一百万单位以上,占全美房地产销售量20。美国72的房地产商利用互联网销售房屋。有70万以上房地产经纪人,90经常利用网络与购房用户交流。在欧洲,已有几百家房地产公司把传统的房地产经营模式与互联网结合起来,利用公共网络或自己创建的网页提供房地产买卖服务。国际上,成品房已不是一个新的名词,在住宅产业化、规划设计、网络营销等方面有更多值得国内学习的地方。如,日本的功能设计、德国的节能环保理念等等,在国内,房产与网络营销已
14、形成一种特定的合作关系。开发商的支持、消费者的选择、政策的保障,成品房在国内的发展也正逐步走上轨道。但由于成品房发展正处于崛起的状态,所以,在房产网站上一般很少看见有销售成品房的信息,更多的还是局限于二手房、新开楼盘等。政府和行业管理机构的重视,相关行业的项目投入与政策支持等,相信国内成品房在房产行业将会3是今后不可动摇的发展方向。13成品房交易系统的特点张洋(2006)7将房地产网络营销与传统营销的特点相比较,得出网络营销的优势,表现在以下几个方面(1)房地产网络营销真正实现了“以顾客为中心”的营销理念。网络营销是一种自下而上的营销方式,与传统营销相比,它更强调互动式的信息交流,由强势促销转
15、为软促销。消费者可以通过网络主动查询分散在各处的、感兴趣的房地产的价格、地理位置、牌品、咨询有关信息。(2)房地产网络营销可以减少营销信息的不对称性。网络营销要求房地产企业的各种信息公开化,并受消费者的监督,减少黑箱操作,逐渐缩减二者间信息掌握程度的差距。同时,消费者还可以对已购房地产进行评价,与别人一起分享消费体验,这样好产品会被越来越多的人知晓接受,劣质产品会被淘汰出市场,网络营销成为一种驱动房地产质量、服务提升的力量。(3)房地产网络营销有利于降低企业的成本。房地产与网络结合,可以通过网上采购和网上销售,大大降低诸如采购费、租赁费、广告费及大量的销售人员工资等期间费用,从而大幅度降低成本
16、。(4)房地产网络营销扩大了消费者的选择空间。以前,消费者要购买一套房子,通常要花较多时间了解大致情况并来回奔忙看房,有了网络,消费者只要坐在家里的电脑旁,轻轻按动鼠标,各种位置、户型、价位的房屋任你挑选。这些大量信息使房地产企业提供的不同产品之间的差异更加直观、详尽和方便查询,大大拓展了选择空间,节省了消费者无效奔波的时间。成品房是房产业的一个分支,除了具备以上房地产网络营销的优点外,还有以下的优点(1)房产更具美观性,更有吸引力。(2)良好的视觉效果,直接给成品房增值。52成品房交易系统分析21需求捕获需求捕获是系统开发的前序工作,是业务需求、用户需求和系统需求的总概括,对系统的功能与性能
17、起决定性的作用。认真做好需求捕获工作是必要的也是必须的,而真正有效的需求捕获过程应该是更系统化、有针对性的活动8。具体来说,在开展成品房交易系统需求捕获的工作过程中,应按照“明确业务需求”、“理解业务流程”、“明确用户需求”三个主要步骤来进行9。(1)明确业务需求业务需求也可以理解为项目的目标,是整个系统最为宏观层面的东西。成品房交易系统的目标是,为用户提供一个订购房产、展示房产信息的平台,也就是用户可以在该平台订购现有的成品房或发布相关的需求信息,也可以上传待售的房产信息;同时管理员根据用户的意愿,促成交易。(2)理解业务流程根据对其他企业业务流程的调查和研究,得到了实施电子商务的业务流程,
18、如图1所示(见下一页)。从图1中,充分认识成品房交易系统的业务流程首先,用户在网站首页先填写个人真实信息进行注册,然后登陆个人主页,用户有发布信息、用户管理和浏览信息的权限,其中发布信息是指发布房产供应信息和房产需求信息,用户管理主要包括用户个人信息的修改;用户浏览信息时,如果中意本网站的某套房产,可点击订购,系统自动生成订购单,由管理员对订购单进行管理,并联系供求双方,促成线下交易;同时,用户也可根据商品名对本网站的房产信息进行查询。管理员主要有管理房产信息、用户信息管理、订单信息的权限。当然,用户在不注册的情况下,同样可以浏览网站的信息,但仅限于浏览。6用户注册用户登录发布信息浏览信息求购
19、信息供房信息作废订购单是否确定订购是否退出管理员联系双方生成订购单是否达成共识否是管理员确定交易信息用户管理图1网站业务流程图(3)明确用户需求知道了项目目标,了解了业务流程之后,接下来就进行更细化、深入的调查。现在有五种需求捕获技术,用户访谈、用户调查、现场观摩、文档考古和联合开发,五种技术都有各自的有点与缺点。本文采用了用户访谈技术进行需求捕获,了解到用户对成品房交易网站的要求,有如下几点网站友好性、可操作性、房产种类多样、质量可靠、价格合理等等。通过讨论,大部分的需求就比较明确了,然后再通过“用户访谈”来进一步细化,最终形成一个需求特性表如表1所示表1需求特性表编号特性FEAT01用户(
20、供应商)登录以后,可以发布房源供应信息,可以修改房源供应信息并重新发布信息FEAT02用户(需求商)登录以后,可以发布房源需求信息FEAT03用户(需求商)订购商品,生成订单信息FEAT04用户选择商品类型(迷你型、经济型、豪华型)、填写商品名进行信息查询FEAT05管理员登录台,查看/编辑用户信息,搜索用户信息FEAT06管理员确定交易信息,并将交易信息输入本网站的数据库,进行存储FEAT07双方未达成共识,则由管理员作废订购单FEAT08管理员管理房源信息722建立领域模型为了能够清晰地了解该系统所涉及的术语,理解各种实体之间的关联关系,所以需要建立一个概念模型。建立概念模型的主要手段是类
21、图,整个构建活动主要包括发现类、关联分析、职责分析三个步骤。(1)发现类“名词动词法”是发现类最常用的方法,运用该方法确定候选类房产信息、迷你型、经济型、豪华型、房产信息列表、订单信息、订单列表。(2)关联分析确定了候选类,对其之间的关系进行分析,如下迷你型(MINIHOUSE)、经济型(ECONOMICHOUSE)、豪华型(LUXURYHOUSE)与房产信息(HOUSE)之间是继承关系。房产信息列表(HOUSELIST)是由多个房产信息(HOUSE)组成的。订单信息(ORDERHOUSE)与房产信息(HOUSE)之间存在关联关系。订单列表(ORDERLIST)是由多个订单信息(ORDERHO
22、USE)组成的。综合上述的分析,可以得出如图2所示的类模型图2概念模型(3)职责分析类的职责就是类所维护的知识(成员属性)和能执行的行为(成员方法)。根据前面的需求信息,可以获得许多类的成员属性。房产信息类(HOUSE)包括房产类型(P_TYPE)、房产编号(P_ID)、房产名(P_NAME)、房产价格(P_PRICE)、房产数量(P_QUANTITY)、房产图片(P_IMAGE)、房产信息描述(P_DESCRIPTION)、发布时间(P_TIME)。房产信息列表类(HOUSELIST)包括查看(VIEW)、修改(MODIFY)、删除(DELETE)。ORDERLISTORDERHOUSE8订
23、单信息类(ORDERHOUSE)包括订单号(ORDER_ID)、订单地址(ORDER_ADDRESS)、邮件(ORDER_EMAIL)、订购者(ORDER_USER)、订单日期(ORDER_TIME)、价格(ORDER_SUM)。订单列表类(ORDERLIST)包括查看(VIEW)、删除(DELETE)。通过以上分析,重新修改类图,得到如图3所示的结果。图3加入职责信息23建立用例模型建立了初步的领域模型之后,通过用例模型来组织需求,而建立用例模型的主要步骤有识别参与者、合并需求获得用例、细化用例描述三个主要步骤。下面就依照步骤进行分析。(1)识别参与者识别参与者可以说是一件很简单的事情,也可
24、以说是一件很难的事情。也就是说,要找到参与者不难,但要正确地识别参与者并理清他们的关系并不简单。在本系统中,根据执行功能的不同,大致可分为以下两组对用户信息、房产信息、订单信息进行管理的管理员,对用户个人注册信息、个人订单信息、9发布的房产信息进行管理的用户。(2)合并需求获得用例确定了参与者之后,接下来就是仔细地检查参与者,依据已经获取得到的“特性表”为每一个参与者确定用例。首先根据参与者将特性表分开,然后再合并或分解为相应的用例,最终的结果如表2所示。表2特性合并成用例参与者特性用例用户FEAT01用户(供应商)登录以后,可以发布房源供应信息,可以修改房源供应信息并重新发布信息UC01发布
25、房产供应信息FEAT02用户(需求商)登录以后,可以发布房源需求信息FEAT03用户(需求商)订购商品,生成订单信息UC02发布房产需求信息FEAT04用户选择商品类型(迷你型、经济型、豪华型)、填写商品名进行信息查询UC03查询房产信息管理员FEAT05管理员登录后台,查看/编辑用户信息,搜索用户信息UC04查看/删除用户信息FEAT06管理员确定交易信息,并将交易信息输入本网站的数据库,进行存储FEAT07双方未达成共识,则由管理员作废订购单UC05查看/编辑订单信息FEAT08管理员对房源信息进行管理UC06管理房产信息通过上述分析,可以得到6个用例,并且获得了用例与参与者之间的关系,绘
26、制出如图4所示的用例模型。图4用例图10(3)对用例进行简要描述当完成图4所示的用例图以后,在需要建模的初期阶段还应该对每一个用例编写一个简短的描述,说明该用例的功能。在本系统中,本文主要负责房产信息管理与查询管理两大模块。其中,房产信息管理主要包括房产信息的供应管理与需求管理,房产信息发布包括迷你型、经济型、豪华型三种房产类型,查询模块就根据房产类型来进行搜索。下面对供应管理、需求管理与查询管理建立详细的需求模型。231“供应管理”模块(1)供应管理模块的活动图供应管理模块是电子商务网站不可缺少的一个模块,是系统的重点模块。用户(管理员)提出供应管理请求,系统跳转到供应管理页面,用户根据自身
27、需求选择功能,如果选择发布房产供应信息,就选择房产类型、输入房产的其他一些相关信息,并确定发布信息,系统生产房产信息列表;用户如果查看/编辑房产信息,选择相应的房产信息并对其修改重新发布,系统更新房产信息列表。最终将信息保存到数据库,活动图如下图5所示。图5“供应管理”活动图11(2)进行详细的用例描述用例描述是建模的一个重要部分,说明了该用例的功能,供应管理模块的“发布房产供应信息”用例描述如表3所示。表3用例“发布房产供应信息”规格描述用例编号UC01用例名称发布房产供应信息用例描述用户(管理员)发布房产供应信息,或查看/编辑房产信息,更新房产信息列表主参与者用户、管理员前置条件用户(管理
28、员)登录成功后置条件将房产信息保存到数据库基本事件流步骤活动1系统转到供应管理页面2用户发布供应信息,则选择房产类型、输入房产编码、房产名、价格、数量、上传图片、进行房产描述,点击发布;如果用户查看/编辑房产信息,点击查看/编辑按钮,进行相关操作,最后点击确定。扩展事件流2A在此期间,用户如果未选择房产类型,在点击“发布”的时候,系统会提示选择房产类型,房产编码、房产名输入有重名现象的,系统会提示重新输入。232“需求管理”模块(1)需求管理模块的活动图需求管理模块主要为用户提供发布需求信息的功能,该模块是公开模块,用户和管理员都能浏览到发布的需求信息,同时也可以给予回复,以便用户能快速找到自
29、己中意的房产。用户提出需求管理请求,系统跳转到需求管理页面,用户根据自身需求,填写想要购买的房产信息,然后发布信息。用户最终将信息保存到数据库,活动图如下图6所示。12图6“需求管理”活动图(2)进行详细的用例描述需求管理模块的“发布房产需求信息”用例描述如表4所示。表4用例“发布房产需求信息”规格描述用例编号UC02用例名称发布房产需求信息用例描述用户登录发布模块,填写想要购买的房产信息,点击发布主参与者用户前置条件用户登录成功后置条件将房产信息保存到数据库基本事件流步骤活动1系统转到需求管理页面2用户填写房产的一些基本信息,如房产面积、地理位置、理想价位、交通条件等等,然后点击“发布”。扩
30、展事件流2A在此期间,用户点击“发布”,信息将保持到数据库。点击“取消”,即用户放弃信息发布。13233“查询管理”模块(1)“查询管理”活动图如图所示查询功能是网站必不可缺的一个功能,有助于用户快速的搜索出满意的房产,提高购房效率。用户提出查询请求,系统跳转到查询页面,用户选择房产类型,输入房产名,系统归整查询条件,进行查询,并返回查询结果页面,用户即可以浏览查询结果。关于查询模块的活动图如下图7所示。图7“查询管理”活动图(2)进行详细的用例描述查询管理模块的“查询房产信息”用例描述如表5所示。表5用例“查询房产信息”规格描述用例编号UC03用例名称查询房产信息用例描述用户进入查询页面,选
31、择房产类型,输入房产名,点击查询,系统显示查询结果页面,用户浏览主参与者用户14续表前置条件无后置条件无基本事件流步骤活动1系统转到查询管理页面2用户选择房产类型,迷你型、经济型、豪华型三类型,输入房产名,点击查询扩展事件流2A在此期间,即使用户不输入房产名也可以查询房产信息,页面显示房产类型24建立交互模型在绘制顺序图阶段,本文采用ROBUSTNESS(鲁棒)分析法。ROBUSTNESS分析不是UML模型的一部分,它是一个强大的草图工具,是介于分析和设计之间的一种有效工具。接下来就用ROBUSTNESS分析法来绘制本系统的顺序图。(1)从事件流开始ROBUSTNESS分析是针对某个具体用例而
32、言的,而其分析的基础是某个具体的用例描述,所以本文结合以上表3、表4、表5用例描述的内容,分析系统的事件流。(2)寻找边界对象在该用例中,不存在外部系统,而且参与者也相对比较简单,只有一个,即“用户”,因此要寻找边界对象只需以“用户”这个参与者为线索从用例描述中的每一句去选择。(3)寻找控制对象和实体对象实体对象通常在领域类图中寻找,也就是在用例中相关的领域类,而控制对象是通过对用例描述进行分析而获得的。(4)建立交互模型ROBUSTNESS分析之后,在此基础上进一步完成交互模型。将参与者、边界对象和实体对象放在最顶部,边界类放在左边,实体类放在右边。整理得到“供应管理”模块、“需求管理”模块
33、和“查询管理”模块的顺序图如图8、图9和图10所示。15用户提出发布供应信息请求,进入供应管理界面,用户选择发布信息或是修改信息,显示信息录入窗口。用户根据提示完善房源信息并确认发布,最后页面显示用户发布的房产信息列表。用户提出发布需求信息的请求,进入需求管理界面,点击信息发布按钮,进入信息录入窗口,用户根据提示完善需求信息并确认发布,最后页面显示用户的需求信息列表。图8“供应管理”顺序图图9“需求管理”顺序图16图10“查询管理”活动图用户提出查询请求,进入查询管理界面,选择房产类型,输入房产名进行查询,最后显示查询结果界面。如果显示的是错误页面,则系统会直接跳转到查询管理界面,用户需重新输
34、入相关信息,并进行查询。173成品房交易系统设计31总体设计原则电子商务系统设计的结果是后续开发和实施的基础。系统设计受制于许多因素,如技术条件、业务规模、设计人员对系统的理解等。因此,系统设计是因人而异的。在应用处理方式、主机设备选择、系统应用软件设计等方面也有较大的差别10。本系统的设计原则包括(1)界面的友好性;(2)符合企业信息化的整体技术战略;(3)满足开放、可扩充的要求;(4)与现行应用具有良好的兼容性(5)安全性其中,界面设计是系统设计的一个关键部分,界面的可操作性直接影响了网站的运行效果。所以,要从界面的友好性、可用性、实用性出发,设计界面的整体结构。李祥原和库贝克理查德J11
35、指出(1)网站使用前的可用性与任务的完成时间有关。(2)使用前的可用性与偏好之间的关系要强于任务的完成时间与偏好之间的关系。(3)实际使用后,设计属性与网站有较高的内部相关性。(4)相对于网站的美化来说,如颜色和字体,用户对网站喜好的选择更偏重于网站的组织结构与布局。32平台的选择(1)操作系统的选择本平台选择WINDOWSXP作为服务器上运行的操作系统。(2)数据库管理系统的选择SQLSERVER2000继承了SQLSERVER70版本的优点同时又比它增加了许多更先进的功能,具有使用方便,可伸缩性好与相关软件集成程度高等优点,可跨越从运行MICROSOFTWINDOWS98的膝上型电脑到运行
36、MICROSOFTWINDOWS2000的大型多处理器的服务器等多种平台使用12。18所以本平台选择SQLSERVER2000作为本系统的数据库管理系统。(3)应用服务器的选择龚剑(2006)13指出了对基于WEB的电子商务系统与一般的电子商务系统的区别目前几乎所有的语言都支持WEB的服务发布,服务查找和服务调用,所以避免了系统间的协议与接口转化,增强了系统的开放性;WEB是基于XML/SOAP技术构架的,所有的消息都是以XML格式传输和存储,SOAP协议是基于HTTPSMTP等协议之上,与其他调用方法相比,技术的通用性高;基于WEB构架的电子商务系统其技术构架主要是应用了SOA系统设计模式,
37、这种设计模式使得系统的功能分布在不同的WEB,系统可以通过这些WEB来完成一个逻辑操作的过程,实现了系统功能的低耦合性。基于WEB的各种优点,本平台选择WEBSERVER服务器。(4)系统开发环境的选择吴东伟、高孝峰(2008)14指出DREAMWEAVER可以轻而易举地制作出跨平台限制和跨越浏览限制的充满动感的网页。本平台选择NETBEANS和DREAMWEAVER作为本系统的开发环境。33子系统的划分为了实现系统目标,系统必须具备一定的功能。功能就是做某项工作的能力。把系统划分为子系统可以大大简化设计工作,因为划分以后,只要子系统之间的接口关系明确,每一子系统的设计、调试,基本上可以互不干
38、扰地各自相对独立地进行。将来,如要修改或扩充系统,可以在有关子系统范围内进行而不至于牵动全局。根据系统的功能需求,“成品房中介”子系统的划分如图11所示。19图11“成品房中介”体系结构图34数据库与表的设计数据库(DATABASE)是按照数据结构来组织、存储和管理数据的仓库。使用数据库可以带来了许多的好处如减少了数据的冗余度,从而大大地节省了数据的存储空间;实现数据资源的充分共享等等。参考先前对系统的分析,可得到如下的ER图与数据库及表。(1)数据库结构的概念设计王珊(2006)15指出数据库概念设计是整个数据库设计的关键,概念设计的好坏将直接影响到数据库的性能和应用系统开发的效率。林忠达(
39、2009)16指出实体关系模式(简称ER模式)是关系数据库设计的重要工具之一,实体关系图(简称ER图)是ER模式的一种图形表示。ER图的基本构成要素是实体型、属性和联系,其主要由三种符号表示实体联系属性实体型,用矩形表示,是现实中客观存在的事物;联系,用菱形表示,表示实体之间的各种联系;属性,用椭圆形表示,是指实体或者是属性的性质;网上成品房中介管理员子系统用户子系统用户登录用户注册供应管理需求管理用户管理管理员登录交易信息管理查询管理20房源供应信息属于房源类别N1用户订单发布签订泥、1NN1房源需求信息N发布1下面将通过对成品房交易系统建立ER图进行数据库概念设计的研究和设计如下图12所示
40、。图12系统ER图一个用户可以发布多个房源信息(供应和需求信息),所以它们之间就形成了1N的关系;一个房源类别可以对应多个房源信息,所以它们之间形成了1N的关系;一个用户可以签订多笔订单,所以它们之间也形成了1N的关系。(2)数据库结构的逻辑设计根据ER图向关系数据模型的转换规则,系统ER图可转换成6张关系数据表,用户信息、订单表、管理员、房源类别表、房源供应信息表和房源需求信息表。以下是我根据相关模块所设定的两张表格房源类别表与房源信息表。数据库名SHOPSYSTEM房源类别表MAIN_TYPE表6房源类别表字段类型说明T_IDCHAR10房源类别编号(主键)T_TYPECHAR20房源类别
41、名房源供应信息表PRODUCT表7房源供应信息表字段类型说明P_IDCHAR20房源类别名(外键)P_IDCHAR20房源编号(主键)P_NAMECHAR20房源名P_SUPPLYCHAR20发布人P_PRICEFLOAT8价格P_QUANTITYINT4存量P_IMAGECHAR100房源图片P_DESCRIPTIONCHAR2000房源简介P_TIMECHAR20发布时间21房源需求信息表IDEA表8房源需求信息表字段类型说明IDCHAR10编号(主键)C_NAMEVARCHAR30用户名C_HEADERVARCHAR30用户头像NEW_MESSAGEVARCHAR1000用户需求信息RE
42、_MESSAGEVARCHAR1000回复信息NEW_TIMECHAR15发布时间RE_TIMECHAR15回复时间35类图的设计(1)系统实体类图如下图13所示。图13系统实体类图一个用户可以签订多个订单,可以发布多个房源信息;一个管理员可以管理多个用户、多个订单和多个房源信息,如上图13所示。22(2)系统界面类图和控制类图如下图14所示。图14系统界面类图和控制类图从上图14中,可以看出主界面MAINHTML主要有四个类组成,分别是SELECTJSP,HOUSEVIEWJSP,INFISSUEJSP,LEFTJSP。其中INFISSUEJSP类必须在用户登录的情况下才能执行,用户可进行房
43、源供应信息(SUPPLYJSP类)、房源需求信息(REQUIREINFJSP类)发布。SELECTJSP类是退出主页进入管理员登录系统,管理员登录以后可进行用户信息删除(USERMODIFYJSP类)、订单查看(ORDERVIEWJSP类)等的操作。234成品房交易系统关键技术41数据库链接技术成品房交易网站使用SQLSERVER2000为后台数据库支持,运用JDBCODBC桥访问数据库。JDBCODBC桥将JDBC调用转换成相应的ODBC调用,通过ODBC库访问ODBC数据源17。具体链接部分配置代码如下/链接数据库JDBC访问数据库的主要步骤有(1)加载JDBC驱动程序。访问数据库需要做的
44、第一件事情就是将合适的驱动程序加载到JAVA虚拟机上,使JAVA虚拟机能够通过驱动程序访问数据库。而JAVA虚拟机加载类的方法就是使用静态方法CLASSFORNAME;(2)创建数据库链接。JAVASQLDRIVERMANGER类开始接管驱动程序,识别出可以使用的驱动程序,通过DRIVERMANAGERGETCONNECTION24方法获取实现CONNECTION接口的对象;(3)建立和执行数据处理语句。调用CONNECTION的CREATESTATEMENT方法新建一个STATEMENT对象,然后使用这个对象执行所需的SQL语句;STATEMENT对象的EXECUTEQUERY方法用于执行可
45、以返回数据的查询操作,即SELECT语句,如上代码显示,返回SQL后面所有符合条件的数据。(4)处理所得结果。运用RESULTSET的GETSTRING方法读出数据。42信息发布技术FORM是HTML的一个标签,用于为用户输入创建HTML表单。其中,表单能够包含INPUT元素,比如文本字段、复选框、单选框、提交按钮等等。而表单的最终作用就是向服务器传输数据。文本域、密码域、复选框、单选按钮等的设定都离不开标签。FORM有一个必备属性,即ACTION。ACTION规定了当系统提交表单时,向何处发送表单数据,这是个及其重要的属性。在本系统中,涉及到标签的代码有很多,如用户注册、登录、订购、发布信息
46、以及查询等方面。下面以本系统中发布信息的代码为例进行分析(1)录入信息发布您需要的房产信息/点击返回则超级链接到INDEXJSP界面当用户点击提交按钮时,表单中的数据就被传输到服务器中。(2)提交并显示信息“上面的代码与数据库关联,通过SESSIONGETATTRIBUTE方法从数据库中获取与指定名字相关联的属性值,通过REQUESTGETPARAMETER方法获取客户端向服务器端发送的参数值,即用户发布的需求信息。最后,通过OUTPRINTLN方法将信息输出。42查询技术(1)SELECT标签SELECT是HTML的一个标签,其作用是可创建单选或多选菜单,同时也可用于在表单中接受用户输入。查
47、询模块中房产类型的选择就用了标签,当提交表单时,浏览器会提交选定的项目,或者收集用逗号分隔的多个选项,将其合成一个单独的参数列表,并且在将表单数据提交给服务器时包括NAME属性18。以下供应管理模块及查询模块都涉及到标签,所以26在这里先介绍下该标签的关键代码。/SELECT标签的关键代码房产类型“/从数据库中输出房产类型名(2)关于房源信息查询,首先运用JDBCODBC进行数据库链接,主要运用REQUEST的GETPARAMETER方法获得用户端传给服务器端的信息,如房源类型名、要查询的房源类型、房源名,然后再通过RESULTSET的GETSTRING方法读出数据。下面以查询房源信息代码为例
48、进行分析。查询结果代码源自SELECT_OKJSP/省略了建立表单的代码285成品房交易系统两大功能模块实现51程序设计作为系统的一个步骤,程序设计是设计的一个自然结果。因此,程序的质量主要取决于软件的质量,但是程序设计语言的特性和编码途径也会对程序的可靠性、可读性、可测试性和可维护性产生影响。JAVA语言作为面向对象的语言,具有以下优点19(1)全面将内容的生成和显示分离,有助于作者保护自己的代码,又能保证任何基于HTML的WEB浏览器的完全可用性。(2)利用可重用组件,加速了总体开发过程,并且使得各种组织在他们现有的技能和优化结果的开发努力中得到平衡。(3)简单采用标志简化发展。(4)强大
49、的可升缩性。(5)多样化和功能强大的开发工具支持。(6)平台无关性,JSP拥有JAVA编程语言“一次编写,各处运行”的特点。(7)数据库连接。52系统部分截图和关键代码(1)供应管理模块用户添加房产信息,根据系统提示,选择房产类型,添加房产信息,点击添加,即发布成功。如下图16、图17所示(见下一页)。关于供应管理模块的信息发布技术,在第四章的42节中有详细的介绍,在这里就做一个简单的描述。在该模块,首先运用JDBCODBC桥进行数据库链接,主要运用REQUEST的GETPARAMETER方法获得用户端传给服务器端的信息,然后再通过RESULTSET的GETSTRING方法进行数据处理,最后通过OUT对象的PRINTLN方法向用户端输出数据。29图15用户添加房产信息图16用户添加后房产信息显示30代码源自PRODUCT_ADD_OKJSPALERT请先登录WINDOWLOCATIONHREFINDEXJSP“ELSEDATEDATENEWDATESTRINGP_TYPESTRINGREQUESTGETPARAMETER“P_TYPE“/获取客户端向服务器端的参数值,即房源类型STRINGP_IDSTRINGREQUESTGETPARAMETER“P_ID“/获取房源编号STRINGP_NAMESTRINGREQUE