




免费预览已结束,剩余26页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
厦门大学本科毕业论文WAP手机黄页系统摘要 Wireless Application Protocol简称WAP,它的网络架构是由WAP网关、WAP客户端和WAP内容服务器3部分组成。WAP将有线通信网与移动通信网紧密联系起来;整合了移动通信网络资源;解决了移动通信信息源的问题;注重解决了移动中数据通信的安全性问题;并将在3G业务过渡中起到重要作用。随着社会的发展进步,黄页以不同的媒介为载体出现在大家面前,可以把黄页大致分为四类:纸质黄页杂志、网上黄页、电子杂志和手机黄页。它们有一个共同的目标,那就是为商家提供发布信息的平台,不同的是它们的展现模式与媒介。作为一个智能化的信息搜索平台,手机黄页将企事业单位及个人注册单位名称、产品、项目服务或个人姓名等信息录入数据库后,手机用户只要上了手机黄页,就可以查询到企事业单位及个人的相关信息。它结合了传统的电信业务、互联网业务和移动通信业务的多种技术。本WAP手机黄页系统就是按照MVC模式进行设计的,以J2EE作为开发平台,Eclipse作为开发工具,Tomcat5.5作为Web服务器,采用WAP技术,使用JDK1.5开发包在Windows XP系统环境下进行开发,以SQL server 2000为数据库服务器,以M3Gate作为手机模拟器(或WML浏览器)。本系统支持多功能查询和即时拨号功能。关键词 手机黄页 WAP JSP JavaBean SQLWAP Mobile Phones Yellow Pages System Abstract Wireless Application Protocol called WAP, It is the network structure from the WAP gateway, WAP client and WAP content server composed of three parts. WAP will be wired communication network and mobile communication networks closer together; be integration of the mobile communication network resources; solve the mobile communications information sources; pay attention to solving the mobile data communications security problems. 3G service will play an important transitional role. Along with social progress and development, the Yellow Pages in a different media as the carrier appeared in front of everyone. Yellow Pages can be roughly divided into four categories: Yellow Pages in paper magazine, online Yellow Pages, Yellow Pages in electronic magazines and Yellow Pages by mobile phones. They have a common goal, which is for businessmen to provide a platform for dissemination of information; the difference is the display mode with the media. As an intelligent information search platform, mobile phones Yellow Pages to enterprises and individuals registered names of units, products, project services or personal names and other information into databases, mobile phone users on the phone as long as the Yellow Pages, can learn about the institutions and individuals relevant information. It combines the traditional telecommunications business, the Internet business and mobile communications businesses a wide range of technologies. This WAP mobile phones Yellow Pages system is in accordance with the MVC model designed to J2EE as a development platform Eclipse as a development tool, Tomcat5.5 as Web servers, and WAP technology, using JDK1.5 development kits in Windows XP system environment for development, SQL server 2000 for the database server, M3Gate phone as a simulator (or WML browsers). The system supports multi-functional inquiries and immediately dial-up function.Key words Mobile phones Yellow Pages WAP JSP JavaBean SQL 31目录第1章 WAP技术概论51.1 WAP技术简介51.1.1 WAP是什么51.1.2 WAP 的体系结构及应用51.1.3 WAP 应用的网络协议结构61.1.4 WAP的特征和局限性71.2WAP技术对于移动数据业务发展的影响81.3 本章小节9第2章 手机黄页的现状研究102.1什么是黄页102.2手机黄页的行业背景102.3 现有比较成熟的手机黄页系统分析112.4 本章小节12第3章 WAP手机黄页系统的实现133.1 JSP、WML与WMLScript技术简介133.1.1 JSP技术133.1.2 WML技术133.1.3 WMLScript技术133.2 MVC设计模式简介143.3 WAP手机黄页系统的设计与实现143.3.1 开发工具与环境143.3.2 系统概要设计153.3.3 系统的设计模式153.3.4 系统中JavaBean的使用设计163.3.5 数据库模块设计163.3.6 开发过程中遇到的问题20第4章 总结22致谢23参考文献24附 录25ContentsChapter 1 Introduction to WAP Technology51.1 WAP Technology51.1.1 What is WAP51.1.2 WAP Architecture and Application 51.1.3 The Network Nrotocol Architecture of WAP Application61.1.4 The Features and Limitations of WAP71.2 WAP Technology for Mobile Data Business Development Impact81.3 The Chapter Details9Chapter 2 The Status of The Mobile Phones Yellow Pages Study102.1 What is The Yellow Pages102.2 The Industry Background of Mobile Phones Yellow Pages102.3 More Mature Existing Mobile Phones Yellow Pages System112.4 The Chapter Details12Chapter 3 WAP Mobile Phones Yellow Pages System133.1 JSP, WML and WMLScript Technology133.1.1 JSP Technology133.1.2 WML Technology133.1.3 WMLScript Technology133. 2 MVC Design Pattern Profile143.3 WAP Mobile Phones Yellow Pages System Design and Implementation143.3.1 Tools and The Environment143.3.2 System Design153.3.3 System Design Patterns153.3.4 System Design Using JavaBean163.3.5 Database Module Design163.3.6 Development Process Problems Encountered20Chapter 4 Summary22Acknowledgement23References24Supplement25第1章 WAP技术概论1.1 WAP技术简介1.1.1 WAP是什么WAP是Motorola、Nokia、Ericsson和美国的软件公司P最早倡导和开发的无线应用协议Wireless Application Protocol(简称WAP),它是使移动通信设备可靠地接入互联网的国际认可标准,是一种定义在窄带宽上传输数据的通信协议。WAP旨在定义通过移动通信手段访问internet的内容,在internet已有结构和开发的基础上,使得移动终端能方便地使用互联网上的内容。移动信息技术之所以青睐WAP的主要原因之一,是它结合了当今发展最为迅猛的两种技术:无线通信技术和互联网技术1。1.1.2 WAP 的体系结构及应用WAP网关的协议堆栈分应用层、会话层、事务处理层、传输层、数据报协议层和承载层6层2。WAP网关协议栈如图1-1所示。图1-1 WAP网关协议栈2(1)应用层应用层位于互联网协议和WAP协议栈之上。应用层在移动用户侧作为服务器,在互联网侧作为客户。该层的主要作用是将移动用户侧的会话层请求应答与互联网侧的HTTP请求应答相互转换。此外,应用层还具有WAP网关对WAP终端用户的认证等功能。(2)会话层会话层为应用层提供两种会话方式:一是面向连结的会话流程;二是采用数据流方式,所使用的协议为HTTP协议。该层的核心功能是以二进制方式实现HTTP,同时提供Push和Pull两种数据传输服务,其中Pull服务利用HTTP/1.1的请求响应机制实现。会话层提供3层Push机制用于数据传输:在已存在的会话上下文中带确认的数据推送、在已存在的会话上下文不带确认的数据推送和没有上下文中不带确认的数据推送。(3)事务处理层事务处理层为会话层面向连接的业务提供数据传送服务,主要完成事务处理和消息重传,以及确认、重复消息的删除等工作。该层利用重传和确认机制,保证数据报服务的可靠性,不需要明显的建立和终止连接等过程。事务传输层提供3种事务处理功能:不可靠消息通信和无确认;可靠消息通信和无确认;可靠消息通信和确认。用户可以根据自己的需要采取不同的事务处理方式,它采用HTTP协议。(4)传输层传输层的主要功能是保证数据传输的一致性、数据传输的保密性和提供鉴权机制,丢弃未经证实的数据。在互联网侧使用的协议为SSL协议。(5)数据报协议层数据报协议层运行在不同网络类型支持的数据承载层上,它使用下次承载能力为上层提供一致的服务。数据报协议层为上层提供通用接口,使上层协议与下层承载网络无关,把传输层适配到指导的下层承载网络中。数据报协议层根据不同的端口号,区分上层的不同应用,可以同时传送多个上层传来的业务。(6)承载层承载层的功能是实现数据传输,数据报协议层的承载层可以是SMS、CSD、GPRS和CDMA等。1.1.3 WAP 应用的网络协议结构WAP不能直接采用Internet的网络模型结构,因为WAP客户端和服务器端分别位于两种不同的领域,即无线领域和有线internet领域。因此WAP网络架构由WAP网关、WAP客户端和WAP内容服务器3部分组成。其中,核心设备WAP网关起着协议的翻译作用,是联系移动网与因特网的桥梁;WAP内容服务器存储大量的信息,以供WAP手机用户访问、查询和浏览等3。图1-2表明 WAP应用的网络协议结构。Web服务器客户端WML WML-ScriptWAP网关WML 编码器WMLScript编码器协议转换器WAPHTTPCGIScriptsContentWML Decks with WMLScript图1-2 WAP应用的网络协议客户端主要指手机,PDA等移动终端设备,客户端通过手机移动网络发送一个WAP请求到WAP网关,网关将该WAP请求转换成HTTP请求,并通过互联网将该请求发送到相应的Web服务器,Web服务器将请求的结果返回给WAP网关,网关将该结果转换成更适合在移动网络上传输的二进制WML数据流,并发送给客户端。最后客户端的WAP浏览器将收到的结果显示出来。WAP的应用程序内容格式与WWW的内容格式类似,而内容的传输方式也是使用WWW通信协议的部分标准。WAP技术是重写现有的Internet 协议, 使其与现有协议兼容, 但更适合于无线应用这一特殊环境。1.1.4 WAP的特征和局限性1. 移动终端显示界面与内存1WAP是为了定义通过移动终端访问互联网中的海量信息,这样移动终端就可运行一种微型浏览器。它非常像PC的浏览器。但这种用户界面明显的局限性在于:移动电话的显示屏较小。因为移动的手持设备内存有限,因此在使用时需要下载WAP应用程序,用完后或暂时不用时再把程序清除。2. 提供WAP服务的网站1有专家说,要让手机识别网站,首先网站上需要有用WAP脚本语言编写的网页。这是实现手机上网冲浪的关键。WAP的一个重要特性是可以在不同的无线电网络体系结构上运行应用产品,如GSM、CDMA和DECT。这是因为WAP有效地包容了大量不同的软件协议,允许应用产品能独立于传输格式而运行。3. 通信带宽1传输速率一直是困扰网上通信的问题,无论是有线还是无线互联网,同样需要解决如何提供数据上传下载的速率。尽管WAP在设计时就考虑如何最大限度利用无线电通信线路(通过数据压缩),但是最终都将会不可避免地采用理论上数据传输速率达115kbit/s的GPRS(通用分组无线服务)等更高带宽的无线系统。当然,最终提供像网络浏览和视频传输等WAP服务的移动通信系统预计将是第三代的UMTS,它将使无线电数据传输速率达384kbit/s2Mbit/s。4. 协作1WAP要实现的话,需要来自各方面的共同协作,如手持设备制造商、经营移动电话业务的公司、ISP、应用软件开发商以及主干电话网络的经营者。1.2 WAP技术对于移动数据业务发展的影响1. WAP将有线通信网与移动通信网紧密联系起来。由于TCP/IP的桥梁作用,有线通信网络目前正在实现融合,这意味着一旦用户口袋里的终端用WAP方式与有线网络进行通信时,将可以与其它信息网络通信4。2. WAP整合了移动通信网络资源。当客户选择不同的移动网络进行通信时,保护客户的消费习惯(在internet世界就是点击习惯)就是显得尤其重要。WAP标准的制定独立于承载网络,也就是说,不论用户使用什么网络,都有可能获得相同的信息。抛开网络承载能力的差异,对于用户来讲,由于服务的一致性导致网络的透明性,用户只需要点击。而WAP单纯比较不同体制的移动通信网络质量就显得意义不大。网络的差异将更多表现在能否提供更好的服务尤其是WAP业务,使不同体制的移动网络将长期共存4。3. WAP解决了移动通信信息源的问题。由于WAP定义的标准语言WML可以使得任何第三方独立于网络运营商开发针对移动的数据应用,全社会将参与到信息加工、处理和发布的工作,另外已经存在的HTML 内容也可以通过WAP网关/代理转换被移动用户接收4。4. WAP注重解决了移动中数据通信的安全性问题。由于WAP 2. 0采用了WTLS (Wireless Transport Layer Security) 无线传送层安全技术和WIM(Wireless Identity Module) 无线身份识别模块技术。使得其支持多种鉴权方式(匿名访问、客户端鉴权和服务器端鉴权) 、安全会话控制和数字签名等多种安全措施,比较WAP 1. X能够提供更为完善和有效的端到端的安全机制。因此在认证支付、银行交易、搏彩、移动购票、移动拍卖和股票交易等多个领域都有着越来越多的应用4。5. WAP将在3G业务过渡中起到重要作用。现在普遍在讨论3G的过渡问题,可以从三个层次上理解,即无线接入网络的过渡、核心网的过渡和业务的过渡。在这三个层次的过渡中,业务的过渡是最重要的,所谓3G业务过渡必须要有在2G、2. 5G和3G中共有的业务,在2G、2. 5G中要先逐步培育出庞大的用户资源,然后在适当的时间、适当的地点再刺激引导更大的消费,使得引入3G网络更为经济和必要。从现在2G业务中来看,还看不到这样的业务,因为SMS和话音通信都是窄带业务。现在WAP业务可以发挥这一作用,主要原因在于WAP是伸缩性很好的业务,在启动3G业务市场的候,可以窄带传输,当宽带业务需求临时,可以在3G网络上宽带传输,用户的消费习惯没有变,网络上积累的信息资源、WAP设施投资也能得到充分的保护4。1.3 本章小节WAP延伸了现有Internet上的标准并加以简化,以适合移动通信工具的特性,利用移动通信的无线网络(由于现有的无线设备,如移动电话等其带宽、屏幕大小及CPU内存有限,因此必须加以简化),以WML(Wireless Markup Language 无线标记语言)的语言格式,通过无线网络传送信息到移动电话、PDA等手持式设备(Handheld Device)上。WML是一种延伸的标记语言XML的类型,它是XML的子集合。本章主要对什么是WAP、WAP 的体系结构及应用、WAP 应用的网络协议结构、WAP的技术特点与局限性、以及WAP技术对于移动数据业务发展的影响进行简要介绍,对WAP技术进行基础了解,为大家更好的理解下文WAP技术在本论文课题中的应用作好准备。第2章 手机黄页的现状研究2.1什么是黄页“黄页”起源于北美洲,1880年世界上第一本黄页电话号簿在美国问世,至今已有100多年的历史。黄页是国际通用按企业性质和产品类别编排的工商电话号码簿,相当于一个城市或地区的工商企业的户口本,国际惯例用黄色纸张印制,故称黄页。目前我们常说的黄页就是指电话号码簿,目前几乎世界每一个城市都有这纸张为载体所印制的电话号码本(黄页)。随着社会的发展进步,黄页以不同的媒介为载体出现在大家面前,可以把黄页大致分为四类:纸质黄页杂志、网上黄页、电子杂志和手机黄页。它们有一个共同的目标,那就是为商家提供发布信息的平台,不同的是它们的展现模式与媒介。2.2手机黄页的行业背景随着手机用户的不断高速增长,手机市场上的增值业务变得越来越重要。日渐普及的移动通信技术正在丰富着我们的日常沟通和获得资讯的方式。手机黄页行业在把握传统的电信业务、互联网业务及移动通信业务将无缝融合的基础上,充分考虑了移动终端设备和互联网的普及程度,适时推出了结合黄页与搜索引擎功能的移动手机大黄页。该业务的拓展,不但丰富了手机的应用功能,而且为商家提供了发布信息的全新移动媒体,同时也在现有移动网络条件下,为移动运营商数据业务创造了新的增长点。作为一个智能化的信息搜索平台,手机黄页将企事业单位及个人注册单位名称、产品、项目服务或个人姓名等信息录入数据库后,手机用户只要上了手机黄页,就可以查询到企事业单位及个人的相关信息。它结合了传统的电信业务、互联网业务和移动通信业务的多种技术。伴随着2.5G先进网络系统的建立,市场上支持2.5G以及K-java和WAP应用已经成为手机的基本配置。二者的结合,为移动增值服务的供应商和享用者提供了更优越的发展平台。与传统黄页相比,手机版的黄页更加方便快捷,任何可以上网的手机,都可以通过手机黄页随时随地查阅企事业信息,不受时间和地点限制。与传统的一个电话只能查两三个号码的电话查询方式相比,手机黄页查询的信息量更大、查询更为方便,可为手机用户节省大量的时间和精力。2.3 现有比较成熟的手机黄页系统分析现有比较成熟的手机黄页系统有以下4个:1) 空中搜“空中搜”是由北京万跃科技发展公司推出的手机大黄页,是国内第一款手机黄页系统。该产品的特点是:提供可选择地区、单位名称或经营内容的免费查询,可输入多个关键字进行搜索,可得到分页显示的链接信息。访问该产品有两种途径:A. 用户可用手机直接上wap(手机登陆到 )进行查询;B. 用户可以下载客户端j2me客户端软件AirSoso(该软件可从wap网页上下载到手机中,也可用电脑登陆 后下载软件再传输到手机中)进行查询。2) 随身搜随身搜是专门为摩托罗拉手机E6,A1200系列产品设计的客户端软件。该产品的特点是:选择地区、输入关键字,即可获得中国电信为您提供的,满足您搜索条件的黄页信息链接列表;您也可通过高级查询功能准确定位搜索目标。点击所得的信息链接,便可查看详细资料,再点击图标可直接拨打电话,并可通过短信将查询结果发送给您的朋友。不过,要访问该产品,用户只能使用摩托罗拉手机系列产品并安装客户端。3) 掌中黄页:掌中黄页是由中国电信黄页与易图通共同推出的一款基于手机WAP平台的实用信息查询业务。它集聚企事业信息查询、各地分类消费信息查询和全球电话区号查询于一体,独特的“电话号码反查企业信息”功能和独有的地图显示功能,为该款业务加分添彩!业务依托中国电信海量数据库和成熟的地图技术,逐步完成中国黄页数据库的无线化,实现全国企事业和消费信息WAP查询。逐步加强中国电信黄页网站的互动功能,搭建用户与企事业之间的无线有线沟通桥梁。4) 短信网址短信网址即是在移动互联网上用自然语言注册的网址,利用SMS短信或者WAP寻址方式,为手机访问互联网内容而建立的寻址方式,类似于互联网上的“域名”。简单地说,就是手机用户将要查询的内容编辑成短信,发送到一个统一号码,就会收到短信形式的“袖珍网页”。通过这个网页,手机用户就可以方便地查询相关信息和进行信息互动。如果说,电信传统的黄页是相对静止的,那么短信网址就是动态的、可以随时更新和互动的手机黄页。当然,由于目前手机在线支付尚未实现,短信对于移动商务的作用,仅仅只起到“介绍产品”的作用。2.4 本章小节本章主要对什么是黄页及其分类、手机黄页的行业背景,以及现有比较成熟的手机黄页系统进行简单的说明,达到对手机黄页的概念及其发展现状的粗略了解。第3章 WAP手机黄页系统的实现3.1 JSP、WML与WMLScript技术简介前面已经对WAP技术进行了简要的介绍,本小节就仅对JSP、WML和WMLScript进行介绍。3.1.1 JSP技术Java Server Pages (JSP) 技术是一个纯Java平台的技术,它主要用来产生动态网页内容。JSP是在Servlet技术基础上发展起来的,是在服务器端编译执行的Web数据库应用编程语言,其脚本语言采用Java,完全继承了Java的所有优点。本质上,JSP是Servlet API的一个扩展。一个JSP页面就是在HTML 文件(*.htm, *.html) 中加入Java程序片段和JSP标记, 就构成了JSP网页( *.jsp ) 。JSP具有真正的跨平台特性,符合“Write once, run anywhere”原则;具有标准的数据库接口( JDBC),可以简单快捷的访问任何常见的数据库,为各种常用的数据库提供无缝连接;运行效率更高;可以得到更广泛的技术支持;标记可扩展;能通过异常处理机制有效防止系统崩溃,能利用内存管理机制等提高系统安全性。通过将JSP和JavaBean技术结合可以将显示和业务逻辑处理完全分离开来, 确保工作的高效率5。3.1.2 WML技术WML是建立在XML语言平台上的5,为无线环境量身制作的标记语言,特别适合在性能方面严重受到限制的手持设备。WML是XML的子集,继承了XML 字符集设置,目前支持Unicode2.0。同时,WML也继承了XML对语法的严格要求6。3.1.3 WMLScript技术WMLScript是WAP应用层协议的一部分6,它可以和WML 结合起来,使客户端可以支持更先进的用户界面,实现交互式的页面访问功能,最终达到方便用户和有效利用客户端及信道资源的目的。WMLScript是以ECMAScript(ECMA262)为基础的,但是又做了一定程度的修改,舍弃了其中一些不适合于窄带数据通信方面的要求,以使其能尽最大的可能降低网络数据流量,使目前通信系统中的窄带信道得到有效的利用。WMLScript定义了一套其特有的bytecode编码格式和以Interpreter 为核心的参考体系结构。bytecode是WMLScript脚本源文件经编译后产生的二进制代码,其每一条代码在WMLScript中都有明确的功能含义。Interpreter是WMLScript参考体系中的虚拟解释执行器,它可以逐序 (跳转指令除外) 解释执行bytecode,从而实现脚本编者的预想功能。由于编译之后的bytecode 编码文件可以一次下载,多次执行,这样网络带宽就得到了一定程度的有效利用。这种理想化的Interpreter可用于各种移动终端中,如WAP、手机、个人数字助理PDA 等7。3.2 MVC设计模式简介J2EE采用一个多层次分布式的应用模式,最常见的就是模型-视图-控制(MVC: Model-View-Controller)模式,其体系结构如图3-1所示。Model层实现系统中的业务逻辑;View层实现与用户的交互;Controller层是Model与View之间沟通的桥梁,它可以分派用户的请求并选择恰当的视图以用于显示,同时它也可以解释用户的输入并将它们映射为模型层可执行的操作8。响应请求浏览器及其他客户端设备控制器Servlet视图View模式JavaBean应用服务器数据库企业级服务器图3-1 MVC体系结构83.3 WAP手机黄页系统的设计与实现3.3.1 开发工具与环境本系统以J2EE作为开发平台,Eclipse作为开发工具,Tomcat5.5作为Web服务器,采用WAP技术,使用JDK1.5开发包在Windows XP系统环境下进行开发,以SQL server 2000为数据库服务器,以M3Gate作为手机模拟器(或WML浏览器)。3.3.2 系统概要设计本系统是支持多种查询方式的WAP手机黄页信息系统,查询方式包括:首页快速查询、高级查询、分类查询、常用查询等。1) 首页关键字快速查询:手机用户在首页输入要查询的省份,地区,以及关键字,点击搜索,即可查询相应的包含关键字的黄页信息。2) 高级查询:用户在首页点击相应链接进入,在高级查询里包含3方面:按单位名称进行查询;按经营内容进行查询;电话号码反查企业信息。3) 分类查询:系统将黄页信息分成若干分类,手机用户选择某一分类后,在输入关键字进行查询。4) 常用查询:包含邮政编码查询;常用电话查询;国内区号查询;国际区号查询。手机用户在这可以查到一些常用的信息。5) 黄页信息找茬:手机在查找到所需的黄页详细信息后,若发现信息有误,可通过系统向黄页信息数据库提交正确的信息,等待数据库服务器端确认。6) 实现直接拨打功能,搜索得到的最终详细信息中都会商家的联系号码,用户可以直接点击“拨打”进行拨号,使拨号更加便捷。3.3.3 系统的设计模式本WAP手机黄页系统就是按照MVC模式进行设计的。当用户从移动终端发出WAP请求时,移动终端中的微浏览器把请求传给WAP网关。接着WAP网关把该请求转换成标准的HTTP请求,然后根据URL把HTTP请求传给相应的Web Server。Web Server接收到该请求后,调用相应的Controller,Controller根据请求调用相关的Model,实现具体的业务逻辑。Model将处理完的业务数据反应到相应的View上,最终把View作为响应反馈回去。WAP网关接收到响应内容后,将其转换成微浏览器可以识别的WML格式,然后传给微浏览器。微浏览器收到响应内容后,将其展现给用户。Model层JavaBean来实现,使其封装内核数据和计算功能,提供访问数据库的操作等,形成模型类的数据构成和计算关系,这部分的构成与具体的应用问题紧密相关,在实现过程中尽量重用已有的Bean。View层用JSP来实现,WML语言直接写在JSP程序中,WML的文件类型用进行声明。我们设计了每个视图的显示形式,在与用户的交互操作中,数据输入用WML的标签实现,数据用post方式在Controller和View之间传递。Controller层用JSP来实现,指定对用户操作的响应时间和行为,它建立起Model与View的联系,接受用户的输入,并将输入反馈给模型8。3.3.4 系统中JavaBean的使用设计本系统中最重要的一个JavaBean是DB2.java,它在本系统中经常要被复用。DB2.java采用JDBC技术连接SQLServer2000。在本系统中,需要将搜索到的符合用户输入的记录按分页的形式进行。该需要在首页搜索,高级搜索,分类搜索,以及常用搜索中均有用到,为方便复用,将其设计成一个JavaBean,取名Pagi.java。Pagi.java只是分页显示的一部分,即前期工作,为了能真正实现分页显示,并且在首页搜索,高级搜索,分类搜索等功能模块中均需要显示分页结果,需要设计一个显示结果的JavaBean,取名List.java。该JavaBean的主要功能是使用Pagi.java来显示搜索结果。当用户在搜索结果中点击要查看的记录的详细信息后,系统根据用户的点击,把被点击的企业信息通过搜索数据库再展现出来。由于多个模块都用到该功能,系统将其封装成一个JavaBean,取名Detail.java。企业详细信息展现中会有一个用户找茬的链接,在用户发现所看到错误后,运行用户点击该链接,输入用户认为正确的信息。系统将用户输入的信息录入黄页找茬表。我们将其设计成一个JavaBean,取名DealError.java,以便多处复用。这几个JavaBean相互间的关系如图3-2所示:图3-2 系统中JavaBean之间的关系3.3.5 数据库模块设计1. JDBC工作原理5JDBC (Java Database Connectivity)是Java与数据库连接的标准, 是一个支持基本SQL功能的通用底层API,它在不同的数据库功能模块层次上提供了一个统一的用户接口,提供了独立于特定的数据库系统而实现与网络数据库互联的方式。JDBC具有建立数据库连接、发送SQL语句、处理结果的功能。JDBC的总体结构大致上被分为JDBC API、JDBC驱动程序管理器和JDBC驱动程序。现在大多数的Web应用都是采用三层应用模型的方式来访问数据库。三层应用模型中,客户机只是访问业务逻辑层,而业务逻辑层再通过JDBC访问操作数据库。三层应用模型如图3-3所示:图3-3 三层应用模型图92. 访问数据库的步骤9装载驱动程序:用Class.forName方法来实现。建立数据库连接:用DriverManager接口的getConnection方法取得Connection 对象来实现。建立语句:使用Connection对象的createStatement ( )方法返回一个Statement对象来实现。如果传递给数据库服务器的SQL是带参数的,则要用PreparedStatement对象。发送SQL语句:需要返回结果集的SELECT语句,使用executeQuery ( )方法,查询成功则以ResultSet对象的形式返回查询结果,使用next ( ) 方法和getXXX方法相结合进行数据的检索。如果对数据库系统发送INSERT、UPDATE、DELETE不需返回查询结果的SQL语句,则应当采用executeUpdate ( )方法,返回类型为int,返回值为0,或者是返回数据库表受到SQL语句影响的数据行数。关闭数据库连接:确保及时释放用于连接数据库的相应的资源,Statement和Connection对象都有一个close ( )方法用于此目的。3. JSP与JavaBean结合对数据库的访问访问数据库时,我们重用对数据库进行处理的JavaBean(在本系统中命名为DB2.java),并将JSP和JavaBean技术结合在一起,可以用JavaBean实现业务逻辑和数据库操作的封装,JSP只负责页面的显示。用户端浏览器发送JSP文件请求,JSP文件访问JavaBean,JSP页面独自响应请求并将处理结果返回客户,而使用JavaBean处理所有的数据访问5。其架构如图3-4所示:21请求浏览器JSP文件JavaBean数据库4响应3图3-4 JSP与JavaBean技术结合访问数据库的结构图10我们将对数据库的操作封装在JavaBean中使得数据库的地址、登录用户名和密码等信息都封装在应用程序中,用户在浏览器上看不到任何对数据库操作进行访问的源代码,只有通过JavaBean对数据库进行访问,从而提高了对数据库进行访问的安全性。用户通过WML表单向JSP引擎输入将对数据库进行操作的数据,这些数据保存在JSP的request对象中。JSP引擎用getParameter ( ) 方法获得存放在request对象中的数据,并发送到对数据库操作进行封装的JavaBean,通过JavaBean对数据库进行访问后,返回一个response对象给JSP引擎。JSP引擎再把response对象传给JSP页面,JSP页面包含了一个定义好的格式和从服务器端得到的数据。再由JSP引擎和Web服务器发送一个整理好的完整页面以WML的格式呈现给用户10。4. 数据库表设计1) 所有表的总关系图如下:FKFKFKFKFK分类表黄页表找茬表邮政编码表国际区号表国内区号表洲际表省份表图3-5 所有表的总关系图2) 黄页表表3-1 黄页表描述字段名类型长度/是否可空说明id整形非可空主键name字符型非可空单位名称address字符型非可空单位地址tel字符型非可空单位的联系电话keyWord字符型可空,长度较长企业简介,或业务范围sortId整形非可空外键,指向分类表的idscore整形非可空积分值,排序的时候的主要依据time字符型可空单位的营业时间visited整形非可空点击率,用户访问则程序里增加,也是排序的依据3) 类别表表3-2 类别表描述字段名类型长度/是否可空说明pid整形不可空pid与id合起来作为该表的主键id整形不可空name字符型不可空分类的类别名称4) 找茬表表3-3 找茬表描述字段名类型长度/是否可空说明id整形不可空主键ypid整形不可空外键,指向黄页表的主键name字符型可空用户修改的正确的单位名称address字符型可空用户修改的正确的单位地址tel字符型可空用户修改的正确的单位电话号码keyWord字符型可空用户修改的正确的经营内容userNo字符型不可空用来记录找茬的手机用户的电话号码5) 邮政编码表表3-4 邮政编码表描述字段名类型长度/是否可空说明code字符型不可空,6个字符主键,邮政编码值name字符型不可空地区名称6) 洲际表表3-5 洲际表描述字段名类型长度/是否可空说明id整形不可空主键name字符型不可空洲际名7) 国际区号表表3-6 国际区号表描述字段名类型长度/是否可空说明code字符型不可空主键,国际区号的值name字符型不可空国家的名称fid整形不可空外键,指向洲际表的主键,表明该国家所属的洲际8) 省份表表3-7 省份表描述字段名类型长度/是否可空说明id整形不可空主键name字符型不可空省份的名称9) 国内区号表表3-8 国内区号表描述字段名类型长度/是否可空说明code字符型不可空主键,国内区号的值name字符型不可空地区的名称fid整形不可空外键,指向省份表的主键,表明该地区所属的省份3.3.6 开发过程中遇到的问题1. 手机仿真器的选择问题我们之所以使用M3Gate 的仿真器,主要是因为它能够支持GB2312的编码方式,而且操作简单,不过除了M3Gate的选择外,还有Nokia的Nokia Wap、 Ericsson 公司的WAP IDE、Motorola 的ADK和phone. com的U P. SDK都可以使用,而且Phone. com 的使用人数较多,不过这4套手机仿真器都不支持GB2312编码。因此,若要在WML显示中文,必须将每一个中文字都转为Unicode,才能正常在仿真器上显示中文6。2. WAP手机中的中文显示问题现在大多数WAP手机(Nokia7110、爱立信R320S等等)都使用UTF-8编码,也就是采用Unicode来编码(该编码方式支持使用并跟随ASCII码的字符)。因此,当我们在WML/WMLScript中直接使用中文的话,将会产生乱码,手机用户无法识别,所以我们在输出中文之前,要对中文进行Unicode编码,即从GB码向Unicode转换。执行字符编码转换需要在服务器端的程序来完成1。我们采用以下方法来解决这些问题:直接生成Unicode文件,可以在多种手机上显示。但它的缺陷是与现有的大多数应用不兼容,也就是说所有引用都将对文件中的界面显示部分重新采用Unicode编码。具体做法:。3. 页面的更新问题在本系统中,每个WML deck仅包含一个card(当然,可以由多个card组成。)在黄页信息找茬的早期测试过程中,我们发现当我们对搜索到的该条信息就行找茬后,系统会把每条具体信息设置为可编辑,而我们点击“返回”,再对另外一条信息进行找茬时,我们发现,可编辑的信息条内容是上一条信息的内容,再重复上面的动作给另外一条信息找茬,发现可编辑框里的内容仍是第一条信息的内容。也就是说我们跳转到找茬页面时,该页面并没更新。原来card有一个属性是newcontent:表示再次跳转到该card时,手机是不是要清除以前保留的信息,包括变量,堆栈里的历史记录,重新设置手机状态等。而它的缺省取值为false,即不清除1。由此,我们发现其他的页面也有相同的bug,并把它们一一排除了。 第4章 总结手机黄页系统将传统的纸制的黄页搬到手机上,使得手机用户可以随时随地方便地查阅黄页信息。本系统基本实现预期系统设计目标。由于数据库的数据是模拟数据,对测试系统的周密性方面可能有所影响。在测试过程中不仅使用手机模拟器M3Gate进行测试,还使用手机进行真实测试,在手机上输入服务器端的IP地址,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 影视在线课程创新设计-洞察及研究
- 监管协同与绿色产业-洞察及研究
- 哈希表在数据结构中的应用解析
- Linux系统安装报告
- 北京移动DSMP系统异地容灾平台建设项目的风险管理:策略与实践
- 北京地铁盾构近距离下穿既有地铁的风险防控与实践探索
- 功能化金纳米粒子:生物流体中半胱氨酸和高半胱氨酸的精准识别探索
- 慢性病远程监测技术-洞察及研究
- 深度学习与置换密码-洞察及研究
- 人工智能决策过程中的道德考量-洞察及研究
- 《中华人民共和国学前教育法》专题培训
- 公路水泥混凝土路面施工方案
- 院感手卫生知识培训
- 辽宁省抚顺市新抚区2024-2025学年九年级上学期第一次月考数学试题(含答案)
- 校园消毒知识学习培训
- 关于成立低空经济公司可行性分析报告
- 2024年第九届“学宪法、讲宪法”竞赛题库试卷及答案
- 北京教育出版社心理健康一年级教案
- 工程项目挂靠协议书
- 树木物候期观察讲解
- 电子离婚协议书模板
评论
0/150
提交评论