为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

基于JSP的酒店网上订房系统论文

2017-09-02 50页 doc 404KB 15阅读

用户头像

is_083599

暂无简介

举报
基于JSP的酒店网上订房系统论文基于JSP的酒店网上订房系统论文 码农毕业设计下载网:www.manong365.com 太 原 理 工 大 学 毕业设计,论文,任务书 第1页 毕业设计(论文)题目: 酒店网上订房系统 毕业设计(论文)要求及原始数据(资料): 1(根据近几年的基本情况,做问卷调查,得到实际生活中大部分人的要求; 2(再根据所得到的问卷调查结果,得出酒店网上订房系统的界面情况; 3(数据库的选择和应用; 4(对每一个组件添加的监听的情况; 5(分析该项目应该使用的基础语言以及提高编写代码的能力; 6. 部署上线的方式以...
基于JSP的酒店网上订房系统论文
基于JSP的酒店网上订房系统 码农毕业设计下载网:www.manong365.com 太 原 理 工 大 学 毕业设计,论文,任务书 第1页 毕业设计(论文)目: 酒店网上订房系统 毕业设计(论文)要求及原始数据(资料): 1(根据近几年的基本情况,做问卷调查,得到实际生活中大部分人的要求; 2(再根据所得到的问卷调查结果,得出酒店网上订房系统的界面情况; 3(数据库的选择和应用; 4(对每一个组件添加的监听的情况; 5(分析该项目应该使用的基础语言以及提高编写代码的能力; 6. 部署上线的方式以及运行; 7. 最后就是进行测试,采用单元测试、集成测试、功能测试等结合; 8. 训练检索文献资料和利用文献资料的能力; 9. 训练撰写技术文档与学位论文的能力。 1 码农毕业设计下载网:www.manong365.com 第2页 毕业设计(论文)主要内容: 1(根据深入了解,综合描述酒店网上订房系统的作用; 2(国内外都应该调查,才能更准确的设计系统; 3(了解各种编码语言,选择最适合的编码语言; 4(在该系统中,我认为最主要的是数据库的选择和连接; 5(还应该得到更多的数据,来进行该系统的运行; 6. 深入分析酒店网上订房系统的设计过程; 7(在设计的每一步上,都应该对应相应的文档; 8(每一个界面的设计以及代码的实现; 9. 测试的过程记录以及测试中遇到问题对问题的解决方法。 学生应交出的设计文件(论文): 1(内容完整、层次清晰、叙述流畅、排版规范的毕业设计论文; 2(包括毕业设计论文、源程序等内容在内的毕业设计电子文档及其它相关材料。 第3页 2 码农毕业设计下载网:www.manong365.com 第3页 主要参考文献(资料): [1] 王宜贵. 软件工程[M]. 北京:机械工程出版者, 2002:20-79 [2] 相洁,呼克佑.Java语言程序设计[M].北京:人民邮电出版社,2013 [3] 耿祥义. SP基础编程[M] . 清华大学, 2004 [4] 张永强,土爱民. Java程序设计应用[M].北京:电子工业出版社,2007 [5] 李青. Java高级语言程序设计[M].北京:电子工业出版社, 2009 [6] 李松林,陈华清,任鑫. Eclipse宝典[M].北京:电子工业出版社,2007 [7] 冀振燕. UML 系统分析设计与应用案例[M].北京:人民邮电出版社,2003。 [8] 面向对象系统分析与设计,Ronald J.Norman/7-302-02342-5/,清华大学出 版社。 [9] 吉根林,崔海源. JSP程序设计教程[M]. 北京:电子工业出版社,2004。 [10]Wiley,J. Developing software for Symbian OS[M].Chicago:American Library Association, 2007 [11]Jon Titus. ECN Technical Editor: “The Eclipse of stand[J].Joural of ZhongKai Agrotechnical College”,Vol.19,No.2,2006 [12]Sanden,Bo. “STSTEMS PROGRAMMING WITH JSP:EXAMPLE-AVDU CONTROLLER”, Communications of the ACM,Vol28,No10,1985 专业班级 学生 要求设计(论文)工作起止日期 2015年3月23日~2015年7月3日 指导教师签字 日期 2015年3月23日 教研室主任审查签字 日期 系主任批准签字 日期 3 码农毕业设计下载网:www.manong365.com 酒店网上订房系统 摘 要 作为一名大学生,我们在校园里学到了做人的道理、专业知识、开阔了自己的视野、学会与人交流,这些所学到的知识的最终用途就是实现自己的人生价值、造福社会。当今社会,网络的发展日新月异,人们的网络消费观逐渐提高,对消费的要求也是不断地提升,这就需要我们这些人才来实现他们的这些高要求。近年来,旅游业的发展,使得游客们对酒店的要求越来越高,他们希望更加便捷,不需要花费时间去寻找酒店,这样就需要在网上进行酒店预订,所以,酒店网上订房系统的开发和实现就很重要了。 本文也从六个章节分别阐述,第一章为文章的绪论,主要进行可行性研究,分析该系统的四大可行性;第二章为需求分析,从开发人员和用户的角度分别出发进行需求分析;第三章为系统设计,主要概要设计、详细设计以及数据库的设计等;第四章为代码实现,主要是进行前端和后台的编码;第五章为系统测试,主要进行的是功能测试;第六章就是进行总结。 关键词:java;sqlserver;jsp;酒店订房 1 码农毕业设计下载网:www.manong365.com Hotel Online Booking System Abstract As a college student,we learned the truth in life,professional knowledge, broaden their horizons,learn to communicate with many people of their own in the campus, the learned knowledge is the final purpose to realize their value of life, for the benefit of society. In today's society, the development of the network change rapidly, people's consumption concept network gradually improve, consumer demand is also constantly upgrading, we need these people to achieve these high requirements for their. In recent years, the development of the tourism industry, so that visitors to the hotel requirements more and more high, they want more convenient, do not need to spend time looking for the hotel, so we need to make a hotel reservation online, so,development and implementation of the hotel online booking system is very important. We must use their knowledge for the benefit of mankind, in the learning of professional knowledge, learned a lot of professional knowledge of the University for four years, mainly used in the system is the Java code design and SQLSERVER database CRUD operations, as well as the realization of JSP page is also very important, in the design process, is mainly the code and the test used most of the time, there is a small part of the time is mainly used in the document. Hotel online booking system is a very the main new management information system, including front-end and back-end development system. Database requires consistency, int egrality, data with good security features, and the front of the procedure function complete, easy to use. This article from the six chapters respectively in this paper, the first chapter is the introduction, mainly for the feasibility study, analysis of the four the feasibility of the system; the second chapter is the analysis of demand, from the developers and users point of view of the demand analysis;the third chapter is the system design, the main outline design, the key detailed design and database design the fourth chapter is the implementation of the code;mainly is carries on the front-end and back-end code; the fifth chapter is 2 码农毕业设计下载网:www.manong365.com the system test, the main function is testing; the sixth chapter is the summary.So I think I can finish the hotel online booking system. Key words: Java ; SqlServer ; JSP ; hotel reservation 3 码农毕业设计下载网:www.manong365.com 目 录 1 绪 论...............................................................................................................1 1.1 论文研究的背景和意义......................................................................................1 1.2 论文研究的主要内容..........................................................................................2 1.3 我国的现状..........................................................................................................2 1.4 可行性研究.........................................................................................................3 1.4.1 经济可行性..............................................................................................3 1.4.2 技术可行性..................................................................................................4 1.4.3 运行可行性..................................................................................................5 1.5 所用到的关键技术.............................................................................................5 2 需求分析.........................................................................................................12 2.1 任务....................................................................................................................12 2.2 业务流程分析....................................................................................................12 2.2.1 前台业务流程分析.....................................................................................12 2.2.2 后台业务流程分析.....................................................................................13 功能需求............................................................................................................14 2.3 2.4 性能需求............................................................................................................14 3 系统设计.........................................................................................................15 3.1概要设计.............................................................................................................15 3.2功能模块设计.....................................................................................................15 3.2.1 前台模块功能设计.....................................................................................15 3.2.2 后台管理模块设计.....................................................................................16 3.3 数据库设计........................................................................................................17 3.3.1 E-R图........................................................................................................18 3.3.2 基本表设计.................................................................................................22 4 功能实现.........................................................................................................30 4.1 系统页面的实现................................................................................................30 4.2 前台页面的实现................................................................................................30 4.2.1 首页展示.....................................................................................................30 1 码农毕业设计下载网:www.manong365.com 4.2.2 用户管理模块.............................................................................................31 4.2.3 订单查询模块.............................................................................................31 4.2.4 预订专区....................................................................................................31 4.3 后台功能模块的实现........................................................................................35 4.3.1 酒店管理模块.............................................................................................36 4.3.2 公告管理模块.............................................................................................37 4.3.3 会员管理模块.............................................................................................37 4.3.4 订单管理模块.............................................................................................38 5 测试和运行.....................................................................................................39 5.1 软件测试............................................................................................................39 5.1.1 软件测试的定义.........................................................................................39 5.1.2 软件测试的原则.........................................................................................39 5.1.3 软件测试的目标.........................................................................................40 5.1.4 软件测试的过程.........................................................................................40 5.2 酒店网上订房系统的测试................................................................................41 5.2.1 前台模块的测试.........................................................................................41 5.2.2 后台模块的测试.........................................................................................42 6 结论.................................................................................................................43 6.1 总结...................................................................................................................43 6.2 展望 .................................................................................................................43 参考文献......................................................................................................................44致谢..............................................................................................................................45 2 码农毕业设计下载网:www.manong365.com 1 绪论 1.1 论文研究的背景和意义 改革开放以来,我们国家的经济水平稳步上升,国民生产总值也是不断提高,位于世界前列,但是我们国家软件行业的发展还需要我们这些后辈人的不断努力。随着旅游业的发展,服务业也迅速发展起来,有人说未来是服务的社会,我也是这么认为的。传统的酒店经营管理模式已经满足不了时代所需,要想企业做大,发展更好,必须寻找新的出路、新理念,走可持续发展的道路。如今计算机网络的发展壮大,信息化逐渐走进人们的生活,因此利用的强大宣传和传播力量来实现企业的发展出路很有必要。 在科技发展的现在,旅游业发展得很好,这样游客对酒店的要求也越来越高,就根据这一需求,我决定设计一个酒店网上订房系统,这个系统要解决的问题主要是在网上实现订房,这样订房就不必局限于去酒店订房。实现了在网上可以不受时间,不受地域的影响就可以在网上订房,这样游客就可以在旅游前就可以进行订房了,也不必携带很多现金去订房,直接在网上进行支付就行。这个系统从方便用户的角度,可以分为几方面:一是方便用户不受地域的影响,可以在家就订好旅游时需要的酒店;二是可以不受时间的限制,在平时得酒店订房中,需要查看酒店是否开门,而该系统不需要考虑该问题,随时都可以进行订房;三是付款方便,可以直接用银行卡支付,也可以用余额宝,支付宝都可以,这样就可以不用携带很多现金去酒店订房了,安全了很多;四是退房比较方便,在现实酒店定的房间,一般情况下是不可以进行退房的,要想退房应该也会扣除一部分的钱,而在网上进行订房后,是可以退房的,只要是你没有入住,就可以在网上进行退房,退房后,付的款会自动按原途径返回。总之,网上酒店订房系统主要是实现用户可以轻松方便地在网上进行订房的功能,也就是说用户可以随时随地,不受天气,不受现金的影响,不受可不可以退房的影响,就可以轻松在网上实现订房。这样不仅方便了用户,也方便了酒店的管理。 在现实生活中,去酒店订房是很麻烦的一件事情,而且酒店里的订房系统也是比较复杂,不实用的。有了酒店网上订房系统,就会带来很多的方便,这样就能减少人力资源,能更加方便地管理酒店,网上酒店订房系统能实现远程订房业务,退房业务;更高效,更方便,更规范地实现用户的需求。而传统的酒店业务 1 码农毕业设计下载网:www.manong365.com 需要前台接待,收银结账,预订客房,查询预订信息,注册会员,会员管理等一系列问题,这样会花费巨大的人力和财力,还无法实现远程控制。相比较而言,酒店网上订房系统就方便很多,所以说设计酒店网上订房系统是很有必要的。 1.2 论文研究的主要内容 题目是酒店网上管理系统,整个系统可以分为两大部分:前台功能和后台功能。前台功能主要包括:客户登录,注册个人信息,可以查询酒店的情况(包括酒店的类型,客房的状态,客房的一些基本情况),登录该系统以后可以根据查询的信息预定客房,可以支付(包括银行卡支付,支付宝支付和余额宝支付三种支付方式),可以退房;后台主要是该系统的管理员更新客房的状态,更新公告,更新个人信息,添加,删除信息,冻结和解冻会员信息。主要是为了更加方便出游中的酒店预订,本系统的可靠性高,稳定性强,更新方便,成本低,使用方便等特点一定会顺应酒店发展的需要。 1.3 我国的现状 改革开放以来,我国的经济迅速增长,稳步前行,向着发达国家前进。经济的快速发展离不开科技的进步,虽然我们国家的经济水平不断上升,但是IT行业的人才还是很缺少的。随着我国市场经济的发展,作为经济发展的重要组成部分的酒店应运而生,在中国大地不断地扩展领地,还由于宾客对酒店服务要求的不断提高,所以酒店在经营管理上存在着很多的问题,包括经营管理不善等,面临的竞争威胁也日益增大,因此研究如何抓好酒店管理,适应现代消费,更好地服务社会活动和经济发展,有着重大的现实意义。智能化 ,作为现在高品质的酒店,为了促进酒店可以稳定的发展,就必须要重视培养属于自己企业和集团的高技术人才,并利用现在的高科技,例如网络与客户的关系进行联系,还有远程的交流和沟通,为其提供高速便捷的优质服务做好准备,做到从预定到入住再到结账的一站式服务,最大地提高酒店快速便捷的效果,为了达到该目的,建议实现全电脑化管理和电子化服务。方便和普及是酒店智能化的具体体现,它能让客户在享受洒店优质服务的同时也能感觉到酒店智能化带来的享受,这就需要从信息传递和便捷等方面来进行完善。在现阶段,生态化的酒店经营管理主要体现在下面几个方面:一是强化绿色生态的环保意识,包括节能降耗注重环境生态的营 2 码农毕业设计下载网:www.manong365.com 造等;二是废品处理等;三是旅游饭店的选址、服务项目设计、功能生态布局等。而三也是实现前两点的前提和基础服务的个性化。在当今这个时代下经济飞速发展,要想在市场的竞争中站稳脚跟就必须要有独特的特色和特别的个性服务,酒店只有对员工进行培训,酒店也应该最大程度地对顾客进行在规范服务范围内提供拥有针对性的个性化服务,针对顾客个性的差异最大限度的满足客人的需求是个性化服务的特征,但它的实行必须是要在规范服务做好的基础上进行才可以的。坚持以人为本,具有专业知识的人才是任何行业蓬勃发展的推动,因此酒店业如果想要在严峻的竞争中获得快速稳定的发展,必须要拥有属于自己企业的专业型人才。随着社会的快速发展,服务行业不再仅仅遵从“顾客是上帝”的理论,而是将员工也列为其发展的主体,要相信没有满意的员工就没有满意的顾客,切实保障员工的福利,让员工不仅要在工作环境中获得归属感,也要在工作中不断的挖掘员工的潜能,并将酒店的经营与服务理念深入员工心理,这样才能使他们为酒店做出更大的贡献。 1.4 可行性研究 1.4.1 经济可行性 经济可行性是指:这个项目所用的人力,财力都在可以承受的范围内。酒店网上订房系统主要包括的费用:一是人力资源:这个项目是由我一个人完成的; 二是财力资源:域名费用,在我注册域名之后,每年需要缴纳一定的费用以维护该域名的所有权,不同层次的域名收费也应该不同。2000年后普遍使用的费率是:国内域名是每年300元左右;硬件设备的投入:根据对酒店网上订房系统的规模和未来发展的双重考虑,应该采用入门服务器就能支持该系统的良好运行,主要配置为处理器:2.8GHz的CPU,拥有800MHz 前端总线和2MB 二级缓存,这在入门服务器里属于最常见的装备和设置;内存:最大可扩展至8GB;硬盘:该套设备造价在13000元左右;高档PC机:费用在8000元左右; 当然,系统运行后可以带来经济效益,系统带来的经济效益分为直接经济效益和间接经济效益,直接经济效益是在酒店网上订房系统投入使用后,对经济的直接影响,把这种效益与系统投资和运行费用相比,可以估算出投资回收期,但是由于酒店网上订房系统是网络商务系统,难以直观的计算出系统的投资期,但是本系统投入使用后,可以减轻管理人员的工作强度和力度,提高工作效率。系 3 码农毕业设计下载网:www.manong365.com 统的效益是难以用货币形式来表现出来的间接效益,酒店网上订房系统带来的间接经济效益有:首先是减少管理者工作强度;可以适当地提高工作效率;可以降低相应的工作成本;可以扩大市场的影响率;也可以提高企业形象等。 1.4.2 技术可行性 1.全面考虑系统开发过程所涉及的所有技术问题,软件开发涉及多方面的技术,包括开发方法、软硬件平台、网络结构、系统布局和结构、输入输出技术、系统相关技术等。应该全面和客观地分析软件开发所涉及的技术,以及这些技术的成熟度和现实性。 2.尽可能采用成熟技术,成熟技术是被多人采用并被反复证明行之有效的技术,因此采用成熟技术一般具有较高的成功率。另外,成熟技术经过长时间、大范围使用、补充和优化,其精细程度、优化程度、可操作性、经济性等方面要比新技术好。鉴于以上原因,软件项目开发过程中,在可以满足系统开发需要、能够适应系统发展、保证开发成本的条件下,应该尽量采用成熟技术。 3.慎重引入先进技术,在软件项目开发过程中,有时为了解决系统的特定问题,为了使所开发系统具有更好的适应性,需要采用某些先进或前沿技术。在选用先进技术时,需要全面分析所选技术的成熟程度。有许多报道的先进技术或科研成果实际上仍处在实验室阶段,其实用性和适应性并没有得到完全解决,也没有经过大量实践验证,在选择这种技术时必须慎重。例如,许多文章中已经报道了指纹识别技术,而且市场上也有实验性产品,但指纹识别技术至今仍有许多重大技术难题没有突破,离具体应用仍有一定距离。因此,在项目开发中要谨慎选用这种技术。如果不加分析,在项目中盲目采用指纹识别技术,应用时肯定会出现许多难以解决的具体问题。 4.着眼于具体的开发环境和开发人员,许多技术总的来说可能是成熟和可行的,但是在开发队伍中如果没有人掌握这种技术,而且在项目组中又没有引进掌握这种技术的人员,那么这种技术对本系统的开发仍然是不可行的。例如,分布对象技术是分布式系统的一种通用技术,但是如果在开发队伍中没有人掌握这种技术,那么从技术可行性来看就是不可行的。 5.技术可行性评价,技术可行性评价是通过原有系统和欲开发系统的系统流程图和数据流图,对系统进行比较,分析新系统具有的优越性,以及对设备、现有软件、用户、系统运行、开发环境、运行环境和经费支出的影响,然后评价新 4 码农毕业设计下载网:www.manong365.com 系统的技术可行性。主要包括以下几个方面:在限制条件下,功能目标是否能达到;利用现有技术,性能目标是否能够达到;对开发人员数量和质量的要求,并说明能否满足;在规定期限内,开发是否能够完成。 1.4.3 运行可行性 酒店网上订房系统包括前台和后台,前台指的是客户可以注册个人信息然后成为会员,登录进去就可以进行酒店预订,支付以及退房服务;后台指的是酒店管理人员可以进入系统进行酒店客房管理,订单管理以及客户管理。 该系统是可以正常运行的。 1.5 该系统的关键技术 1.5.1 环境 酒店网上订房系统所用到的环境: 硬件环境:HP6460b,内存512MB; 软件环境:SQL Server2008,MyEclipse,JSP,Window7.0. 1.5.2 技术 1.java的基础编程 Java是一种完全面向对象且跨平台运行的程序设计语言。Java 技术具有面向对象的特性、高效性、平台移植性、简单性和安全性,广泛地应用于个人电脑(PC)、数据库中心、游戏控制台、超级计算机、移动电话和互联网,同时拥有全球最大的专业开发社群。Java的特点:面向对象(纯的面向对象的语言),平台无关性(不生成可执行文件,生成中间字节码文件,只要有虚拟机,在任何平台都可以解释并执行该字节码文件,也就是平台无关性),简单性(取消了c++语言中的一些复杂的特性,主要有运算符过载和虚拟基础类),健壮性(取消了指针),多线程(强大的多线程功能,使程序有更好的交互性和实时性)。 2.JDBC技术 有了JDBC,向各种关系数据发送SQL语句就是一件很容易的事。换言之,有了JDBC API,就不必为访问Sybase数据库专门写一个程序,为访问Oracle 5 码农毕业设计下载网:www.manong365.com 数据库又专门写一个程序,或为访问Informix数据库又编写另一个程序等等,程序员只需用JDBC API写一个程序就够了,它可向相应数据库发送SQL调用。同时,将Java语言和JDBC结合起来使程序员不必为不同的平台编写不同的应用程序,只须写一遍程序就可以让它在任何平台上运行,这也是Java语言“编写一次,处处运行”的优势。Java数据库连接体系结构是用于Java应用程序连接数据库的标准方法。JDBC对Java程序员而言是API,对实现与数据库连接的服务提供商而言是接口模型。作为API,JDBC为程序开发提供标准的接口,并为数据库厂商及第三方中间件厂商实现与数据库的连接提供了标准方法。JDBC使用已有的SQL标准并支持与其它数据库连接标准,如ODBC之间的桥接。JDBC实现了这些需要面向标准的目标并且具有简单的、严格类型定义的且高性能实现的接口。Java 具有稳固的、安全的、便于使用的、便于理解的和可以从网络上自动下载等特性,是编写数据库应用程序的杰出语言。所需要的只是 Java应用程序与各种不同数据库之间进行关联的方法。 JDBC 的作用就是这些。JDBC 扩展了 Java 的大部分功能。例如,用Java 和JDBC API可以发布任何含有applet的网页,而这些applet使用的信息可能来源于远程数据库。在企业也可以使用JDBC,通过 Intranet 将所有职员连接到一个或多个内部数据库中。随着越来越多的程序员开始使用Java 语言进行编程,对于从Java中可以方便的访问数据库要求也在逐渐增加。 MIS管理员们大部分都喜欢使用Java 和JDBC的结合,因为它使信息传播变得更容易和更快捷。企业也可以使用它们已经安装好的数据库,并能方便地存取信息,即使这些信息储存在不同数据库上。由于新程序的开发期很短,所以安装过程和版本控制将大为简化。程序员可只编写一遍应用程序或只更新一次,然后将它放到服务器上,然后所有人就可得到最新版本的应用程序。对于商务上的销售信息服务,Java 和JDBC可为外部客户提供获取信息更新的便捷方法。 JDBC是一个接口,它可以用于直接调用SQL命令。在这方面它的功能是很庞大的,比其它的数据库连接API更方便使用,一种基础的接口被设计出来,在JDBC之上也可以建立高级接口。在JDBC上建立的高级接口是一个对用户友好的接口,它使用的是一种容易理解和方便的API,该API在系统后被转换为诸如JDBC 这样的低级接口。在关系数据库的"对象/关系"关联中,表中的每行对象对应于类的一个实例,而每列的数值(对象的属性值)对应该实例的一个属性。于是,程序员基本上直接对Java 对象进行操作;存取数据所需的SQL语句调用将 6 码农毕业设计下载网:www.manong365.com 在"掩盖下"生成。此外还可以提供更复杂的关联,例如将多个表中的行结合在一个类中。人们对 JDBC 的兴趣逐渐增长,大部分开发人员一直在使用基于JDBC的一些工具,使得程序的编写更加容易。程序员也一直在编写界面使最终用户对数据库的访问变成简单的应用程序。选定任务后,应用程序将给出提示及空白以方便填写执行选定任务所需的信息。所需信息输入应用程序将会自动调用所需的SQL命令。在这样一种程序的协助下,即使用户根本不懂 SQL的语法,也可以执行数据库任务。 3.hibernate框架技术 Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate [4]可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。 Hibernate的核心接口一共有5个,分别为:Session、SessionFactory、Transaction、Query和Configuration。这5个核心接口在任何开发中都会用到。通过这些接口,不仅可以对持久化对象进行存取,还能够进行事务控制。下面对这五个核心接口分别加以介绍。 (1) Session接口 Session接口负责执行被持久化对象的CRUD操作(CRUD的任务是完成与数据库的交流,包含了很多常见的SQL语句。)。但需要注意的是Session对象是非线程安全的。同时,Hibernate的session不同于JSP应用中的HttpSession。这里当使用session这个术语时,其实指的是Hibernate中的session,而以后会将HttpSession对象称为用户session。 (2) SessionFactory接口 SessionFactory接口负责初始化Hibernate。它充当数据存储源的代理,并负责创建Session对象。这里用到了工厂模式。需要注意的是SessionFactory并不是轻量级的,因为一般情况下,一个项目通常只需要一个SessionFactory就够,当需要操作多个数据库时,可以为每个数据库指定一个SessionFactory。 (3)Configuration接口 Configuration接口负责配置并启动Hibernate,创建SessionFactory对象。在Hibernate的启动的过程中,Configuration类的实例首先定位映射文档位置、读取 7 码农毕业设计下载网:www.manong365.com 配置,然后创建SessionFactory对象。 (4)Transaction接口 Transaction接口负责事务相关的操作。开发人员可以设计自己编写的底层事务处理代码。 (5) Query和Criteria接口 Query和Criteria接口负责执行各种数据库查询。它可以使用HQL语言或SQL语句两种表达方式。 Hibernate总共提供两级Cache,第一级别是Session级别的缓存,属于事务范围的缓存。这一级别的缓存都由hibernate管理的,一般情况下不需要进行干预来进行管理;第二级别的缓存是SessionFactory级别的缓存,它是属于进程范围(群集范围)的缓存。这一级别的缓存可以进行配置和更改,并且可以进行动态加载和卸载。 Hibernate为查询结果提供了一个查询缓存,就相当于一个容器,来储存查询结果,它依赖于第二级缓存。 Hibernate对象关系映射提供了延迟的和非延迟的对象初始化。非延迟加载在读取一个对象的时候会将和这个对象有管理的其他对象一起读出来。这有时会导致成百的select语句在读取对象的时候执行。这个问题有时出现在使用双向关系的时候,经常导致整个数据库在初始化的阶段都被读出来了。你可以不厌其烦地检查每一个对象和其他对象的关系,到最后,我们可能会因此失去了本想在ORM工具中获得的便捷方法。一个最有效的解决方法是使用Hibernate提供的延迟加载机制。这种初始化方法只在一个对象调用它的一对多或多对多关系时才将关系对象读出来。这个过程对开发者来说是完全透明的,而且只进行了很少的数据库操作请求,因此会得到比较显著的性能提高。这项技术的一个最明显的缺陷是延迟加载技术要求一个Hibernate会话要在对象使用的时候一直打开。这会使得通过使用DAO模式将持久层抽象出来时的一个主要问题。为了将持久化机制抽象出来,所有的数据库逻辑,包括打开或关闭会话,都不能在应用层中体现。最常见的是,一些实现了简单接口的DAO类将数据库完全封装起来。一种快速但是不灵活的解决方法是放弃DAO模式,将数据库连接添加到应用层中来。这可能对一些小的应用程序有效,但是在大的系统中,这是一个严重的设计缺陷,妨碍了系统的可扩展性。 幸运的是,Spring框架为Hibernate延迟加载和DAO模式的整合提供了一种便捷的解决方法。以一个应用为例,Spring提供了Open Session In View Filter、 8 码农毕业设计下载网:www.manong365.com Open Session In View Interceptor。我们可以随便选择一个类来实现一样的功能。两种方法唯一的不同就在于interceptor在Spring容器中运行并被配置在web的上下文,而Filter在Spring之前运行并被配置在web.xml中。不管用哪个,他们都在请求中,将当前会话与当前线程绑定时打开Hibernate会话。只要已绑定到线程,这个打开了的Hibernate会话可以在DAO类中透明地使用。这个会话会为延迟加载数据库中值对象的视图始终保持打开状态。一旦这个逻辑视图完成了,Hibernate会话会在Filter的doFilter方法或者Interceptor的postHandle方法中被关闭。 4.spring技术 Spring是一个框架,一个开源框架。Spring是在2003 年兴起的一个轻量级的Java开发框架,由Rod Johnson 在Expert One-On-One J2EE Development and Design中阐述的部分理念和原型发展而来。它是为解决企业应用开发的复杂性和麻烦性而创建的。框架的主要优势之一是框架的分层架构,分层架构允许使用者进行选择,使用哪一个组件,同时为J2EE应用程序的开发提供集成的框架。Spring使用基本的JavaBean来完成之前只能由EJB完成的事情。Spring的用途不仅仅局限于服务器端的开发。从简单性、可测试性和耦合度的角度而言,Java应用都可以从Spring来获取。Spring技术的核心是控制反转技术(IoC)和面向切面技(AOP)。简单来说,Spring是一个分层的JavaSE/EEfull-stack(一站式)轻量级开源框架。 轻量——从大小与开销两方面而言Spring都是轻量的。完整的Spring框架可以在一个大小只有1MB多的JAR文件里发布。并且Spring所需的处理开销也是微不足道的。此外,Spring是非侵入式的:典型地,Spring应用中的对象不依赖于Spring的特定类。 控制反转——Spring通过一种称作控制反转(IoC)的技术促进了低耦合。当应用了IoC,一个对象依赖的其它对象会通过被动的方式传递进来,而不是这个对象自己创建或者查找依赖对象。你可以认为IoC与JNDI相反——不是对象从容器中查找依赖,而是容器在对象初始化时不等对象请求就主动将依赖传递给它。 面向切面——Spring提供了面向切面编程的丰富支持,允许通过分离应用的业务逻辑与系统级服务(例如审计(auditing)和事务(transaction)管理)进行 9 码农毕业设计下载网:www.manong365.com 内聚性的开发。应用对象只实现它们应该做的——完成业务逻辑——仅此而已。它们并不负责(甚至是意识)其它的系统级关注点,例如日志或事务支持。 容器——Spring包含并管理应用对象的配置和生命周期,在这个意义上它是一种容器,你可以配置你的每个bean如何被创建——基于一个可配置原型(prototype),你的bean可以创建一个单独的实例或者每次需要时都生成一个新的实例——以及它们是如何相互关联的。然而,Spring不应该被混同于传统的重量级的EJB容器,它们经常是庞大与笨重的,难以使用。 框架——Spring可以将简单的组件配置、组合成为复杂的应用。在Spring中,应用对象被声明式地组合,典型地是在一个XML文件里。Spring也提供了很多基础功能(事务管理、持久化框架集成等等),将应用逻辑的开发留给了你。 MVC——Spring的作用是整合,但不仅仅限于整合,Spring 框架可以被看做是一个企业解决方案级别的框架。客户端发送请求,服务器控制器(由DispatcherServlet实现的)完成请求的转发,控制器调用一个用于映射的类HandlerMapping,该类用于将请求映射到对应的处理器来处理请求。HandlerMapping 将请求映射到对应的处理器Controller(相当于Action)在Spring 当中如果写一些处理器组件,一般实现Controller 接口,在Controller 中就可以调用一些Service 或DAO 来进行数据操作 ModelAndView 用于存放从DAO 中取出的数据,还可以存放响应视图的一些数据。 如果想将处理结果返回给用户,那么在Spring 框架中还提供一个视图组件ViewResolver,该组件根据Controller 返回的标示,找到对应的视图,将响应response 返回给用户。 所有Spring的这些特征使你能够编写更干净、更可管理、并且更易于测试的代码。它们也为Spring中的各种模块提供了基础支持。 5.struts技术 采用Struts能开发出基于MVC(Model-View-Controller)设计模式的应用构架,用于快速开发Java Web应用。Struts实现的重点在C(Controller),包括ActionServlet/RequestProcessor和我们定制的Action,也为V(View)提供了一系列定制标签(Custom Tag)。但Struts几乎没有涉及M(Model),所以Struts可以采用JAVA实现的任何形式的商业逻辑。目前为止,有Struts1和Struts2,用户可以根据自己的需求进行选择。 它的功能:一是包含一个controller servlet组件,能将用户的请求发送到相应的Action对象中。二是JSP自由tag库,并且在controller servlet中提供相应 10 码农毕业设计下载网:www.manong365.com 的关联支持,帮助开发员创建交互式的表单应用。三是提供一系列的实用对象:XML语句的处理、通过Java reflection APIs自动处理JavaBeans的属性、国际化提示和消息。 MVC(Model/View/Controller)模式是在国外使用比较多的一种设计模式,好像最早是在Smaltalk中出现。MVC包括三类对象:Model(应用对象),View(它在屏幕上的表示),Controller(定义用户界面对用户输入的响应方式)。 11 码农毕业设计下载网:www.manong365.com 2 需求分析 2.1 需求分析的任务 确定对系统的综合要求。分析系统的数据要求,导出系统的逻辑模型,修正系统的开发计划。软件需求包括三个层次:业务需求分析、用户需求分析和功能需求分析(也包括非功能需求)。 1.业务需求(business requirement)反映了组织机构或客户对系统、产品高标准的目标要求,它们在项目视图与范围文档中予以说明;2.用户需求(user requirement) 文档描述了用户使用产品必须要完成的任务,这在使用实例(usecase)文档或方案脚本说明中予以说明;3.功能需求(functional requirement) 定义了开发人员必须实现的软件功能,使得用户能完成他们的任务,从而满足了业务需求。 软件系统的开发中最困难的部分就是准确说明要开发什么。最困难的概念性工作是要编写出详细的技术需求,包括所有的面向用户、面向机器和面向其它软件系统的接口。如果需求分析做错,这将会是给系统带来极大损害的一部分,并且以后再对它进行修改也极为困难。由于国内产品的复杂和庞大,一家企业可能有几个系统并行运行,它们之间的接口是系统开发人员觉得最难的问题。对于商业最终用户的应用程序,企业信息系统和软件系统作为一个系统的一部分的产品是很明显的。但是对于我们这些开发人员来说,并没有编写出客户认可的需求文档,我们如何知道项目于何时结束,而如果我们不知道对客户来说什么是重要的,那我们又怎样才能使客户感到满意,所以说需求分析是很重要的。 然而,即便并非出于商业目的的软件需求也是必须要有的。例如库、组件和工具这些供开发小组内部使用的软件。当然你可能偶尔不需要文档说明就能与其他人意见一致,但更常见的是出现重复返工这种后果,由于重新编制代码的代价远远超过重写一份需求文档的代价,这些严重教训在国内的软件开发者身上发生的很多。 2.2 系统的业务流程分析 2.2.1 前台业务流程分析 12 码农毕业设计下载网:www.manong365.com 网上酒店订房系统的前台业务主要是实现用户(客户)进入网站首页进行注册会员,登录该系统,然后进行查询相关业务,预订酒店,付款,还可以退房。 前台业务流程如图2-1所示 图2-1 前台业务流程图 2.2.2 后台业务流程分析 预订客房管理(可以修改,删除,添加预订客房的信息),订单管理(可以执行订单),会员管理(可以查看会员的消费情况,也可以冻结和解冻会员),公告管理(可以添加,删除,修改公告信息)和退出后台。 后台业务流程如图2-2所示 图 2-2 后台业务流程图 13 码农毕业设计下载网:www.manong365.com 2.3 功能需求 酒店网上订房系统主要实现的功能有:非会员可以进行查询酒店的基本情况和注册会员;会员可以查询,登录,预订房间,支付款项,退房;酒店管理人员可以进入该系统的后台进行查询酒店情况,查询订单情况,管理会员,管理房间,管理公告信息。 主要的功能: 1.注册功能:登录该系统但是非会员的客户,可以进行注册个人信息进 行酒店预订,完成一些基本信息的录入可以成为会员; 2.登录功能:用户名和密码填写正确就可以进行登录该系统; 3.酒店查询:可以查询最新酒店预订情况,特价酒店,公告信息,订单 情况; 4.订房功能:可以点击预订,就可以完成订房功能,接下来可以支付; 5.退房功能:如果对于预订的房间不满意,可以进行退房功能; 6.后台:管理员进入该系统的后台管理(用户名和密码都填写正确才可 以登录该系统),可以进行会员管理,比如可以冻结和解冻,可以修改酒店 信息,也可以修改最新公告。 2.4 性能需求 酒店网上订房系统是一个网上预订酒店的系统,该系统应该实现预订酒店的一般功能,还应该做到界面友好,方便使用,维护简单,避免不必要的复杂操作。软件系统本身对计算机硬件平台和操作系统平台的要求就不高。 14 码农毕业设计下载网:www.manong365.com 3 系统设计 3.1 概要设计 概要设计是一个设计师根据用户交互过程和用户需求来形成交互框架和视觉框架的过程,其结果往往以反映交互控件布置、界面元素分组以及界面整体板式的页面框架图的形式来呈现。这是一个在用户研究和设计之间架起桥梁,使用户研究和设计无缝结合,将对用户目标与需求转换成具体界面设计解决方案的重要阶段。 概要设计的主要任务是把从需求分析得到的用例图转换为软件结构图和数据结构图。而设计软件结构的具体任务是:将一个复杂的软件系统按功能进行模块的划分、建立模块层次结构图、调用的关系、确定模块间接口及人机界面等。数据结构的设计包括数据特征描述、确定数据结构特性、以及数据库设计。概要设计建立的是目标系统的逻辑模型,与计算机本身无关。 3.2 功能模块设计 层次模块结构是将系统划分为若干个子系统,子系统可以再划分为若干个模块。模块是指具备有输入输出功能、逻辑结构功能、运行程序和内部数据四种属性的一组程序。在结构化系统的设计中,模块一般都是按功能划分的,通常称为功能模块。合理有效的功能模块划分能够极大限度地减少重复劳动、提高开发工作的效率并增大系统的可维护性。 将系统分为两大模块,即前台模块和后台模块。 3.2.1 前台模块功能设计 前台模块主要是为客户提供可以看见的功能,包括非会员客户可以通过前台模块查询最近酒店的情况,也可以会员;会员就可以直接登录该系统进行查询,预订,支付,退房等业务。将前台模块再细分为用户管理模块、订单查询模块、预订专区模块、修改个人资料模块、酒店公告模块。这些模块的名称基本概括了它们的功能。下面详细说明一下这些功能模块的设计: 1.用户管理模块: 为了方便于网站的管理,必须由一套完整的用户管理体系。该网站用户管理 15 码农毕业设计下载网:www.manong365.com 模块主要实现用户的注册、登录、修改密码3方面功能。 非会员用户可以注册个人信息,必须遵循信息要求,成功注册后就成为会员;成为会员后,就可以登录该系统进行酒店订房业务;也可以修改个人信息,最主要的是可以修改个人密码。 2.预订专区模块: 在酒店网上订房系统中,没有办法使用真正的预订工具,因此,通常都会采用一种被称为“预订专区”的技术来模拟现实生活。该系统所选酒店须通过预订专区进行暂存,然后生产订单。这种技术使用起来十分方便,不但可以随时添加、查看、修改、清空预订专区中的内容,还可以随时去支付预定结款。 3.订单管理模块: 会员登录后,可以进行预订酒店的功能,预订后会产生订单,用户提交订单后,通过产生的订单号查询订单信息及执行状态。只需要根据用户录入的订单号在数据表中查询处对应的预订信息即可。 4.个人资料管理模块: 会员登录后,可以修改自己的信息。会员资料修改时为会员更改个人信息所提供的窗口,为了保护会员信息部受非法侵害,会员只有登录网页后才有权限修改个人资料。 5.酒店公告管理模块: 酒店公告是一个商务网站中不可缺少的组成部分,它可以增进用户与网站之间的交流。在现实网络开发中存在着各种各样的酒店公告,但它们都由基于浏览酒店公告及添加酒店公告2部分组成。 这样,子模块各自的内容基本设计好。下面可以设计如何将这些模块组织在一起,构成一个结构比较合理的前台界面了。除了在主页面中建立面向其他模块的分类外,还要在其他模块中建立返回主页面的分类。各个模块间应该互相分类起来。 3.2.2 后台管理模块设计 后台管理模块的功能是对站内的资源进行管理和维护。以后台的业务流程分析和前台各个模块的设计为基础、根据用户的需求分析来确定后台管理模块应具有的功能。后台管理模块的各个子功能模块如下: 1.管理员身份验证模块: 16 码农毕业设计下载网:www.manong365.com 为合法用户提供一个后台入口。该模块的功能是对管理员身份进行能够验证。用户输入登录ID和密码后,系统将判断登录ID及密码的有效性,如果通过验证则状态后台主页,反之则提示错误。进入后台才能进行接下来的一系列操作。 2.酒店管理模块: 向酒店表插入前台首页展示的酒店信息,也就是添加酒店信息的功能。 3.处理订单模块: 网站管理者对会员订单的执行和编辑状态。 4.用户信息管理模块: 查询注册所有会员,对一些非法或失信用户进行删除操作,也就是可以进行 冻结和解冻的操作。 5.公告信息管理模块: 酒店网上订房系统向用户发布最新公告信息,用户可以看到这些信息, 不算是会员还是非会员都可以看到。 6.分类信息管理模块: 管理员向前台首页添加酒店公告信息,包括大分类和小分类模块。 3.3 数据库设计 数据库是数据库应用程序的重要组成部分。一个系统的设计是离不开数据库的,没有数据库就意味着该系统的设计没有任何意义,所以说一个设计结构合理的数据库对于应用程序的开发效率和程序的性能都是非常重要的。 数据库设计的原则和规范性: 1.数据库设计最起码要占用整个项目开发的40%以上的时间 数据库是需求的直观反应和表现,因此设计时必须要完全符合用户的需求,要通过多次与用户沟通交流来细化需求,将需求中的要求和每一次的变化都一一体现在数据库设计中。如果需求不明确,就要分析其中的不确定因素,设计表格时要事先预留出可改变的字段。 2.数据库设计不应该仅仅停留于页面demo的表面 页面内容设计所需要的字段,在数据库的设计中只是一小部分,还有系统运转设计、模块交互设计、中转数据设计和表之间的联系等所需要的所有字段,因此数据库设计不是简单的基本数据存储,还应该有逻辑数据存储。 3.数据库设计完成后,项目的一大部分设计开发就已经基本完成了。 17 码农毕业设计下载网:www.manong365.com 每个字段的设计都有必要的意义的,你在设计每一个字段的同时,就应该已经清楚程序应该如何去运用这些字段,多张表(复杂)的联系在程序中是如何体现的。换句话说,你完成数据库设计后,程序中所有的实现思路和方式在你的脑海中就已经考虑过了。如果达不到这种程度,当进入编码阶段后,就应该发现要运用的技术或实现的方式数据库就无法支持,这时再改动数据库就会很麻烦,会造成一系列不可预测的问题。 4.数据库设计时应该要考虑到效率和优化问题 一开始就要分析哪些表会存储较多的数据,对于数据量较大的表的设计应该都是粗粒度的,也会应该多余一些必要的字段,要达到尽量用最少的表、最弱的表关系去存储大量的数据。并且在设计表时,一般都会对主键建立聚集索引,含有大数据量的表更是要建立索引为了提供查询性能。对于含有计算、数据交互、统计这类需求时,还需要考虑是否有必要采用存储的过程。 5.添加必要(冗余)字段 像“创建的时间”、“修改的时间”、“备注”、“操作用户IP”和一些用于其他需求的字段等在每张表中必须都要有,不仅仅只有系统中用到的数据才会存到数据库中,一些冗余字段是为了方便日后维护、分析、拓展而添加的,这点是很重要的,我们便就可以根据修改时间和操作用户IP来查找定位。 6.设计合理表的关联 若多张表之间的关系复杂,建议采用第三张映射表来关联进行维护两张表之间的关系,以降低表之间的耦合度。若多张表涉及到大量的数据问题,表结构尽量简单,关联也要尽可能避免。 7.设计表时如果不加主外键等约束性关联,系统编码阶段完成后再添加约束性关联,这样做的目的是有为了使团队并行开发,减少编码时所遇到的问题,表之间的关系是要靠程序来控制。编码完成后,再加关联并进行测试。 8.选择合理的主键生成方法 主键生成方法大致可分:int自动增长类型、手动增长类型(建立单独一张表来维护)、手动维护的类型(如userId)、字符串的类型(uuid、guid)。Int类型的优点是使用简单、效率高,但多表之间的数据合并时就容易出现问题,手动增长类型和字符串类型能很好地解决多表数据合并的问题,但同样也都有缺点:前者的缺点是增加了一次数据库访问,通过该访问来获取主键,并且又多维 18 码农毕业设计下载网:www.manong365.com 护一张主键表,增加了数据库的复杂度;而后者是非常占用存储空间,且表关联查询的效率低下,索引的效率也不高,跟int类型正好相反。 数据库的设计过程大致如下: 1.需求分析阶段:需求收集和分析数据,通过数据得到数据字典和数据流图。 2.概念结构设计阶段:对用户的需求综合、归纳与抽象,形成概念模型,然后用E-R图表示。 3.逻辑结构设计阶段:将概念结构转换为DBMS所支持的某一个数据模型。 4.数据库物理设计阶段:为逻辑数据模型选取一个最适合运行程序的物理结构。 5.数据库实施阶段:建立数据库,编写与调试应用程序,组织数据入库,程序试运行。 6.数据库运行和维护阶段:对数据库进行评价、调整与修改。 在设计好前台与后台的功能模块后,就开始进行数据库的设计了。根据系统的分析,数据库是整个网站的核心。从前台显示的信息到后台操作的对象,都是围绕数据库展开的。 3.3.1 E-R图 E-R图是一种概念模型。概念模型实际上是从现实世界到机器世界的一个中间层次。概念模型用于信息世界的建模,是显示现实世界到信息世界的第一层抽象,数据库设计人员进行数据库设计的一个有利工具,因此概念模型一方面应该具有较强的语义表达能力,能够方便、直接地表达各种语义知识,另一方面它还应该是简单的、清晰的并且易于用户理解的[7]。以下是各个数据表的实体图。 1.酒店信息表tb_goods的实体图 酒店名称 酒店编号 酒店价格 酒店介绍 酒店类酒店信息 型 图片路径 发布时间 是否推荐 图3-1 酒店信息表tb_goods的实体图 19 码农毕业设计下载网:www.manong365.com 2.用户信息表tb_member的实体图 该表格的主键是用户ID,该表格还包括用户名,真实姓名,用户密码,用户地址,密码问题和答案,注册时间,联系电话,电子邮箱。 用户名 用户ID 真实姓名 用户密码 电子邮箱 用户信息 用户地址 联系电话 密码问题 注册时间 答案 图3-2 用户信息表tb_member的实体图 3.公告信息表tb_BBS的实体图 公告信息 主题ID 作者姓名 发布时间 公告标题 公告内容 图3-3 公告信息表tb_BBS的实体图 4.订单生成表tb_order的实体图 订单生成表格在该系统中是很重要的,主要的作用就是记录订单情况,然后 系统管理人员根据订单情况处理订单。该表格的主键是订单编号,还包括用户名, 真实姓名,订购日期,邮编,运送方式,订单核对,联系方式,付款方式等。 用户名 订单编号 真实姓名 定购日期 电子邮箱 地址 订单生成信息 邮编 付款方式 运送方式 联系方式 订单核对 其他 图3-4 订单生成表tb_order的实体图 20 码农毕业设计下载网:www.manong365.com 5.订单酒店表tb_order_detail的实体图 订单酒店表的主键是订单号,主要是根据订单号可以查询酒店的名称,价格,数量,也可以根据订单号进行统计。该表的作用是要统计订单酒店的信息,包括会员的订单号,所预订酒店的名称(可以帮助会员定位酒店),酒店价格,酒店数量,可以根据订单号来统计该会员所预定的酒店个数。 订单酒店信息 订单号 统计 酒店名称 酒店数量 酒店价格 图3-5 订单酒店表tb_order_detail的实体图 6.超级分类表tb_superType 超级分类表主要包括分类名称,分类详情,发布时间。分类名称包括大分类信息管理,小分类信息管理,添加预订客房信息。大分类信息指的是客房的类型,也就是什么级别的房间;小分类信息指的是房间的类别,也就是几人间;也可以修改预订客房的信息。 7.管理员信息表tb_manager 管理员指的是能进入后台的工作人员,需要用户名和密码,该表中的信息包括用户名和密码。 管理员信息 管理员ID 管理员密码 管理员名 图3-6 管理员信息表tb_manager的实体图 8.大分类信息表tb_orderType 大分类信息指的是酒店的类型,该表包括分类ID,分类名称以及分类信息。 酒店网上订房系统主要包括两部分用户:前台的用户和后台的用户。前台的用户指的是注册成为会员,然后可以预订酒店,最后提交订单,支付;后台的用户指的是系统管理员,可以登录进后台,修改用户信息,发布公告。这些是该系统用到的所有实体图。 21 码农毕业设计下载网:www.manong365.com 3.3.2 基本表设计 表的设计是这次设计的一个核心内容。根据前面对网站前台与后台功能模块的分析和对数据库中实体关系的设计,可以看到网站中所用到的数据信息基本包括:酒店信息、用户信息、公告信息、订单信息、超级分类信息、管理员信息、公告信息等。下面是为数据库设计的表: 1.酒店信息表tb_goods 酒店信息表tb_goods用来保存酒店的基础信息。 ID:数据类型是int整型的,长度是4,不允许为空,是主键,意思是酒店编号; name:数据类型是varchar,长度是50,不允许为空,意思是酒店名称; price:数据类型是bigint,长度是8,不允许为空,意思是酒店价格; Goodstyle:数据库类型是varchar,长度是20,不允许为空,意思是酒店类型; Introduce:数据类型是text,长度是16,不允许为空,意思是酒店描述; Picture:数据类型是varchar,长度是50,不允许为空,意思是图片的路径; Goodsif:数据类型是int,长度是4,不允许为空,意思是是否推荐; Intime:数据类型是datetime,长度是8,不允许为空,意思是发布时间。 表3-1 tb_goods的结构 是否为主键 字段描述 字段名称 数据类型 长度 是否允许空 是 酒店编号 ID Int 4 否 否 酒店名称 name Varchar 50 否 否 酒店价格 price Bigint 8 否 否 酒店类型 Goodstype Varchar 20 否 否 酒店介绍 introduce Text 16 否 否 图片路径 picture Varchar 50 否 否 是否推荐 Goodsif Int 4 否 否 发布时间 INTime Datetime 8 否 2.用户信息表tb_member 用户信息表tb_member用来保存用户信息。 22 码农毕业设计下载网:www.manong365.com Userid:数据类型是int,长度是4,不允许为空,是主键,用户id; Username:数据类型是varchar,长度是50,不允许为空,不是主键,用户名; Rname:数据类型是varchar,长度是40,不允许为空,不是主键,意思是用户的真实姓名; Userpass:数据类型是varchar,长度是16,不允许为空,不是主键,意思是用户密码; Email:数据类型是varchar,长度是50,不允许为空,不是主键,意思是email; Address:数据类型是varchar,长度是80,不允许为空,不是主键,意思是用户的地址; Photo:数据类型是varchar,长度30,不允许为空,不是主键,意思是联系电话; Result:数据类型是varchar,长度是50,不允许为空,不是主键,意思是答案; Datetime:数据类型是datetime,长度是8,不允许为空,不是主键,意思是注册时间。 表3-2 tb_member的结构 是否为主键 字段描述 字段名称 数据类型 长度 是否允许空 是 用户ID Userid Int 4 否 否 用户名 Username Varchar 50 否 否 真实姓名 Rname Varchar 40 否 否 用户密码 Userpass Varchar 16 否 否 Email Email Varchar 50 否 否 用户地址 Address Varchar 80 否 否 联系电话 Photo Varchar 30 否 Question Varchar 50 否 否 密码问题 Result Varchar 50 否 否 答案 否 注册时间 Dattime Datetime 8 否 23 码农毕业设计下载网:www.manong365.com 3.公告信息表tb_BBS 公告信息表tb_BBS用来记录公告信息。 Textid:数据类型是int,长度是4,不允许为空,是主键,意思是主题id; Username:数据类型是varchar,长度是20,不允许为空,不是主键,意思是作者姓名; Email:数据类型是varchar,长度是50,不允许为空,不是主键,意思是email; Datetime:数据类型是datetime,长度是8,不允许为空,不是主键,意思是发布时间; Textname:数据类型是varchar,长度是50,不允许为空,不是主键,意思是主题名称; Textgut:数据类型是text,长度是16,不允许为空,不是主键,意思是公告内容。 表3-3 tb_BBS的结构 是否为主键 字段描述 字段名称 数据类型 长度 是否允许空 是 主题ID Textid Int 4 否 否 作者姓名 Username Varchar 20 否 否 Email Email Varchar 50 否 否 发布时间 Dattime Datetime 8 否 否 主题名称 Textname Varchar 50 否 否 公告内容 Textgut Text 16 否 4.订单生成表tb_order 订单生成表tb_order用来记录新生成的订单。 Sub:数据类型是varchar,长度是50,不允许为空,是主键,意思是订单编号; Username:数据类型是varchar,长度是20,不允许为空,不是主键,意思是用户名; Rname:数据类型是varchar,长度是50,不允许为空,不是主键,意思是真实姓名; Spdate:数据类型是datetime,长度是8,不允许为空,不是主键,意思是 24 码农毕业设计下载网:www.manong365.com 预定日期; Email:数据类型是varchar,长度是50,不允许为空,不是主键,意思是email; Address:数据类型是varchar,长度是80,不允许为空,不是主键,意思是地址; Post:数据类型是varchar,长度是50,不允许为空,不是主键,意思是邮编; Payment:数据类型是char,长度是12,不允许为空,不是主键,意思是付款方式; Tel:数据类型是varchar,长度是30,不允许为空,不是主键,意思是联系方式; Spif:数据类型是int,长度是4,不允许为空,不是主键,意思是订单核对; 表3-4 tb_order的结构 是否为主键 字段描述 字段名称 数据类型 长度 是否允许空 是 订单编号 Sub Varchar 50 否 否 用户名 Username Varchar 20 否 Rname Varchar 50 否 否 真实姓名 Spdate Datetime 8 否 否 预订日期 否 Email Email Varchar 50 否 否 地址 Address Varchar 80 否 否 邮编 Post Varchar 50 否 否 付款方式 Payment Char 12 否 tel Varchar 30 否 否 联系方式 Carry Varchar 30 否 否 运送方式 Spif Int 4 否 否 订单核对 Other Text 16 否 否 其它 5.订单酒店表tb_order_detail 订单酒店表tb_order_detail用来记录某一订单中所定购的酒店的详细信息。 Subid:数据类型是varchar,长度是50,不允许为空,不是主键,意思是订 25 码农毕业设计下载网:www.manong365.com 单id; Goodsname:数据类型是varchar,长度是50,不允许为空,不是主键,意思是酒店名称; Price:数据类型是bigint,长度是8,不允许为空,不是主键,意思是酒店价格; Wsum:数据类型是bigint,长度是8,不是主键,意思是酒店数量; Wcount:数据类型是bigint,长度是8,不是主键,意思是统计数量。 表3-5 tb_order_detail的结构 是否为主键 字段描述 字段名称 数据类型 长度 是否允许空 否 订单id Subid Varchar 50 否 否 酒店名称 Goodsname Varchar 50 否 Price Bigint 8 否 否 酒店价格 Wsum Bigint 8 否 否 酒店数量 否 统计 Wcount Bigint 8 否 6.超级分类表tb_superTyp 超级分类表tb_superTyp主要用于记录调价的超级分类信息。 Lname:数据类型是varchar,长度是50,不允许为空,不是主键,意思是分类名; Ldatetime:数据类型是datetime,长度是8,不允许为空,不是主键,意思是发布时间。 表3-6 tb_superTyp的结构 是否为主键 字段描述 字段名称 数据类型 长度 是否允许空 否 分类名 Lname Varchar 50 否 否 分类内容 Content Varchar 50 否 否 发布时间 Ldatetime Datetime 8 否 7.管理员信息表tb_manager 管理员信息表tb_manager主要用于记录管理员的信息。 Id:数据类型是int,长度是4,不允许为空,不是主键,意思好似管理员id; 26 码农毕业设计下载网:www.manong365.com Manager:数据类型是varchar,长度是30,不允许为空,不是主键,意思是管理员名字; Pwd:数据类型是varchar,长度是16,不允许为空,不是主键,意思是管理员密码。 表3-7 tb_manager的结构 是否为主键 字段描述 字段名称 数据类型 长度 是否允许空 否 管理员ID Id Int 4 否 否 管理员名 manager Varchar 30 否 否 管理员密码 PWD Varchar 16 否 8.大分类信息表tb_superType 大分类信息表tb_superType主要用于记录后台调价的公共信息。 Content:数据类型是text,长度是16,不允许为空,不是主键,意思是分类内容; Datetime:数据类型是datetime,长度是8,不允许为空,不是主键,意思是添加时间。 表3-8 tb_superType的结构 是否为主键 字段描述 字段名称 数据类型 长度 是否允许空 否 分类内容 Content Text 16 否 否 添加时间 Dattime Datetime 8 否 继承HibernateDaoSupport代码,可以使用通过实现该接口中的方法来实现自己的功能: public class Dao extends HibernateDaoSupport { // 获取特价 public List getShowSaleGoodsList() { return getHibernateTemplate().find( "from TbGoods where sale=1 order by INTime desc"); } // 获取新品 public List getShowNewGoodsList() { return getHibernateTemplate().find( 27 码农毕业设计下载网:www.manong365.com "from TbGoods where newGoods=1 order by INTime desc"); } // 获取单个信息 public TbGoods getGoods(Long id) { return (TbGoods) getHibernateTemplate().get(TbGoods.class, id); } public List getGoodsByType(Integer type) { return getHibernateTemplate() .find("from VGoods where id.subId=" + type); } public List getGoodsByQuery(String query) { System.out.println(query+"\to"); return getHibernateTemplate().find(query); } // 获取用户 public TbMember getUser(String username, String pwd) { List list = null; TbMember user = null; list = getHibernateTemplate().find( "from TbMember where userName='" + username + "' and freeze=0"); if (list.size() > 0) { user = (TbMember) list.get(0); if (pwd != null && !user.getPassWord().equals(pwd)) { user = null; } } return user; } // 获取公告 public List getPlacard() { return getHibernateTemplate().find("from TbBbs order by INTime desc"); } // 获取指定公告 public TbBbs getPlacard(Integer id) { return (TbBbs) getHibernateTemplate().get(TbBbs.class, id); } public List getSellSort() { List list = getHibernateTemplate() .find( "select id.goodsId,id.goodsName from" + " VOrderDetail group by 28 码农毕业设计下载网:www.manong365.com id.goodsId,id.goodsName order by count(id.number) desc"); return list; } // 获取类别列表 public Map getTypeList() { Map model = new HashMap(); List types = getHibernateTemplate() .find( "select id.id,id.superType from VType group by id.id,id.superType"); Iterator iterator = types.iterator(); while (iterator.hasNext()) { Object[] type = (Object[]) iterator.next(); List subList = getHibernateTemplate().find( "from VType where id.id='" + type[0] + "'"); model.put(type[1], subList); } return model; } 29 码农毕业设计下载网:www.manong365.com 4 功能的实现 4.1 系统页面的实现 酒店网上订房系统在前三章已经完成了可行性分析,需求分析,总体设计,在这一章主要的任务就是完成该系统的功能模块的实现。 随着科技的高速发展,众多网页制作的应用软件应运而生。相对于传统的动态网页开发工具而言,由于继承了Java语言的许多优点,用JSP开发动态网站十分方便,开发效率较高。此外,JSP还具有强大的组件(Java Bean)支持功能,可以方便地实现组件复用,进一步提高了开发效率。 在整个系统的制作过程中,都是结合使用HTML语言来实现设计的。系统的页面设计决定了网站的风格, 制作好的网站不仅提供给营销商,更多的要供浏览者浏览。所以整个网站系统应注重的是:易导航性、易操作性和友好的交互界面。因此,网站的设计最好要简洁、明了、格调清新、实用、易于使用和维护。在页面的风格上应保持统一,这里采用CSS样式表将所有页面的字体、字号、颜色以及超分类的样式做统一定义。 4.2 前台页面的实现 前台功能模块分为用户管理模块、订单查询模块、预订专区模块、酒店公告模块,管理分类模块5个部分。前台首页主要有以下几个部分: 1.网站导航:主要用户显示网站的旗帜广告、各功能模块导航; 2.用户登录:用户在此注册、登录或修改密码; 3.酒店分类搜索:用户按酒店类别进行搜索显示; 4.预订排行榜:按照酒店的预订数量显示预订排行信息; 5.酒店展示区:按后台添加酒店的时间顺序展示酒店; 6.酒店公告:显示酒店公告信息; 7.后台登录入口:管理员可以通过该入口登录后台。 4.2.1 首页展示 首页运行结果如下图4-1 30 码农毕业设计下载网:www.manong365.com 图4-1 酒店网上订房系统首页 首页也就是该系统的主页面,在主页面上包括7部分: 1.网站导航:主要用户显示网站的旗帜广告、各功能模块导航; 用户登录:用户在此注册、登录或修改密码; 2. 3.酒店分类搜索:用户按酒店类别进行搜索显示; 4.预订排行榜:按照酒店的预订数量显示预订排行信息; 5.酒店展示区:按后台添加酒店的时间顺序展示酒店; 6.酒店公告:显示酒店公告信息; 7.后台登录入口:管理员可以通过该入口登录后台。 4.2.2 用户管理模块 1.用户注册 当用户第一次登录时首先要在网站上注册,成为会员用户才可以在网站上预订,注册页面必须填写一些用户的基本信息,如用户名、密码、联系电话等信息。要注意的是,在用户注册页面register.jsp中用户自定义JavaScript检验用户注册信息不允许为空。用户注册信息中的所有信息都不能为空,用户名不能重复,真实姓名应该填写正确,密码和确认密码应该一样;证件号码是很重要的,应该填写正确。只有用户注册成会员,才能进行在预订专区查询信息,预订客房,支付。 用户注册页面中包括用户名,真实姓名,密码,确认密码,所在城市,联系地址,邮政编码,证件号码,证件类别,联系电话,email。 31 码农毕业设计下载网:www.manong365.com 用户注册页面register.jsp如图4-2所示。 图4-2 会员注册页面 2.用户登录 用户登录窗口设置在首页上,主要用来接收用户录入的用户名及密码。单击“注册”按钮时,会提交到register.jsp页面执行;单击“登录”按钮时,系统将对输入的用户名和密码进行验证,如果数据表中用户名和密码存在就显示登陆成功,并返回首页,否则弹出错误提示信息。 用户登录界面包括会员名和密码,只有会员名和密码完全正确才能进入该系统。该用户登录界面还可以注册,注册的用户名不能重复,否则注册不成功; 用户登录的界面如图4-3所示。 图4-3 用户登录界面 在用户没有登录前,用户只能查看酒店基础信息,可以进行分类查询,可以查看公告,可以注册成会员,但是不能预订酒店,不能在预订专区进行查询和预订,也不能登录该系统。只有当该用户注册成会员后,就可以进行酒店订房,可以支付,也可以进行退房操作,之前支付的钱就可以按原途径返回。 3.修改信息 修改信息页面user/pass.htm如图4-4所示。 32 码农毕业设计下载网:www.manong365.com 登录该系统,还可以修改会员信息。用户名不可修改;真实姓名可以修改;只有记住原密码,才能修改密码;所在城市可以修改;联系地址可以修改;邮政编码可以修改;证件号码可以修改;证件类别可以修改;联系电话可以修改;email也可以修改。在这些信息修改后,确认保存就修改成功了。也可以重新填写,刚才填写的信息就没有保存,就会变成空白,继续重新填写。 在信息修改后,还可以查询信息是不是修改成功。尤其是修改密码以后,下次登录的时候,要填写新的密码,用户名是不可以修改的。 图 4-4 会员信息的修改 4.2.3 订单查询模块 用户提交订单后,通过产生的订单号查询订单信息及执行状态。用户在预订中心首页中单击“订单查询”超分类,就可以进入输入订单号页面,在页面的文本框中输入订单号并单击“提交”按钮,如果订单号输入无误,系统将根据用户录入的订单号在数据表中查询处对应的预订信息并转到订单查询显示页面将预订信息显示出来。 订单查询页面如下图4-5 图4-5 订单查询界面 33 码农毕业设计下载网:www.manong365.com 4.2.4 预订专区 预订专区模块中,主要包含以下几个功能,即:添加、查看预订专区、生成订单和清空预订专区。 1.添加预订专区 添加预订专区就是把用户选中的酒店暂时存放在预订专区中,当用户在前台首页中单击酒店展示区的“预订”按钮时,系统会将该酒店的详细信息展示在查看物品清单页面中。用户在单击物品清单页面下方的“放入预订专区”分类,便可以将该酒店放入预订专区中。 添加酒店的代码流程是从session中读取shop对象,如果为空则说明还没有进行预订或者已经清空了预订专区,需要新建预订专区对象;将酒店名称与预订专区列表中的酒店名称对比,如果已经存在,则把酒店数量加1。 在这段代码流程中,还使用了集合类型。集合类型在Java中又称为向量,是一元集合,可以加入重复数据,它的作用和数组相同,可以保存一系列数据,但集合类型也有它独特的优点,就是可以方便地对集合内的数据进行查找、增加、删除和修改等操作。 -6 生成订单如下图4 图4-6 生成订单 2.查看预订专区 为了方便用户随时查看预订情况,在网站的首页加入了查看预订专区的分类,通过它可以将用户所有选中的酒店信息放入预订专区中显示出来。在程序中使用了一组文本框记录用户预订的酒店数量,用户可以在文本框中输入想要预订的数量然购单击“修改”按钮。如果欲删除该酒店,可以在数量文本框里输入“0”,并需要单击“修改”按钮来更新预订专区中酒店的数量。 系统每次只会将1个酒店放入预订专区中,如果用户需要多个同种酒店,可以通过修改酒店信息右侧相应文本框的值来完成。操作完成后需要通过单击“修改”按钮来保存操作。 34 码农毕业设计下载网:www.manong365.com 查看预订专区如下图4-7 图4-7 查看预订专区 3.生成订单 生成订单时网上预订酒店预订的最终目的,前面所有功能的实现都是为最后生成一个用户满意的订单作基础,在此要生成一个可供用户随时查询的订单号,还要保存用户订单中所预订的酒店信息。当用户确认对预订专区不再改变以后,就可以到支付预定结帐并生成订单。结帐的流程为:从预订专区中读取酒店名称,酒店数量,酒店价格信息,生成一个唯一的订单号,同时也把用户注册的基本信息读取出来,形成一个完整的订单写入数据库。 在生成订单模块中主要使用了调出用户信息并生成唯一订单号,调出用户信息就是完全的对数据库进行操作,利用session对象把登录后的用户名保存起来,在订单生成时把保存的用户名从数据库的用户标中取出即可;生成唯一订单号方法有很多,只要确保订单号码的唯一性及方便用户记录以便于查询自己订单的执行状态即可。 4.清空预订专区 清空预订专区是指当用户订单生成后,倘若还想继续预订一定要清空预订专区再进行选购酒店,这样防止重复预订,其实清空预订专区实现起来非常简单,只需要将session中存储的shop对象清空即可。 4.3 后台页面的实现 后台功能只允许具有管理员权限的用户使用,它是实现前台功能的基础。后台包括管理员身份验证、添加酒店模块、订单信息管理模块、查询用户信息管理模块、添加分类模块、公告信息管理模块。后台首页主要有以下几个部分。 1.后台导航区:放置管理员可操作项目的分类; 2.操作区:显示所有后台导航的分类信息。 主要的功能有:添加酒店,添加公告,管理客户信息,管理订单。 35 码农毕业设计下载网:www.manong365.com 图 4-8 后台登陆界面 4.3.1 酒店管理 单击导航区中的“添加酒店”超分类,系统将打开添加酒店页面,该页面主要用于将酒店信息添加到数据库中,以提供前台首页酒店展示所需要的数据依据。用户单击“添加”按钮后添加酒店如图4-9所示。 添加预订客房信息中,该界面包括预订客房管理,会员管理,订单管理,公告管理,退出后台。在添加预订客房信息中,包括的信息有:所属大类,所属小类,预订客房的名称,图片文件。如图4-9所示 图4-9 添加酒店界面 添加预订客房信息中,该界面包括预订客房管理,会员管理,订单管理,公告管理,退出后台。在大分类信息管理界面中,包括添加大分类信息,可以删除,也可以全选删除,也可以反选(也就是全部都不选)。如图4-10所示 图4-10 大分类信息管理界面 36 码农毕业设计下载网:www.manong365.com 在小分类信息管理界面中,包括添加小分类信息,可以删除,可以选择性的删除,可以通过反选和全选。 4.3.2 公告管理 可以添加公告,可以删除公告,也可以修改公告。 公告管理界面中,显示了该系统中的所有公告,可以添加公告信息,删除公告信息,也可以选择性的删除。 图4-11 公告管理界面 在添加公告信息界面中,包括公告标题和公告内容,这两个内容都不能为空。保存后,在前台就能看见刚刚添加的公告信息。如图4-12所示 图4-12 添加公告界面 4.3.3 会员管理 查询用户信息模块用来完成对注册用户的浏览及删除功能。如果用户蓄意性注册或者在很长时间内没有订单产生,管理员就可以将该用户信息删除。单击导航区中的“查询用户信息”超分类进入用户信息页面,就可以看到用户信息。在这一部分的设计中,也使用了分页显示功能。对于一些失信用户只需要单击右侧 37 码农毕业设计下载网:www.manong365.com 的“删除”超分类,即可转到admin/deluser.jsp页中做删除处理。 可以冻结会员,冻结后,会员就不能登录到该系统,不能预订客房。 4.3.4 订单管理界面 用户在前台预订所产生的订单并不能立即执行,需要系统管理员在后台进行订单信息管理审核以确认它的执行性。用户单击导航区中的“订单信息管理”超分类进入用户订单处理页面,该页面上会显示近期所有没被处理的订单。用户订单处理页面显示的是用户基本信息,要想知道订单中所涉及的酒店,需要单击对应订单号的超分类打开酒店预订详单页面才行。 酒店预订详单主要通过提交的订单号从tb_order_detail表中查询处对应的酒店并显示在页面中,管理员审核后可通过复选框来设置订单是否执行。程序中利用admin/shop.jsp来完成这些功能。当选中“是/否”复选框时,系统会根据提交的订单号更新数据表,如果更新成功,则转到spif.jsp也执行。 订单查询界面如图4-13所示 图4-13 订单查询界面 38 码农毕业设计下载网:www.manong365.com 5 测试和运行 5.1 软件测试 5.1.1 软件测试的定义 软件测试是一种用来促进鉴定软件的正确性、完整性、安全性、可用性和质量的过程。换句话说,软件测试是一种对实际输出和预期输出进行审核或者比较的过程。软件测试的经典定义是:在事先规定的条件下对程序进行操作,作用是发现程序错误,衡量软件质量,并对该软件是否能满足设计要求进行评估的一个过程。软件测试是使用人工操作或者软件自动运行的方式来检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别的过程。它是帮助识别开发完成(中间或最终的版本)的计算机软件(整体或部分)的正确度(correctness) 、完全度(completeness)和质量(quality)的软件过程;是SQA(software quality assurance)的重要子域。 (1)测试是为了发现程序中的错误,进而执行程序的过程。 (2)好的测试方案是尽可能发现迄今为止尚未发现错误的测试方案。 (3)成功的测试是发现了至今为止尚未发现错误的测试。 (4)测试并不仅仅是为了找出错误,还可以通过分析错误产生的原因和错误的发生趋势,可以帮助项目管理者发现当前软件开发过程中的缺陷,从而及时改进。 (5)这种测试后的分析也能帮助测试人员设计出有针对性的测试方法,改善测试的效率和有效性。 (6)没有发现错误的测试也是有意义的,完整的测试是评定软件质量的一种方法。 (7)另外,根据测试目的的不同,还可以分为回归测试、压力测试、性能测试等,分别的功能是检验修改或优化过程是否引发新的问题、软件所能达到处理能力和是否达到预期的处理能力等。 5.1.2 软件测试的原则 一,测试应该尽早地进行,最好在需求阶段就开始进行,因为最严重的错误是系统不能满足用户的需求。 39 码农毕业设计下载网:www.manong365.com 二,程序员应该避免检查自己的程序,软件测试应该由其他人来负责。 三,设计测试用例时应考虑到合法的输入和不合法的输入以及各种边界条件,特殊情况下要制造极端状态和意外状态。 四,应该充分注意测试中的群集现象,从而可以设计出好的测试用例。 五,对错误结果要进行一个确认过程。一般由A测试出来的错误,一定要由B来进行确认。严重的错误可以召开评审会议进行讨论和分析,对测试结果还要进行严格地确认,判断是否真的存在这个问题以及这个问题的严重程度等。 六,制定严格的测试计划。一定要制定测试计划,并且要有指导性。测试时间安排尽量要宽松,不要希望在短时间内完成一个高水平的测试。 七,妥善保存测试计划、测试用例、出错统计和最终,为维护提供方便 5.1.3 软件测试的目标 1.发现一些可以通过测试来避免的开发风险。 2.实施测试来降低所发现的所有风险。 3.确定测试应该何时可以结束。 4.在项目开发的过程中应该将测试看作是一个标准项目。 5.1.4 软件测试的过程 第一步:对要进行测试的产品或者是项目进行分析,确定测试方法,制定测试的计划。该计划被审核批准后再进行第二步。测试工作开始前一定要确定正确的测试方法和指导方针,这些都是后期实施维护工作开展的基础。只有将本次的测试目标和要求分析清楚,才能决定最后测试资源的投入。 第二步:要设计测试用例。设计测试用例就是要根据测试需求和测试方法来进行,力度压力不大时,应该设计地详细,如果力度、成本压力较大,则应该保证测试用例覆盖到关键性的测试需求。该用例被批准后再进行第三步。 第三步:如果满足“启动准则”,那么就开始执行测试。执行测试主要是要搭建测试环境,执行测试用例。执行测试时要进行力度控制、项目协调等工作。 第四步:提交缺陷。这里要进行缺陷审核和验证等工作。 40 码农毕业设计下载网:www.manong365.com 第五步:消除软件缺陷。通常情况下,开发经理需要审核缺陷,并进行缺陷分配。程序员应该负责修改自己的代码缺陷。在程序员修改完成后,进入到回归测试阶段。如果满足“完成准则”,那么测试就正常结束了。 第六步:编写测试报告。对测试进行分析,总结本次测试的经验教训,在下一次的工作中进行改正。 软件测试过程管理,主要包括软件测试是什么样的过程,如何评价一个软件测试过程,如何进行配置管理和测试风险分析以及测试成本的管理。 5.2 酒店网上管理系统的测试 酒店网上管理系统包括前台模块和后台模块,主要是对这两个大的模块进行功能测试。 5.2.1 前台模块的测试 1.用户注册信息界面的测试,如图5-1所示 图5-1 用户注册信息界面 在该界面中,注册信息必须包括用户名,真实姓名,密码,确认密码,证件号码,邮箱地址,并且都不许输入错误。 2.修改用户信息 在该界面中,用户名是不可以修改的,在修改前必须先登录进入该系统。 3.如果用户被冻结,该用户就不能登录进去。 在用户被冻结以后,该用户只有向管理员求助,解冻以后才能进入该系统。 41 码农毕业设计下载网:www.manong365.com 图5-2 用户被冻结界面 4.预订酒店的测试:可以通过条件查询需要的酒店,进行预订;可以在预订专区订房;可以在特价区域预订酒店;也可以在最新客房区域订房。 5.2.2 后台模块测试 1.登录模块测试,如果用户名和密码不正确,无法进入后台。 图5-3 管理员进入后台界面 2.功能测试 预订客房测试:预订客房信息中,进入后台的管理员可以添加客房信息,可以修改客房信息,可以删除客房信息。 会员管理测试:会员管理,可以冻结会员,也可以解冻会员。 公告管理测试:可以进行添加,删除,修改公告信息 订单管理测试: 可以处理订单,处理订单也就是对用户预订的房间给用户。 42 码农毕业设计下载网:www.manong365.com 6 结论 6.1 总结 从二月份开始就开始进行酒店网上订房系统的设计,到现在也快三个月了,终于完成了这个系统的设计和实现。总体上讲,酒店网上订房系统就包括前台界面的实现,后台界面的实现,数据库的连接三部分。在前台界面的实现中包括:首页,最新客房,特价客房,用户注册,会员信息修改,预订专区,查看订单,查看预定排行榜,查看公告,预定酒店,支付,退房,进去后台等功能。在后台界面的实现中包括:登陆后台,预定客房管理,会员管理,订单管理,公告管理,退出后台。 我们要用自己学过的知识造福人类,在专业知识的学习中,大学四年学到了很多专业知识,在该系统中主要用到的就是java编码设计(包括基础知识和高级部分)和sqlserver数据库的增删改查操作,还有jsp页面的实现也是很重要的,在设计的过程中,主要是编码和测试用到了大部分的时间,还有一小部分的时间主要是用在了整理文档上面。 6.2 展望 经过了三个月的努力,我的目标是达到了,实现了酒店网上订房系统的基础功能,但是其中还存在许多的不足,希望自己一后再接再厉,更上一层楼~ 在该系统的设计过程中,应该注意一些细节问题,包括代码的规范性,论文的一些格式是很重要的,还应该注意系统功能实现的代码编写,这是比较重要的一部分;在以后的系统设计过程中,团队合作是很重要的,我们应该各司其职,才能完成整个项目的开发。 在以后的工作中,应该脚踏实地,努力做好自己。 43 码农毕业设计下载网:www.manong365.com 参考文献 [1]王宜贵. 软件工程[M]. 北京:机械工程出版者, 2002:20-79 [2]相洁,呼克佑.Java语言程序设计[M].北京:人民邮电出版社,2013 [3]耿祥义. SP基础编程[M] . 清华大学, 2004 [4]张永强,土爱民. Java程序设计应用教程[M].北京:电子工业出版社,2007 [5]李青. Java高级语言程序设计[M].北京:电子工业出版社, 2009 [6]李松林,陈华清,任鑫. Eclipse宝典[M].北京:电子工业出版社,2007 [7]冀振燕. UML 系统分析设计与应用案例[M].北京:人民邮电出版社,2003。 [8]面向对象系统分析与设计,Ronald J.Norman/7-302-02342-5/,清华大学出版社。 [9]吉根林,崔海源. JSP程序设计教程[M]. 北京:电子工业出版社,2004 [10]Wiley,J.Developing software for Symbian OS[M].Chicago:American Library Association, 2007 [11]Jon Titus. ECN Technical Editor: “The Eclipse of stand[J].Joural of ZhongKai Agrotechnical College”,Vol.19,No.2,2006 [12]Sanden,Bo. “STSTEMS PROGRAMMING WITH JSP:EXAMPLE-AVDU CONTROLLER”,Communications of the ACM,Vol28,No10,1985 44 码农毕业设计下载网:www.manong365.com 致 谢 时光匆匆流逝,大学四年就这样过了。感谢母校对我的培养,在大学四年中,我不仅学到了许多专业知识,也学到了许多做人的道理。我深知要走向社会必须要有一定的工作经验,所以在大学四年中,我参加过很多志愿活动来丰富自己的社会经验。 首先感谢我的毕业设计指导老师,在毕业设计中,校内老师给我提供专业知识上的帮助,帮助我检查毕业设计任务书是否符合要求,还帮助我查看论文,向我提出论文中有的问题;感谢学校给我们这个去上海杰普科技有限公司实习的机会,在实习的这半年中,巩固了许多在学校学过的知识,还提升了自己的专业水平,企业毕业设计指导老师在毕业设计中,给我提供了许多专业上的指导,还提出了许多意见和建议,最后,老师还帮助我们将论文中的问题都改过来。 酒店网上订房系统的设计也得到了软件工程系其他老师的悉心关怀,在设计工作中无不倾注着他们的辛勤的汗水和心血。在此我要向我的所有的老师们致以最衷心的感谢和深深的敬意。在大学四年的学习和生活中,我同样得到了许多领导,老师和同学的热情关心和帮助,在此,向所有关心和帮助过我的领导、老师、同学表示由衷的谢意~感谢毕业设计指导老师对我毕业设计的指导。 45 码农毕业设计下载网:www.manong365.com 外文原文 Developing software for Symbian OS Foreword By the end of March 2005, shipments of Symbian OS phones exceeded,an average of two million per month, and cumulative shipments sinceSymbian‟s formation reached 32 million phones. Also at that time, therewere more than 4500 commercially available, third-party applications for Symbian OS phones. Year on year, phone shipments have been vidoubling – and that trend appears likely to continue, or even increase,for the foreseeable future. These ,gures would suggest that Symbian OS is approaching maturity,as the preferred operating system for high- and mid-range mobile phones,and that it offers an ideal platform to developers, on which they can create new and imaginative applications. Symbian OS is a powerful, open operating system, which means that anyone with the right knowledge, skills and tools can create exciting new applications which will run on any Symbian OS phone. However, precisely because of that power and openness, the task of acquiring the necessary knowledge and skills can be a daunting prospect for a newcomer. Symbian Press aims to ease that task by providing a series of informative texts, covering a wide range of Symbian OS topics, at a variety of levels. This book represents two milestones for Symbian Press: it is our ,rst book to be written speci,cally for beginners in Symbian OS development, and it is the ,rst Symbian OS C++ text in the series to have been written by an author who has not spent at least part of his working life as a developer at Symbian Ltd. These two facts are not entirely unrelated; Steve‟s background means that he is ideally positioned to understand the problems facing a developer who is approaching Symbian OS for the ,rst time. In consequence, this book provides valuable and practical answers at all stages, from obtaining and setting up a development system to the production of an installable multilingual application. Author Biography 46 码农毕业设计下载网:www.manong365.com Steve Babin works at IBM developing embedded enterprise softwarefor smartphones based on Symbian OS. He has a BSEE from Louisiana State University and over 19 years‟ software leadership and development experience on a variety of products – including medical devices, Java accelerators, avionics, Internet appliances, and system-on-chip silicon devices – using numerous embedded operating systems. Steve is married to Sharon and has a daughter named Hillary. They live in Austin, Texas. Author Acknowledgements It‟s surprising how much work a book is to write, and this one would not have been possible without the help of some very talented people. Working with Symbian Press and Wiley has been a great experience for me – their enthusiasm for the book and their timely and thorough responses have been exceptional. Many thanks to William Carnegie, Freddie Gjertsen and Philip Northam at Symbian Press and Sally Tickner at Wiley for their hard work, and thanks to all others who have contributed to the book. I especially want to thank Richard Harrison at Symbian Press for his invaluable contribution. It‟s been a pleasure working with someone who is not only very knowledgeable on Symbian OS programming but is an excellent writer as well. His help in pointing out technical problems and making a complex subject more readable has greatly improved the book. I also want to thank Brian Jepson whose excitement and enthusiasm for smartphones, as well as his fresh perspective on Symbian OS, helped me greatly with the earlier chapters. Also, thanks to Nick Tait for his technical review of some of the earlier chapters. Last but de,nitely not least, I want to thank my wife Sharon and daughter Hillary for putting up with me while writing this book on early mornings, late nights and weekends. They have been very supportive, but have been looking forward to its completion so I can spend more time with them. I‟ll make up for it! Symbian Acknowledgements Symbian Press would like to thank Steve Babin for tenaciously toiling in Texas, on this taxing tome. We also extend our warmest thanks to Richard Harrison, a veritable 47 码农毕业设计下载网:www.manong365.com pioneer of the development frontier, who skillfully wrangled some of the more recalcitrant chapters into shape. The lasso of gratitude must also fall on the shoulders of Phil N, Phil S and Freddie G, for their effervescent and, indeed, incoherent banter, depending on which round it was. Smartphones and Symbian OS Symbian OS is a full-featured mobile operating system that resides in most of today‟s smartphones. The demand for smartphone software is growing as these devices become more powerful and more widely used. While Symbian OS-based smartphones are shipped with a variety of useful applications built in, an exciting aspect of these phones is that they are „open‟. This means that users can download, install and uninstall applications written by third-party developers (or by the users themselves). No special carrier service or device manufacturer‟s agreement is needed to distribute new smartphone applications – they can be downloaded by the user from a PC to the smartphone through a link such as USB or using Bluetooth technology (limited by the smartphone‟s storage space, of course). Symbian OS provides a great opportunity for software developers since smartphone users are always looking for good applications for their devices. There is a growing list of Symbian OS software titles available as freeware or as paid downloads on numerous Internet sites (www.handango.com and www.epocware.com are good examples). Available smartphone applications range from productivity, entertain-ment, multimedia and communications software to programs that can count fast food calories, improve your golf swing, keep diaries and cal-culate foreign currency exchange. And – business opportunities aside – sometimes it‟s just plain fun writing your own code to run on your own smartphone. The purpose of this book is to help software developers create good software for Symbian OS-based smartphones. But, before launching into programming for Symbian OS, this chapter introduces the smartphone itself and gives an overview of its features and associated technologies. Understanding the smartphone‟s range of features helps the programmer to exploit them to their full potential. I‟ll also discuss the company Symbian Ltd, give an introduction to Symbian OS and discuss how Symbian OS and other operating systems ,t into the marketplace. 48 码农毕业设计下载网:www.manong365.com 1.1 Smartphone Concept A mobile phone that ,ts in your pocket and lets you communicate from and to anywhere in the world is an amazing invention. Like most inventions, mobile phones are built on a chain of prior technological advancements. Without advancements such as integrated circuits, micro-processors, semiconductor miniaturization, battery technology and, of course, the invention of telephone and radio, the modern mobile phone would not be possible. Smartphones combine the mobile phone with another stream of tech- nology: the computer, which adds the „smart‟ in smartphone. Computers have progressed from centralized mainframes to personal computers with user-downloadable applications and graphical user interfaces. With the introduction of the Internet and email, the PC is a part of everyday life as a productivity, entertainment, and communication device. Laptops were introduced to allow PCs to be portable. Then came the mobile computing device known as the PDA – a true handheld computer. Since the PDA and the mobile phone are both mobile devices, it‟s only natural that we would want to combine them into one device. After all,you only have so much pocket or purse space! This is the basic idea of asmartphone – but a smartphone is more than just the sum of two devices. 1.2 Smartphone Features Like PDAs, smartphones can run applications such as organizers, games,and communications programs (e.g. email, browser). They can, of course,also make telephone calls. The smartphone‟s goal, however, is not just to limit the number of devices you carry, but also to combine mobile phone and computing technologies in a synergistic way. A simple example is the ability to pull up a person‟s contact information or even their picture, hit a button and automatically dial the person‟s phone number. Other examples include taking a picture, adding some text, and sending it instantly to a PC or another smartphone user. There are many more examples of this – and certainly many that have not even been thought of yet. 1.2.1 How Smartphones Communicate Smartphones, like traditional mobile phones, use radio to communicate with base towers, which in turn act as gateways into landline-based communication infrastructures. While traditional mobile phone systems are based mainly on relaying 49 码农毕业设计下载网:www.manong365.com voice communication between the wireless handset and the wired telephone infrastructure, smartphones provide more features that rely on network data transfer. After all, the basic concept of the smartphone is to combine a mobile phone with a networked PDA.Improved data transfer is the current challenge for next generation mobile communications; unlike voice transfer which, requires a ,xed bandwidth,the rule for data transfer is the faster the better. .2.2 Generations of Mobile Communication With faster data speeds come better services. For example, when the bandwidth reaches a certain threshold, applications and services that transfer real-time audio and video become possible. The industry goalsin wireless data communications have been categorized into genera-tions – each generation includes a target data bandwidth as well as a set of data services available for it: • First Generation (1G): Original analog mobile phone technology • Second Generation (2G): Voice-centric digital systems with increased coverage and capacity and messaging • Third Generation Transitional (2.5G): Stepping stone to 3G with always-on network connections and bandwidths up to 170 Kbps allowing better Internet browsing, email, and some audio and video; GPRS has been the dominant technology • Third Generation (3G)/Fourth Generation (4G): Bandwidths up to 2 Mbps and 200 Mbps respectively for high-end services such as video teleconferencing. The topic of wireless communication protocols is vast and could easily take up another book. But let‟s brie,y cover some of the key communi-cation technologies that apply to smartphones. 1.2.3 GSM GSM, short for Global System for Mobile Communication, is a digitalcell-based communication service that started in Europe, and has quickly spread throughout most of the world. A notable exception is the US, where CDMA is the dominant standard; however, GSM is gaining popularity there. GSM is the most supported protocol in smartphones. 50 码农毕业设计下载网:www.manong365.com GSM was designed for circuit-switched voice communication. Circuit-switched means that ,xed bandwidth is reserved for each direction of a phone call for the entire duration of the voice call, whether you are talking or not. Although originally designed for voice, GSM now has a variety of higher bandwidth data services (e.g. GPRS and EDGE) available, running on top of the base GSM protocol. This allows for faster data transfer, as we will see shortly.The following types of GSM exist, each using its own band in the frequency spectrum: GSM 850, GSM 900, GSM 1800 and GSM 1900. The number indicates the frequency band, in MHz, that the protocol uses. Mobile phones supporting GSM 900 and GSM 1800 will ensure coverage in Europe and many other areas outside of the US, while GSM 850 and GSM 1900 are used in the US (mostly GSM 1900). Fortunately, smartphones support multiple bands to ensure as wide a coverage as possible. It‟s common to have tri-band phones that support GSM 900, GSM 1800 and GSM 1900 to ensure maximum international coverage – although some still offer separate US models to reduce costs. A GSM phone uses a Subscriber Identi,cation Module (SIM) to gain access to the GSM network. A SIM contains all the pertinent information regarding a user‟s account including the services allowed. It is used to identify the user to the GSM network for billing purposes. The user can switch their SIM from one GSM phone to another, provided that the phone is not locked either to a speci,c carrier or to the carrier that the SIM is associated with. 1.2.4 CDMA CDMA, which stands for Code Division Multiple Access, is a mobile phone standard that competes with GSM. CDMA currently dominates in the US and Korea, while GSM dominates virtually everywhere else. CDMA supports a high speed data mode called CDMA2000 1xRTT, which tends to hover around 50–70 Kbps, bursting up to 144 Kbps. The forthcoming CDMA2000 1xEV-DO supports rates up to 2.4 Mbps, butinitial reports on the Verizon Wireless network in two test markets (SanDiego and Washington, DC) made in 2003 show probable speeds of 500–800 Kbps, with peak data rates of 1.2 Mbps. There are some smartphones based on CDMA, such as the Palm Treo 600 (both 51 码农毕业设计下载网:www.manong365.com GSM and CDMA models are available). At the time of writing,however, there are no CDMA Symbian OS-based smartphones, although several do support W-CDMA (see Section 1.2.9). 1.2.5 CSD CSD, short for Circuit Switched Data, is the most basic mode of transfer-ring data over a circuit-switched connection like GSM. The connection is established by dialing the number of an ISP, in the same manner that a dial-up connection is started on a land-based telephone line using a PC modem. With CSD you do not need an extra data plan to send data, as you do for GPRS, which costs more (see Section 1.2.6). You can use your existing voice minutes. There are two major disadvantages to using CSD, however. First, it takes a long time to connect since it involves dialing a number and waiting for the server to answer the call. Second, it‟s slow – data transfer speed is only about 9.6 Kbps. In GSM-based smartphones, this mode is referred to as „Dial‟ or simply as GSM data. Earlier smartphones such as the Nokia 9290 rely entirely on this mode of data communication. 1.2.6 GPRS GPRS, short for General Packet Radio Service, is a wireless technology that allows the smartphone user to quickly connect to the network and obtain good data rates. Connection time is fast since GPRS does not require any dialing (unlike CSD), and the smartphone feels as if it is always connected. GPRS runs on top of the GSM protocol. While GSM alone is circuit-switched, GPRS is based on packet-switching technology. This means that the radio bandwidth is used only when data is actually transferred,even though you are constantly connected (circuit-switching keeps the full bandwidth reserved throughout a connection). GPRS, in theory, supports bandwidths up to 170 Kbps. In practice,however, you‟ll get between 20 and 60 Kbps depending on network conditions – but this is still signi,cantly faster than the GSM dialup data rate! The best way to think of the speed of GPRS is that it matches approximately with a PC connected to the network via a wired telephone modem. However, GPRS can feel better than dialup since it connects almost instantly to the network without the lengthy delay involved in dialing a number and establishing a call. 52 码农毕业设计下载网:www.manong365.com GPRS is a highly usable communication feature and a good preview of future wireless data communication technologies. Since it is a stepping stone to 3G technology, it is categorized as 2.5G technology. GPRS is available on most newer smartphones. 1.2.7 HSCSD HSCSD is the high speed version of CSD. HSCSD is another 2.5G standard that supplies a comparable speed to that of GPRS (although on the lower side in many cases), but with a signi,cant difference – the bandwidth is reserved to the smartphone throughout the connection. This is because HSCSD, like CSD and GSM, is a circuit-switched technology. This makes HSCSD better suited for applications that require a constant bit rate, although the practical bandwidth is rather low for good real-time multimedia transfers – which bene,t the most from constant bit rates. HSCSD is not widely used due to the high costs of implementation.The Nokia 6600 and the Motorola A920 are examples of smartphones that support HSCSD. 1.2.7 EDGE EDGE, short for Enhanced Data Rates for GSM Evolution, is a GSM-based protocol that provides theoretical speeds up to 384 Kbps. It is a 2.5G technology that is sometimes referred to as 3G because of its higher speed. It is not yet as widely used as GPRS, but is gaining support. For example, AT&T has deployed EDGE on its GSM networks in the USA, reaching speeds of around 90 Kbps in practice. Smartphones such as the Nokia 9300 and Nokia 6620 support EDGE. 1.2.9 UMTS UMTS, short for Universal Mobile Telecommunication Services, is a high speed data transfer protocol which supports bandwidths up 2 Mbps. This protocol is the basis of third generation mobile communications that make many media-rich services a possibility. This is where smartphones will really shine! UMTS is not based on GSM technology – it uses a technology called W-CDMA. However, the UMTS platform is designed to work with GSM systems to ease its deployment.Although it seems slow in coming, once this communication platform becomes widely implemented, it will 53 码农毕业设计下载网:www.manong365.com revolutionize the way people use smartphone devices. 1.3 Smartphone Messaging Text messaging, such as email and instant messaging, is widely used on PCs connected to the Internet. It makes sense to use similar modes of communication in mobile devices. Below are the messaging features supported by smartphones. 1.3.1 SMS SMS stands for Short Messaging Service. SMS allows mobile phone users to send and receive short text messages up to 160 characters. These messages are sent between phones with only a small delay and can occur even while a voice call is in progress. SMS is well suited to many types of communication exchange and is less intrusive than making a voice call. SMS is part of the GSM communication platform and is used by mobile phones all over the world. SMS is not yet widely used in the United States, but is slowly growing in popularity. SMS is a standard feature on today‟s smartphones. 1.3.2 MMS MMS, short for Multimedia Messaging Service, is an extension of SMS that provides the ability to send media data such as pictures, audio and video along with your text message. MMS is a natural complement to smartphones due to their audio and video capabilities. For example, a smartphone user could snap a picture of a landmark, record a quick voice comment on it and send it instantly to another mobile phone user. MMS messages can even be sent to people who have only SMS capability by sending a text link to a browser URL containing the MMS message. You can also send and receive MMS messages between a smartphone and an email account used from a PC. 1.3.3 Email Having the ability to keep up with your email while on the road is a standard feature found in smartphones. With high resolution scrollable displays and alphanumeric entry methods, it does not feel much different from email on a PC. Smartphones allow the user to set up multiple POP3 and IMAP email accounts. 1.3.4 Fax Many smartphones include the ability to send and receive faxes, or can be customized to do so with fax software. 54 码农毕业设计下载网:www.manong365.com 1.4 Web Browsing Internet browsing is a standard feature for smartphones. There are many different browsers available, and they fall into two main types: WAP and HTML. 1.4.1 WAP WAP, which stands for Wireless Application Protocol, was speci,-cally designed for Internet browsing on resource-constrained devices. It includes lightweight markup languages designed to minimize the pro-cessing power and memory needed by the mobile device to render the web page. WAP also ensures that the page is usable on a small screen. Markup languages include WML and xHTML (mobile pro,le). In many cases, proxy servers are used, which will automaticallytranslate traditional HTML web sites to the WAP markup language before transferring to the mobile device. This is known as transcoding. 1.4.2 HTML Although WAP was very important for earlier mobile devices, smart-phones today have better memory, processing power and displays. Because of this, it is feasible to include traditional HTML browsers that directly load web sites in their native format similar to a browser on a PC. Many smartphones have HTML browsers and these usually include WAP capability – sometimes combined in one browser. 1.5 Local Device Communication Features Smartphones have a variety of communication features in addition to basic access to the cellular network. Psion realized that there was a need for a mobile OS that could be licensed to other manufacturers for use in their mobile products, and that their EPOC operating system was well suited for this. At the time, the mobile phone industry was looking for a general operating system suitable for mobile phones and was interested in using EPOC. In June 1998, the software team stepped out on their own with the EPOC operating system and Symbian was born. Symbian was formed as a joint venture owned by other major mobile phone manufacturers as well as Psion, with the primary goal of licensing the EPOC operating system and improving it. These features allow a smartphone to directly link with other devices, including PCs, PDAs, wireless headsets and other smartphones, to undertake a wide variety of 55 码农毕业设计下载网:www.manong365.com data transfer functions. Below are the popular device-to-device communication means, along with some of their uses. 1.5.1 USB/Serial Cable Connection Smartphones can be connected to a PC via either a USB or a serial cable (varies from phone to phone). This high speed link is normally used for downloading new applications to the smartphone as well as synchronizing user data, such as calendar and contact entries. A user can also access the PC‟s high speed network connection directly from the smartphone for much faster network access than can be achieved through the cellular network. Many products provide a cradle into which The smartphone can be plugged, both for PC connectivity and for charging the phone‟s battery. 1.5.2 Infrared (IR) The smartphone provides the capability to communicate through an infrared port to a PC or other device such as a PDA. You can do all the things that can be done with the USB/Serial cable, but without plugging in any wires. IR requires a line-of-sight connection between the devices in the same way that a TV remote control does. 1.5.3 Bluetooth Bluetooth is a short-range radio technology that enables devices to ,nd and connect to each other. While technologies like GSM replace long lengths of wire, Bluetooth replaces the rat‟s nest of short wires connectin various pieces of equipment. Unlike infrared, Bluetooth does not require line of sight and will even communicate through walls. With Bluetooth technology you can connect more conveniently to PCs and PDAs to download applications and synchronize user data than you can with cable or IR. In addition to providing basic PC to smartphone linkage, Bluetooth technology makes more device-to-devicencommunication scenarios possible. For instance, you can snap a picture on your smartphone and send it to a nearby printer for printing. Another use in a smartphone is in a wireless headset for hands-free operation. 56 码农毕业设计下载网:www.manong365.com Some smartphones allow themselves to be used as a modem with access to the cellular network. In this case, a device such as a PC connects to the smartphone via Bluetooth technology to provide the PC with Internet connectivity. As more devices become available, expect many new possibilities for Bluetooth-enabled smartphones. 1.6 The Mobile OS In the past, portable devices such as mobile phones did not require sophisticated operating systems. These earlier devices used simple, and usually proprietary, system software. In many cases they used no operating system at all and all software remained ,xed in the device‟s Read Only Memory (ROM). Now that mobile devices such as PDAs and smartphones have greater hardware power and implement sophisticated, media-rich (downloadable) applications, it‟s apparent that a sophisticated operating system is needed. 1.6.1 What Makes a Good Smartphone OS? Smartphone devices have certain characteristics that are different from tra-ditional desktop computers and that must be addressed by a smartphone operating system: • Resource-limited hardware Smartphones should be small, havea long battery life and cost as little as possible. To meet these requirements, smartphones, like other mobile devices, have limited memory and processing power as compared to desktop PCs and laptops. The operating system must be frugal in using hardware resources – especially memory. Not only must the OS itself use mem-ory carefully, but the architecture should also provide support to helpOS applications limit their use of memory, as well as allowing them to handle low-memory situations gracefully. • Robustness A user expects a mobile phone to be stable and will not tolerate the device locking up. This is a challenge for any full-featured operating system due to the complexity of the system software itself; however, it is especially challenging for resource-limited devices such as smartphones that also allow third-party applications – which may be of questionable quality – to be downloaded.Not only must the OS itself be designed to avoid crashing, it must also provide support functions and policies for applications to follow,allowing the device to handle application errors and (as alluded to before) out-of-memory situations, without locking up the phone. 57 码农毕业设计下载网:www.manong365.com • User interface for limited user hardware The OS should implement a user interface environment that is ef,cient and intuitive to use, despite the smaller screen and limited user input capabilities of a smartphone. Also, screen sizes and input capabilities vary between different models of smartphones, so the UI architecture should be ,exible, so that it can be customized for the varying form factors. • Library support Smartphone operating systems should contain mid-dleware libraries and frameworks with APIs that implement and abstract the functionality of the features of the smartphone. The purpose is to provide functional consistency and to ease software development. Examples of smartphone middleware include librariesand frameworks for email, SMS, MMS, Bluetooth, cryptography, multi-media, UI features, and GSM/GPRS – the more support for smartphone features the better. • Application development support Smartphone buyers want to know that there are many good applications available for their device, and that they can expect more and better software for it in the future. In order for this to be a reality, the OS must have good software development tools, support, training and documentation. The Nokia 9500 is the latest smartphone in Nokia‟s high-end series of phones, known as communicators. Communicators look like traditional mobile phones (although they are a bit heavier), except that the case opens up into an easy to read landscape display and a QWERTY keyboard. Communicators use the Series 80 Symbian OS user interface. They have a 640×200 pixel screen with 4K colors (not a touch screen). The devices include a WAP and HTML browser as well as email and SMS support. User input is via the keyboard (this is the easiest smartphone for entering text) and soft labeled keys along the right side of the display. The more productive the developers, the more powerful, easy to use and bug-free applications will appear for the smartphone. 1.7 Symbian – A Little History The creation of Symbian OS can be traced back to a talented team of software developers at a company called Psion, an early pioneer in the handheld computer market. After successive generations of software for Psion‟s handheld devices, the team created an object-oriented operating system called EPOC, which was designed speci,cally for the unique requirements of mobile computing devices. 58 码农毕业设计下载网:www.manong365.com Psion realized that there was a need for a mobile OS that could be licensed to other manufacturers for use in their mobile products, and that their EPOC operating system was well suited for this. At the time, the mobile phone industry was looking for a general operating system suitable for mobile phones and was interested in using EPOC. In June 1998, the software team stepped out on their own with the EPOC operating system and Symbian was born. Symbian was formed as a joint venture owned by other major mobile phone manufacturers as well as Psion, with the primary goal of licensing the EPOC operating system and improving it. 11 Fast forward to today, and we ,nd that Symbian‟s operating sys-tem – now known as Symbian OS – is a major player in the smartphone marketplace, residing in the majority of today‟s smartphone devices. Sym-bian is jointly owned by Nokia, Panasonic, Psion, Samsung, Siemens and Sony Ericsson which, together, represent a major portion of the mobile phone industry. 1.7.1 Symbian OS Overview Symbian OS was designed from the ground up for mobile communications devices. While some competing operating systems (such as Microsoft‟s Smartphone OS) evolved from operating systems written for larger, more resource-laden systems, Symbian OS approached it from the other direction. Symbian‟s earlier versions (known as EPOC) would run on devices with as little as 2 MB of memory. Symbian OS is a multitasking operating system with features that include a ,le system, a graphical user interface framework, multimedia support, a TCP/IP stack and libraries for all the communication features found on smartphones. Symbian OS has software development kits available for third-party application development. Also, the hardware layers of the operating system are abstracted, so that phone manufacturers can port the OS to the speci,c requirements of their phone. 1.7.2 One OS, Various Flavors It is challenging to create an operating system that provides common core capabilities and a consistent programming environment across all smartphones – yet at the same time allow for manufacturers to differentiate their products. Smartphones come in many different shapes and sizes with varying screen sizes and user input capabilities; the user interface software needs to vary to ,t these differences. 59 码农毕业设计下载网:www.manong365.com Symbian OS has a ,exible architecture that allows for different user interfaces to exist on top of the core operating system functionality. Of course, it is not wise to be too ,exible for two reasons: having too many different user interfaces inhibits code reuse among different devices and too much work is required by the OEM to create a GUI from scratch for their smartphone. So, to give the phone makers a starting point, Symbian created a few reference platforms, each packaging the Symbian OS core functionality along with a user interface that matched one of the basic smartphone form factors (screen size and input capability). This was important in the beginning; the idea was for smartphone manufacturers to choose the reference platform that most closely matched their phone‟s hardware characteristics, and use that as a starting point for their own customized with many prepackaged organizer and game applications. The deviceplugs into a cradle that is connected to a PC via USB for downloading applications and synchronizing user data. IR and Bluetooth are also sup-ported. The P900 has an integrated camera that can both take still pictures and record video using MPEG-4. It contains a combination WAP/HTML browser, audio and video playback, email (with attachments), SMS and MMS. The device contains 16 MB of memory for user storage and supports an external memory card to expand this. For communication the P900 supports GSM 800, 1800 and 1900, GPRS and GSM dialup communication. 60 码农毕业设计下载网:www.manong365.com 外文翻译 Symbian操作系统的软件开发 前言 截至2005三月底,Symbian操作系统的手机出货量超过二百万,平均每月累计出货量,并sincesymbian的形成达到32000000手机。同时,有超过4500的商用,为Symbian操作系统手机的第三方应用程序。去年,手机出货量已vidoubling–,趋势似乎在继续,甚至增加,在可预见的未来。 这些数据表明,,Symbian操作系统正在走向成熟,对于高的首选操作系统和中档手机,并且它提供了一个理想的平台,开发者,它们可以创造新的和富有想象力的应用。 Symbian操作系统是一个强大的,开放的操作系统,这意味着任何人都有正确的知识,技能和工具,可以创造令人兴奋的新的应用程序将运行在Symbian操作系统的手机。然而,正是因为权力和开放,获取必要的知识和技能的任务可 61 码农毕业设计下载网:www.manong365.com 以为新来的一个可怕的前景。Symbian出版社旨在通过提供一系列的信息文本缓解任务,覆盖范围广,Symbian OS的主题,在不同的层次。 这本书代表了Symbian出版社两个里程碑:这是我们的第一本书是书面的规范,,卡利在Symbian OS开发的初学者,这是,RST Symbian OS C++文本系列中有一个作者没有花至少他的一部分工作生活在Symbian公司开发者写的 这两个事实不完全无关;史提夫的背景意味着他理想的位置是理解面向开发人员接近Symbian OS的,第一时间的问题。因此,这本书提供了有价值的所有的切合实际的解答阶段,获得、建立发展系统的安装多语言应用的生产。 作者简介 IBM史提夫巴宾的工作在嵌入式的基于Symbian OS企业的智能手机软件。他拥有路易斯安那州立大学的学士和在19年的软件领导开发–进行各种产品Java包括加速器,的医疗设备,设备,互联,家电体验馆及系统级芯片硅器件,众多–运用嵌入式操作系统。史提夫的妻子是沙龙和有一个女儿叫希拉里。他们住在奥斯丁,德克萨斯。 作者致谢 真奇怪的一本书写的劳动的多少这一个也不会,而一些非常有才华的人的帮助,可能。与Symbian出版社和威利一起工作对我来说是一个伟大的经验–他们书并及时和全面的响应异常的热情已。非常感谢威廉卡耐基,弗雷迪和菲利普没有出现在新闻和莎莉-诺瑟姆Symbian在威利的辛勤工作,感谢所有的人谁促成了这本书。 我要特别感谢李察哈里森在Symbian出版社的宝贵贡献。这是一个快乐的人不仅是在Symbian OS的编程知识渊博而且是一个优秀的作家以及工作。他指着技术问题和进行复杂问题更加可读大大提高本书使。 同时我要感谢布瑞恩的兴奋和热情杰普林的智能手机,以及其Symbian OS新鲜视角在帮我早期章,大大。尼克也,感谢对于一些Tait在前面几章的技术综述。 ,一但至少我要奈特雷,感谢我的妻子Sharon和女儿希拉里把我写了这本书早上深夜周末。他们一直都很支持,但一直期待它的完成,这样我就可以花更多的时间与他们。我会弥补~ Symbian致谢 Symbian出版社要感谢史提夫为德克萨斯海区的顽强劳作,这对我。我们也热烈感谢李察哈里森,一个名副其实的前沿先锋,他巧妙地争取一些更顽固的章成形状。感恩的套索也必须落在菲尔N的肩膀上,菲尔和弗雷迪G,其泡腾和,的确,语无伦次的玩笑,这取决于它是圆形的。 1智能手机和Symbian操作系统 Symbian操作系统是一个全功能的移动操作系统驻留在今天的大多数智能手机。智能手机软件的需求也随着这些设备变得更强大和更广泛的增长。 而基于Symbian OS的智能手机出货量与各种有用的应用程序内置,这些手机一个令人兴奋的方面是,他们是“开放的”。这意味着用户可以下载,安装和卸载 62 码农毕业设计下载网:www.manong365.com 是由第三方开发者编写的应用程序(或由用户自己)。没有特殊的服务或设备制造商的需要发布新的智能手机应用–他们可以下载从PC到智能手机用户通过链接如USB或蓝牙技术(通过智能手机的存储空间有限,当然)。 Symbian操作系统为软件开发人员提供了一个很好的机会,因为智能手机用户总是在寻找他们的设备的应用。有Symbian OS软件名称可作为免费或付费下载许多互联网网站越来越多(www.handango.com和www.epocware.com就是很好的例子)。 使用智能手机的应用范围从生产力,娱乐,多媒体和通讯软件的程序,可以快速的食物热量,提高你的高尔夫挥杆动作,保持写日记和计算外币兑换。和–商机之外–有时只是好玩编写自己的代码运行在自己的智能手机。 这本书的目的是帮助软件开发者基于Symbian OS智能手机创造良好的软件。但是,在进入编程Symbian操作系统的智能手机本身,本章介绍了它的功能的概述和相关技术。了解功能的智能手机的范围内帮助程序员开发他们的潜能。 我还将讨论公司塞班公司,介绍和讨论Symbian OS Symbian操作系统和其他操作系统,T进入市场。 1.1智能手机的概念 手机在你的口袋里,TS和让你的沟通和在世界任何地方都是一个了不起的发明。最喜欢的发明,手机是建立在一个链的现有技术进步。没有进步,如集成电路,微处理器,半导体的微型化,电池技术和,当然,电话和无线电的发明,现代手机将是不可能的。 智能手机将手机与另一个流的技术:计算机技术,将智能手机的“智能”。计算机已从集中的主机与用户下载应用程序和图形用户界面的个人电脑。随着互联网和电子邮件的推出,PC是日常生活中的一部分作为一种生产力,娱乐,和通信设备。笔记本电脑进行了介绍,让电脑成为便携式。之后,移动电脑设备被称为一个真正的掌上电脑PDA–。 既然PDA和移动电话正在移动设备上,很自然我们希望结合他们的设备。毕竟,你只有这么多的口袋或钱包的空间~这是一部智能手机–的基本思想,但智能手机不仅仅是两个设备的总和。 1.2智能手机功能 像PDA,智能手机可以运行应用程序,如组织者,游戏,通讯程序(如电子邮件,浏览器)。他们可以,当然,也打电话。智能手机的目标,然而,不仅仅是限制你携带设备的数量,同时还将手机和计算机技术在协同的方式。一个简单的例子是把一个人的联系信息或者图片的能力,点击一个按钮,自动拨打的电话号码。其他的例子包括拍照,添加一些文本,并将其发送到PC或其他智能手机即时用户。有很多这样的例子–肯定很多,甚至没有想到呢。 1.2.1智能手机如何沟通 智能手机,像传统的手机,用无线电与基地塔沟通,从而充当网关为固定基础通信设施。而传统的移动电话系统主要是根据中继语音通信的无线手机和有线电话基础设施之间的智能手机,提供更多的功能,依靠网络数据传输。毕竟,智 63 码农毕业设计下载网:www.manong365.com 能手机的基本概念是一个移动电话网络的PDA结合。改进的数据传输是下一代移动通信的现状与挑战;语音传输,需要一个,固定带宽,数据传输的原则是越快越好。 来更好的服务和更快的数据传输速度。例如,当带宽达到一定的阈值时,应用程序和服务,传输实时音频和视频成为可能。产业目标,无线数据通信已被分为代数–每一代包括目标数据带宽以及一套数据服务可: •第一代(1G):原来的模拟移动电话技术 •第二代(2G):增加语音为中心的数字系统 覆盖和容量和通讯 •第三代过渡(2.5G):迈向3G 总是在网络连接和带宽高达170 kbps 允许更好的互联网浏览,电子邮件,和一些音频和视频; GPRS一直占主导地位的技术 •第三代(3G)和第四代(4G):带宽高达 2 Mbps和200 Mbps分别为高端服务等视频会议。 无线通信协议的话题是广阔的,可以很容易地拿起另一本书。但让布里,Y盖一些关键的通信技术应用于智能手机。 1.2.3 GSM GSM全球移动通信系统,短,是一digitalcell基础通信服务开始于欧洲,并迅速蔓延到整个世界的大部分。一个值得注意的例外是美国,在CDMA是占主导地位的标准;然而,GSM是越来越受欢迎,有。GSM是最支持的协议在智能手机。 GSM是电路交换语音通信。被保留用于语音呼叫的整个期间,一个电话每个方向切换意味着,固定带宽电路,无论是或不是。 虽然最初设计用于GSM语音,现在有各种各样的高带宽数据服务(如GPRS和EDGE),基础之上的GSM协议的运行。这允许更快的数据传输,我们很快就会看到。以下类型的GSM存在,每一个使用它自己的乐队在频率:GSM 850,GSM 900,GSM 1800和GSM 1900。这个数字表明在MHz频段,,,协议使用。手机支持GSM 900和GSM 1800将确保在欧洲和其他许多地区的美国以外的范围,而GSM 850和GSM 1900采用的是美国(主要是GSM 1900)。 幸运的是,智能手机支持多个频段,以确保尽可能广泛的覆盖。有三频手机,支持GSM 900很常见,GSM 1800和GSM 1900确保最大限度的国际报道–虽然有些还提供单独的美国模式降低成本。 一个GSM手机使用用户识别模块(SIM),阳离子进入到GSM网络。SIM卡包含所有相关信息的使用者包括业务允许帐号。可识别用户的网络计费GSM的。用户可以从一个GSM手机SIM卡切换到另一个,但电话没有被锁定到特定的,C承运人或承运人的SIM卡与。 1.2.4 CDMA 64 码农毕业设计下载网:www.manong365.com CDMA,即码分多址,是一种竞争的GSM移动电话标准。CDMA目前占主导地位的美国和韩国,而GSM占主导地位,几乎无处不在。CDMA支持的高速的数据模式CDMA2000叫做往往徘徊1xRTT,约50–破70 kbps达到144 kbps。1xEV-DO未来CDMA2000支持率可达2.4 Mbps,在市场测试的Verizon无线网(华盛顿圣迭戈复合材料报告时,直流)2003说明可能加速800 kbps–和500 Mbps,数据峰值的1.2利率。 有一些基于CDMA的智能手机,如Palm Treo 600(包括GSM和CDMA模式可用)。在写作的时间,然而,有没有CDMA的智能手机Symbian操作系统,虽然有几个不支持W-CDMA(见第1.2.9)。 1.2.5 CSD CSD,短电路交换数据,通过电路传递环数据的最基本模式如GSM交换连接。连接是通过拨打ISP的数量,在相同的方式,拨号连接上启动陆基电话线使用PC调制解调器。CSD你不需要额外的数据计划发送数据,作为你的GPRS,成本(见第1.2.6)。你可以使用现有的语音分钟。 有使用CSD两大缺点,然而。首先,它需要很长的时间,因为它涉及到拨号连接并等待服务器应答呼叫。其次,它的–速度慢的数据传输仅约9.6 kbps。 基于GSM的智能手机中,这种模式被称为“拨号”或简称GSM数据。早期的智能手机如诺基亚9290完全依赖这种模式的数据通信。 1.2.6 GPRS GPRS通用分组无线业务,短,是一种无线技术,可以让智能手机用户能够快速连接到网络并获得良好的数据速率。由于GPRS连接时间快,不需要任何拨号(不像CSD),以及智能手机好像总是连接。 GPRS在GSM协议上运行。孤独是电路交换GSM时的,基于分组交换技术GPRS就是。意味着无线带宽数据时实际只是转让二手你尽管不断连接,(转换电路保持在全部带宽保留连接)。 在理论上,GPRS,支持带宽高达170 kbps。然而在实践中,你会得到的,在20和60根据网络条件–Kbps但仍显,比GSM拨号数据速率更快地~要想对GPRS的速度的最好方法,就是接近与PC机通过有线电话调制解调器连接到网络。然而,GPRS可以感觉比拨号因为它连接几乎立即到网络没有参与拨号并建立呼叫的漫长的拖延。 GPRS是一种高度可用的通信功能和良好的预演未来的无线数据通信技术。因为它是3G技术的垫脚石,它被归类为2.5G技术。GPRS是可用的最新的智能手机。 1.2.7 HSCSD HSCSD是CSD的高速版。HSCSD是另一个2.5G的标准,提供了一个与GPRS速度(虽然在较低的一方在许多情况下),但一次,差别–带宽预留的手机在连接。这是因为HSCSD,像CSD和GSM是一种电路交换技术。 这使得HSCSD更适合需要恒定比特率的应用,虽然实际带宽是良好的实时多媒体传输–这好,T最恒定比特率相当低。 65 码农毕业设计下载网:www.manong365.com HSCSD不是由于实施成本高,广泛应用。诺基亚和摩托罗拉A920的6600是智能手机,支持HSCSD的例子。 1.2.7边缘 短边,是GSM演进增强数据速率的GSM协议,是基于这样的理论速度,提供多达384 kbps的。它是指有的2.5G技术是3G的,因为它的高的速度。它是尚未广泛使用的通用分组无线业务(GPRS)是一的,但获得的支持。例如,AT&T的GSM网络,它的边缘有deployed在线在美国。 达到90 Kbps的速度(在实践中。诺基亚9300智能手机,如诺基亚6620的和支持的边缘。 1.2.9 UMTS UMTS通用移动电信服务的,短的话,是一个高速数据传输协议的支持上bandwidths 2 Mbps的。该协议是第三代移动通信的基础上,使许多这样的富媒体服务的可能性。这是在智能手机将真正闪耀~基于GSM的UMTS(通用移动通信系统是不使用,它被称为W - CDMA技术。然而,工作平台,设计了一种UMTS与GSM系统的部署,但它似乎不慢了。在这一平台的广泛传播,成为实现的,它将人的智能手机revolutionize的方式使用的设备。 1.3智能手机短信 电子邮件和文本信息,如即时消息,是一个广泛使用的个人电脑连接到互联网上。这让义使用类似的模式在移动通信设备。下面是支持的通讯功能的智能手机。 1.3.1短信 SMS短消息服务是代表。让手机用户的短信发送和接收短消息到160字符的文本。这些消息被发送,只有在手机与小延迟和CAN发生甚至当语音呼叫是在进步的。SMS是好适合许多类型的通信交换和更少的侵入而使语音呼叫。GSM短信通信平台的一部分,是用通过手机和全世界。SMS是尚未在美国广泛使用,是一种流行,但在低速。短信是一个标准的智能手机的功能,在线今日。 1.3.2彩信 MMS是Multimedia Messaging Service,简称,是一个延长的能力,提供了短信发送的媒体数据,如图片,音频和视频与您的文本消息沿。MMS是由于他们对自然和智能手机的音频和视频功能。例如,用户可以捕捉到智能手机的标志性的图,它的快速语音记录的评论instantly和发送它到另一个移动电话用户。 MMS消息被发送到的人谁,甚至可以发送短信的能力只有通过文本链接到URL的浏览器(含MMS消息。你还可以发送和接收MMS消息的电子邮件帐户之间的智能手机和一个从PC使用。 1.3.3电子邮件 有能力保持跟踪你的电子邮件,而在道路上是一个标准的智能手机的功能中发现的。以高分辨率显示和输入方法scrollable alphanumeric感觉非常不同,它不来自电子邮件的智能手机上的PC。允许用户建立POP3和IMAP电子邮件帐户的多。 66 码农毕业设计下载网:www.manong365.com 1.3.4传真 许多智能手机的能力,包括发送和接收传真,或可定制的操作系统和传真的软件。 1.4网页浏览 上网浏览是在智能手机的标准功能。有许多不同的浏览器可用,他们下降到两个主要类型:HTML和WAP(无线应用协议)。 1.4.1 WAP WAP(无线应用协议),这是代表,是speci,上互联网浏览在线设计资源受限的设备。包括轻量级标记语言的设计来减少所需的处理功率和内存的移动设备到Web页面的渲染。WAP页面是可用的,确保在小屏幕上。标记语言:WML和XHTML(移动pro,le)。 在许多情况下,使用代理服务器,这将automaticallytranslate传统的HTML标记语言的WAP网站之前转移到移动设备。这是一个已知的transcoding。 1.4.2网页 虽然是非常重要的是早期的WAP(无线应用协议)的移动设备,智能手机目前有更好的记忆,处理能力和显示。 为此,包括传统的HTML是网站浏览器直接加载在本机格式类似于很多智能手机的浏览器HTML电脑的浏览器,通常具有WAP–为有时结合在一浏览器的能力适宜。 1.5本地设备通信的特点 智能手机除了基本的蜂窝网络接入各种通信功能。心灵术士发现有一个手机操作系统,可以授权给其他厂商使用他们的移动产品的需求,而且他们的EPOC操作系统是适合这。当时,手机行业正在寻找一个合适的手机操作系统,一般是使用EPOC感兴趣。1998年六月,软件团队走出自己的EPOC操作系统,Symbian是出世。Symbian成立的一个合资企业拥有的其他主要手机厂商以及Psion,随着许可EPOC操作系统和改进的主要目标。 这些功能让智能手机与其他设备直接连接,包括个人电脑,PDA,智能手机和其他无线耳机,进行各种各样的数据传输功能。下面是设备的通信手段流行的装置,以及它们的一些应用。 1.5.1 USB /串行电缆连接 智能手机可以通过USB或串行电缆连接到PC(从手机的变化)。这种高速链路通常用于下载新的应用程序的智能手机以及同步用户的数据,如日历和联系人。用户也可以使用电脑的高速网络直接连接 智能手机更快速的网络访问可以通过蜂窝网络实现。许多产品提供一个摇篮, 智能手机可以插入,无论是PC连接和手机的电池充电。 1.5.2红外(IR) 67 码农毕业设计下载网:www.manong365.com 智能手机能够通过红外端口与PC或PDA之类的其他装置。你都可以做,可以用USB或串行电缆的事情,但没有插入任何电线。红外需要设备之间的连接线的视线,电视遥控器一样。 1.5.3蓝牙 蓝牙是一种短距离无线技术,使设备,Nd和互相连接。而技术如GSM取代长线,蓝牙取代短丝连接各种设备的鼠窝。不像红外不需要蓝牙,瞄准线要穿过墙壁连沟通。 带蓝牙技术你连接更方便的PC和PDA下载和同步用户的数据应用比你能与电缆或红外。除了智能手机连锁提供基本的PC机,蓝牙技术使更多的设备devicencommunication场景可能。比如你能捕捉你的手机,图片发送到附近的打印机打印。为智能手机另一用途是免提作业无线耳机。 一些智能手机可以作为一种接入蜂窝网络调制解调器。在这种情况下,一个设备如PC连接到智能手机通过蓝牙技术提供与互联网连接的电脑。 随着越来越多的设备变得可用,有蓝牙功能的智能手机,很多新的可能性。 1.6移动操作系统 过去的手机之类的,并不需要复杂的操作系统的便携式设备。这些早期产品采用了简单的通常的专有的,系统。在许多情况下,他们没有使用的操作系统和全部软件仍然,固定在设备的只读存储器(ROM)。现在,移动设备,如PDA和智能手机有更大的动力和硬件实现复杂的,丰富的媒体(下载)的应用程序,这显然是需要一个复杂的操作系统。 1.6.1什么是好的智能手机操作系统, 智能手机设备有一定的特点,不同于传统的台式电脑,必须通过一个智能手机操作系统处理: •资源有限的硬件的智能手机应该是很小的,有长的电池寿命和成本尽可能小。为了满足这些要求,智能手机等移动设备,这样,有限的内存和处理能力相比,台式电脑和笔记本电脑。操作系统必须使用硬件资源节约–特别记忆。不仅本身必须使用内存仔细操作系统,而建筑也helpos应用限制使用内存提供支持,以及让他们处理低内存的情况下优雅。 •鲁棒性的用户希望手机能平稳,不会容忍装置锁定。这是任何一个全功能的操作系统,由于系统软件本身的复杂性的挑战;然而,它特别具有挑战性的资源有限的设备如智能手机,也让第三方应用–可能存在质量问题–被下载。不仅要操作系统本身被设计来避免崩溃,它也必须为应用程序提供后续支持功能和政策,允许设备处理程序错误(如提到之前)从内存的情况下,没有锁定手机。 有限的用户的硬件操作系统应该实现的用户界面环境,EF,高效和直观的使用•用户界面,尽管规模较小的屏幕和智能手机有限的用户输入功能。同时,屏幕尺寸和输入能力不同,不同模型之间的智能手机,所以UI架构应该,灵活的,可定制的形式变化的因素。 •库支持的智能手机操作系统中应该包含中间件库和API,实现抽象的智能手机功能的功能框架。其目的是提供功能一致性和减轻软件开发。智能手机中间件的 68 码农毕业设计下载网:www.manong365.com 例子包括软件框架的电子邮件,短信,彩信,蓝牙,密码学,多媒体,和GSM / GPRS用户界面功能,–的智能手机支持更多的功能,更好的。 •应用开发支持智能手机买家想知道有很多很好的应用,可为他们的设备,而且他们可以期待更多更好的软件,它在未来。 为了让这成为现实,操作系统必须有良好的软件开发工具,支持,培训和文档。的诺基亚9500是诺基亚的高端系列手机最新的智能手机,被称为传播者。传播者看起来像传统的手机(虽然他们是重一点),除了开启的情况下到一个易于阅读的景观展示和QWERTY键盘。他们使用80系列Symbian操作系统的用户界面。他们有一个640×200像素屏幕4K的颜色(不是触摸屏)。该设备包括一个WAP和HTML浏览器以及电子邮件和短信支持。用户输入是通过键盘(这是进入文本的最简单的智能手机)和软标签的钥匙沿着显示右侧。 越生产开发商,比较强大,易于使用的和无缺陷的程序会对手机出现。一个小历史Symbian 1.7了Symbian OS的创作能够被追溯到一个优秀的团队软件开发在公司Psion,市场在手持式计算机先驱。之后,心灵术士的的掌上设备为球队创造了几代软件的,对象操作系统进行专门设计叫做EPOC,为移动计算设备,进行独特需求。 心灵术士发现有一个手机操作系统,可以授权给其他厂商使用他们的移动产品的需求,而且他们的EPOC操作系统是适合这。当时,手机行业正在寻找一个合适的手机操作系统,一般是使用EPOC感兴趣。1998年六月,软件团队走出自己的EPOC操作系统,Symbian是出世。Symbian成立的一个合资企业拥有的其他主要手机厂商以及Psion,随着许可EPOC操作系统和改进的主要目标。 快进到今天,我们,Nd,Symbian操作系统–现在被称为Symbian OS–是在智能手机市场的主要参与者,居住在今天的智能手机的大多数设备。对称边的诺基亚,松下,心灵术士,三星和索爱共同拥有,西门子,一起,代表手机行业的一个重要部分。 1.7.1 Symbian操作系统概述 Symbian操作系统是从地面移动通信设备的设计。而一些竞争的操作系统(如微软的智能手机操作系统)操作系统编写的大发展,更多的资源装载系统,Symbian操作系统从另一个方向。Symbian操作系统的早期版本(称为EPOC)将运行在设备只有2 MB内存。 Symbian操作系统是一个多任务的操作系统,功能包括,文件系统,图形用户界面框架,支持TCP / IP多媒体,所有的通信协议栈和图书馆功能的智能手机。 Symbian操作系统具有软件开发包提供给第三方应用开发。同时,该操作系统的硬件层是抽象的,所以,手机厂商可以端口操作系统特定的,C要求他们的电话。 1.7.2一个OS,各种口味 它是具有挑战性的创建一个操作系统,提供了共同的核心能力和一致的编程环境在所有智能手机–同时允许制造商来区分他们的产品。智能手机有许多不同的形状和大小不同的屏幕尺寸和用户输入功能;用户界面软件的需求不同,这些差异,T。 69 码农毕业设计下载网:www.manong365.com 有,框架Symbian OS允许不同柔性用户界面上的核心的操作系统功能存在。过程要灵活,不,:有两个原因的做法是不明智的过多用户界面,代码重用在不同的设备和抑制太多工作是由OEM需创建智能手机GUI从头开始。 所以,给手机制造商的一个起点,Symbian创造了一些参考平台,每个包装的Symbian OS的核心功能以及一个匹配的智能手机用户界面的基本形式因素(屏幕尺寸和输入能力)。这在一开始是非常重要的;想法是让智能手机厂商选择最接近他们的手机的硬件特性的参考平台,并以此作为自己的定制很多包装好的组织者和游戏应用的一个起点。deviceplugs了为摇篮,通过USB在下载应用、同步用户的数据连接到电脑。IR也支持蓝牙。在P900具有既可以拍摄静态图片和视频一体化摄像机采用MPEG-4记录。它包含一个结合WAP / HTML浏览器,音频和视频播放,邮件(带附件),短信和彩信。该器件包含16 MB的用户存储内存,支持外部存储卡扩展。 通信P900支持GSM 800,1800和1900,GPRS和GSM拨号通信。 1.8.2诺基亚6600 诺基亚的6600(如图1.2所示)是一个基于60系列的手机有176×208像素,65K色屏幕。从60系列模型,该设备没有触摸屏的输入都是通过数字键以及两标记的软按键。 像P900,该设备有一个可拍摄静态图片和视频摄像机。该装置具有诺基亚VPN软件以及数字版权管理功能,所以你可以购买和播放音乐,使用这种保护。该装置具有用户内存MB 6的MMC卡是可扩展的。此外,内置的软件包括一个WAP浏览器和媒体播放器,它支持电子邮件,短信和彩信。连接到其他设备通过蓝牙技术和红外的支持,以及PC机通过USB连接。 6600支持GSM通信的800,1800和1900,GPRS、演进。 9500 Communicator 1.8.3诺基亚的诺基亚9500是诺基亚的高端系列手机最新的智能手机,被称为传播者。传播者看起来像传统的手机(虽然他们是重一点),除了开启的情况下到一个易于阅读的景观展示和QWERTY键盘。他们使用80系列Symbian操作系统的用户界面。他们有一个640×200像素屏幕4K的颜色(不是触摸屏)。该设备包括一个WAP和HTML浏览器以及电子邮件和短信支持。用户输入是通过键盘(这是进入文本的最简单的智能手机)和软标签的钥匙沿着显示右侧。 最初的传播者是诺基亚9200系列设备。的诺基亚9290支持GSM 1900的美国,诺基亚9210支持GSM 900和1800。 9200在系列最容易传播者,使用因大键盘屏手机,有两个主要的缺点(他们称其大小:取为”砖”)及高速传输数据(他们只支持CSD缺乏风格拨号网络)。然而变了的最近推出的9500、9300个交际者诺基亚。 诺基亚相比的9200大系列9500 Communicator产品更小、更轻,并为GPRS更快的边缘数据传输支持机制。还有WiFi,赫然在列,支持能力和蓝牙技术本地通信。第9500基于后诺基亚Symbian OS版比9200系列的手机(v7.0s相比包括多v6.0)–归位,要同时连接的两连接(如WiFi和支持优势)–那么你可能是用边却在WiFi相同时间下载为例,邮件浏览。9500为80 MB诺基亚的内应 70 码农毕业设计下载网:www.manong365.com 记忆和支持MultiMediaCard(MMC)。基于开源的Linux操作系统的智能手机已经出现在市场上。有使用开源操作系统Linux的许多优点,如。没有成本和机会进入开源Linux社区是有吸引力的。这使得Linux的成长,不仅对服务器和PC的市场空间,而且在嵌入式设备包括掌上电脑。锋利的,例如,发布了基于Linux的PDA。Linux是不可能称霸智能手机市场的任何时间很快,但有智能手机被释放它,它可能会在一些地区流行,如亚洲。摩托罗拉是Linux的一个显著的支持者,已经发布了基于该操作系统的智能手机A760。 摄像机还包括本手机。诺基亚于9500 Communicator是诺基亚在9300更小。这种手机作为9500相同诺基亚也相机和除外,WiFi的通信无。然而,这是明显,明显较小,传播者是针对那些对COM的可用性吸引用户—municator尚未关闭的大小和以前的设备重量。 1.9其他智能手机操作系统 智能手机市场的竞争,因此,毫不奇怪,有智能手机操作系统Symbian OS的其他选择,除了。如果你已经有了微软的Visual C + +在您的系统(你是一个谁的SDK支持智能手机的发展),你可以坚持,直到你获得足够的经验来确定,如果你想买一个。另一种选择是下载一个免费试用的IDE如Borland移动IDE(确保在您的SDK)直到你决定你需要的东西。智能手机除了基本的蜂窝网络接入各种通信功能。心灵术士发现有一个手机操作系统,可以授权给其他厂商使用他们的移动产品的需求,而且他们的EPOC操作系统是适合这。当时,手机行业正在寻找一个合适的手机操作系统,一般是使用EPOC感兴趣。1998年六月,软件团队走出自己的EPOC操作系统,Symbian是出世。Symbian成立的一个合资企业拥有的其他主要手机厂商以及Psion,随着许可EPOC操作系统和改进的主要目标。 在写作的时候,Symbian OS的享有这一市场的领先,但竞争有望成为,商务智能手机越来越普及,厂商发布更多的手机不是基于Symbian OS。有将决定谁将最终赢得这场市场的许多因素(不幸的是并非所有基于谁做的最好的智能手机),但这不是本书的主题。 本节给出了三个操作系统,Symbian OS的智能手机市场竞争的一个简短的概述:Palm OS和Linux的智能手机操作系统,微软。 1.9.1 Palm OS Palm操作系统在PDA市场的主要参与者和有可能做的更为创造手机市场比任何其他公司。Palm PDA产品,用手掌的试点开始,被认为是简单的使用。Palm OS,Symbian OS是一样,地下资源的便携设备设计特别,。 由于Palm在PDA市场的主要力量,与无线通信介绍,早在Palm VII的设备,这是很自然的,Palm OS是智能手机市场的一个很好的,T。其中一个最大的优势是大量的Palm PDA的应用程序,也可以运行在他们的智能手机。还有一个重要的,斜面底座Palm OS应用程序开发人员和文档。 Handspring Treo 600是一个基于智能手机的掌上操作系统的一个例子。它同时支持GSM和CDMA(通过不同的模型)。Treo 600的所有标准的智能手机功 71 码农毕业设计下载网:www.manong365.com 能,如短信,彩信,电子邮件,浏览网页,也可以通过USB连接到电脑。它有一个160×160像素的彩色显示屏,内置拇指键盘和集成数码相机。 智能手机1.9.2微软 毋庸置疑:Windows是主流操作系统的PC,微软而也日益受到移动计算存在–器件,包括智能手机。这开始与低资源的手持设备的Windows CE的创造(或其他的嵌入式设备)。 Windows CE使用许多相同的API和架构基于桌面的Windows,包括Windows用户interfacesuitable子集的手持设备。该SDK包含示例项目的源代码,帮助你熟悉Symbian操作系统。智能手机市场的竞争,因此,毫不奇怪,有智能手机操作系统Symbian OS的其他选择,除了。如果你已经有了微软的Visual C + +在您的系统(你是一个谁的SDK支持智能手机的发展),你可以坚持,直到你获得足够的经验来确定,如果你想买一个。另一种选择是下载一个免费试用的IDE如Borland移动IDE(确保在您的SDK)直到你决定你需要的东西。智能手机除了基本的蜂窝网络接入各种通信 功能。心灵术士发现有一个手机操 作系统,可以授权给其他厂商使用他们的移动产品的需求,而且他们的EPOC操作系统是适合这。他们发布了Pocket PC和PDA,跑的基于Windows CE的操作系统的Pocket PC操作系统。尽管作为广泛使用的掌上设备,掌上电脑是很重要,不能在PDA市场。为2003,Windows CE和Pocket PC操作系统合并到Windows Mobile系列。 微软还希望在智能手机市场是一个具有统治力的球员,并且已经发布了另一个变化称为WindowsMobile软件Windows Mobile智能手机。随着Palm OS,Windows Mobile的优势是提供Pocket PC应用程序,可以运行在微软智能手机。此外,它支持多是占主导地位的桌面PC市场–微软Word和Excel应用程序的微型版本,例如。 其他的优点是大窗户开发基地,形成带动大量编程文档/知识库,和强大的开发工具已经定制Windows桌面和移动操作系统的可用性。 一个智能手机,使用Windows Mobile的一个例子是摩托罗拉后,也出现了掌上电脑的功能,随着手机的语音和短信功能。智能手机已经176×今年的220像素65K色GSM GPRS支持屏幕和。另一个例子是橘色SPV。 1.9.3 Linux 基于开源的Linux操作系统的智能手机已经出现在市场上。有使用开源操作系统Linux的许多优点,如。没有成本和机会进入开源Linux社区是有吸引力的。这使得Linux的成长,不仅对服务器和PC的市场空间,而且在嵌入式设备包括掌上电脑。锋利的,例如,发布了基于Linux的PDA。Linux是不可能称霸智能手机市场的任何时间很快,但有智能手机被释放它,它可能会在一些地区流行,如亚洲。摩托罗拉是Linux的一个显著的支持者,已经发布了基于该操作系统的智能手机A760。 72
/
本文档为【基于JSP的酒店网上订房系统论文】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索