《天天网络有限公司计费系统设计毕业论文.doc》由会员分享,可在线阅读,更多相关《天天网络有限公司计费系统设计毕业论文.doc(42页珍藏版)》请在三一办公上搜索。
1、天天网络有限公司计费系统设计摘 要:随着互联网技术的不断创新与发展,在给全球经济带来新的革命的同时,也在不断的改变着整个商业社会的竞争格局。交互式web应用、电子协作和Internet等计算机技术将逐渐改变商业模式,使得全球的网络供应链将逐渐取代分层式供应链。因此,在网络时代面临着新机遇的同时也面临着巨大的挑战。随着科学技术的不断提高,计算机科学与技术日趋成熟,计算机应用到生产和生活的各个领域,发挥了越来越重要的作用。作为计算机应用的一部分,使用计算机对网吧信息进行管理,具有手工操作无法比拟的优点,例如:检索迅速,查找方便,可靠性高,存储量大,寿命长,成本低等,因此研究开发网吧计费系统具有可行
2、的实际意义。本系统是一个功能比较强大的网吧计费系统。该系统信息来源主要由管理员添加,方便网站管理员的查询和管理。该系统的任务是方便,灵活的管理网吧的各项信息,包括对每台电脑配置管理、会员用户管理、上机时间计算、金额计算等。系统主要有添加,查找,删除,统计等功能模块组成。本系统会做到满足网吧管理日常工作的需要,使用方便,界面亲切,安全可靠。关键词:网吧;计费;系统Abstract:Internet technology innovation and development, to the global economy brings new revolution is changing the e
3、ntire business community of the competition. Internet, interactive web applications and e-collaboration, such as computer technology will gradually change the business model, making the global network of supply chain will gradually replace hierarchical supply chain, so the network is faced with a ne
4、w era of opportunity at the same time also faces enormous challenges. With the continuous improvement of science and technology, computer science and technology matures, computer application to the production and in all spheres of life, has played an increasingly important role. As part of computer
5、applications, the use of computers to the community information management, with manual unmatched advantages, such as: the rapid retrieval, find convenient, high reliability and large storage capacity, long life, low cost, so research and development of Internet cafes fee system is feasible, practic
6、al significance. The system is a more powerful cyber cafe billing system. The system is the main source of information added by the administrator to facilitate inquiries webmaster and management. The systems mission is convenient, flexible management of the Internet cafes, including on each computer
7、 configuration management, user management members, the time machine, the amount of calculation. System mainly add, find, delete, statistical and other functions module. This system will ensure the management of Internet cafes to meet the needs of their daily work, easy to use, friendly interface, s
8、afe and reliable.Keywords:Internet caf BillingSystem 目 录1 绪论51.1 课题来源51.2 国内现状52 需求分析32.1 系统定义32.2 功能需求32.3 数据需求32.4 业务需求42.5 可行性需求53 数据库设计73.1 数据库的概念73.2 数据库的选择73.3 数据库表的描述93.3.1 用户信息表113.3.2 上机下机信息表113.3.3 电脑配置信息表113.3.4 管理员登陆信息表124 技术介绍134.1 JAVA开发语言134.2 JSP技术144.3 MVC设计模式154.4 SQL语言164.5 开发环境17
9、4.5.1 开发平台174.5.2 Access 2003数据库175 系统实现195.1.2 管理员首页界面风格205.2 查看公司信息205.3 用户信息查询225.4 删除电脑配置信息245.5 计费功能265.6 添加用户信息285.7 计费功能295.8 客户端查询上网信息316结论35参考文献37附录一:381 绪论1.1 课题来源随着计算机技术的日新月异,越来越多的人注重加强对计算机知识的学习,为了满足学校学生或者社会学院的需求,许多网吧都纷纷对外开放,实行即时收费。但随着商家人数的增多,网吧的管理成了一个非常困难的问题。首先,人工即时收费是非常繁琐的一项工作,耗费人力物力,而且
10、极易出错;最后的统计工作更是一项费时费力的苦差事,甚至不能统计。其次,上机过程中,每个网吧都需要值班人员值班,耗费了管理人员的很多时间。随着计算机各种外围设备技术的发展,以上工作通过计算机就可以很方便的实现。网吧以其庞大的用户量和潜在购买力,首先成为一个很好的媒体广告平台,尤其是快消品和网络相关类的产品;同时,网吧作为一个独特的渠道,对中国互联网的发展起到了非常关键的作用,已经容不得任何一家互联网公司忽视。已经有越来越多的案例证明,赢得了网吧市场,就赢得了互联网市场。这正是中国互联网本土化中的一个关键部分,了解这部分市场的特征和容量,是本土和国际互联网公司成功的一个关键因素。基于网吧在中国互联
11、网市场上的如此重要的地位,易观国际情况认为有必要对网吧用户作一个了解,探索网吧用户的行为特征,描绘网吧用户的轮廓。针对以下问题,进行了重点调查和了解:网吧用户特征,网吧用户互联网使用行为特征,不同网吧用户之间存在怎样的行为差异,针对网吧用户的人群属性和使用行为特征,产业的各方应该如何营销网吧。为了适应当前网吧管理无人化的需求,网吧计费管理系统出现了。它可以减少值班人员、维护人员、降低管理人员的费用、甚至可以做到网吧无需人员值守管理。同时还可以增加网吧的开放时间,提高设备的利用率,并且避免网吧管理中的人情免费上机、逃脱费用等问题。1.2 国内现状自1996年中国出现第一家网吧(网吧联盟、网吧新闻
12、、搜狗)以来,网吧已走过了十年不平坦的发展之路。进入2005年,政府对网吧的监管初见成效,走向连锁和规模化发展的网吧,显现出了巨大的市场潜力,成为中国IT业界共同关注的亮点。2007年至今,网吧行业没有新增牌照,但是这一政策在2009年有可能放开,重新发放网吧经营牌照,这种机会为网吧领域带来更为激烈的竞争的同时,也给网吧、中国互联网甚至是别的行业带来了巨大的商业机会。网吧以其庞大的用户量和潜在购买力,首先成为一个很好的媒体广告平台,尤其是快消品和网络相关类的产品;同时,网吧作为一个独特的渠道,对中国互联网的发展起到了非常关键的作用,已经容不得任何一家互联网公司忽视。已经有越来越多的案例证明,赢
13、得了网吧市场,就赢得了互联网市场。这正是中国互联网本土化中的一个关键部分,了解这部分市场的特征和容量,是本土和国际互联网公司成功的一个关键因素。基于网吧在中国互联网市场上的如此重要的地位,观国际认为有必要对网吧用户作一个了解,探索网吧用户的行为特征,描绘网吧用户的轮廓。为此观国际针对以下问题,进行了重点调查和了解:应针对网吧用户特征,网吧用户互联网使用行为特征,不同网吧用户之间存在怎样的行为差异,针对网吧用户的人群属性和使用行为特征,产业的各方应该如何营销网吧。但是调查表明60%以上的网吧,计费管理系统都是千篇一律。1.3 研究意义网吧用户对网吧上网非常忠诚,每次上网时间和上网频次都较高,1/
14、3以上的人需要每天至少去网吧一次。网吧用户的娱乐化倾向非常明显,排在首位的应用都是网络游戏、网络聊天、影视视频等,而搜索引擎以第四常用与这些娱乐化应用一起成为用户最常使用的网络应用之一。网吧用户最常访问的新闻类网站呈现明显的长尾现象,但是长尾头部依然是几大重要新闻网站,其中腾讯新闻选择率最高,其次是新浪、网易和搜狐等门户网站。网络音乐需求是网吧用户一个最重要的需求,这种需求同时也充满了多样性,因此催生了多元化的选择,虽然百度MP3占有绝对的优势,但是其它各种各样的音乐网站也都获得了一部分用户,满足多样化的需求。在网络聊天市场上,腾讯QQ在网吧用户中一枝独秀,但是51挂挂和飞信凭借各自的母公司和
15、网站,今年获得了非常大的发展,值得关注;而阿里旺旺则由于网吧网民的购物倾向性小,使用率较低。随着中国互联网软件硬件的发展,涌现出了众多视频网站,有专业视频网站,也有传统门户介入视频市场成立视频频道的。而在网吧市场上,专业视频网站获得了更多的用户选择,尤其是土豆网和优酷网,其中土豆网选择率稍高于优酷,百度视频搜索也以第三选择成为市场第一梯队成员。在网吧搜索引擎市场上,百度的具有较大优势,用户的使用率远高于其它搜索引擎。从用户对搜索引擎各项关键指标的评价来看,用户对百度的满意率是最高的,这显现出用户较大的忠诚度。其它搜索引擎运营商在网吧用户市场上还有很多工作要做。在图片搜索、知识问答和社区类网站中
16、,百度图片搜索、百度知道和百度贴吧都成为网吧用户的最常去的网站。其中在图片搜索和知识问答类型网站中,由于市场发展时间不长,这两类用户需求很大程度来自于百度的培养,因此百度的优势较大,选择比例都在80以上。而在社区市场上,百度尽管选择最多,但是优势并非绝对突出,网吧用户选择呈多元化趋势,各种垂直论坛都有较多的用户选择存在。网络交友网站在网吧市场上更是异彩纷呈,除了老牌的QQ交友中心、同学录等,近年来兴起的51、校内网、开心网等,都获得了较多网吧用户的选择,尤其是51,已经成为网吧用户交友的第二大选择。自网吧出现以来,我们经历了从手动记录管理网吧到现在的电脑自动化计费系统的过程。2010年,我国网
17、吧上网比例为39.2%,并且逐年上升,注定了网吧自动化计费管理系统取代手动记录式管理方法,因此设计了此网吧计费管理系统。2 需求分析2.1 系统定义天天网络有限公司计费系统的出现在一定程度上改善了网吧所具有的职能和作用,那么本网站只作为一个计费系统,为网吧的计费服务以及网友之间双方提供服务。2.2 功能需求一般来说,网吧经营者对于技术的了解不会特别深入,需要有专业的技术人员管理。但是真正专业并且有经验的网管可谓凤毛麟角,因此一般网吧都是以非技术管理人员进行管理,或是数量不多的技术人员负责技术方面的工作。那么智能化的管理,能够帮助网吧业主解决技术力量短缺的难题。因此网吧一般都会建置网吧管理系统以
18、节省管理人力。下面是在进行开发之前对网吧进行的跟踪调查后得到的详尽的系统功能需求分析,系统模块分为以下五种功能:1.管理员登录管理:管理员需要输入密码和名字登录系统,以便于管理。若密码和用户名输入不正确将登录失败.2.用户管理:登录系统后可以对用户过户信息查询、修改、删除、增加。3.用户上下机管理:根据条件,查询是否符合条件,符合则允许用户上机、下机的操作,并在客户端可进行自动上、下机操作,并将上、下机信息写入数据库。4.计费管理:输入条件,连接上数据库,并且结算费用。5.电脑信息管理:管理员能添加、删除、修改、查询电脑配置信息。2.3 数据需求管理员通过填写用户名和密码进行登陆,如果用户名或
19、密码错误或为空,系统会给出相应的提示信息,操作员可以重新填写密码信息。进入系统后,管理员通过导航选择要进行管理或者查询的模块。电脑信息管理:管理员进入电脑信息管理界面中,可以选择查询计算机信息以及管理现有的计算机信息。查询计算机包括计算机名、显示器、内存、CPU、计算机编号等计算机相关信息,在提交之后,系统会给出相应的提示信息。选择修改是对现有计算机信息进行修改的操作,在提交修改信息之后,系统会给出相应的提示信息。在电脑信息管理页面中也可以输入计算机名进行计算机的查询操作。在用户信息管理界面中,管理员通过填写用户名、密码、性别等用户的一些相关信息进行用户信息的登记,在提交之后,如果系统需要的信
20、息为空,系统会给出相应的错误提示信息。管理员可以对会员进行查询、修改、删除操作。计费信息管理:该模块是对网吧收费情况进行管理。在计费管理界面中,管理员输入用户身份证,即可调用数据库中的上下机时间,并结算花费金额、余额,存入数据库。用户可根据,用户名及密码登录用户系统,登录时判断余额是否充足,条件判断都符合,则允许登录,并将登录的时间写入数据库。用户可在用户界面上查询现在上网的信息,如:开始上网时间,现在的时间,共花费的金额,上网的时间等信息。也可在客户端进行退出,并将退出时的时间记入数据库,以便在管理端进行结算。1.管理员登录模块:管理员需要输入密码和名字登录系统,以便于管理。若密码和用户名输
21、入不正确将登录失败。2.用户管理模块:登录系统后可以对用户信息查询、修改、删除、添加。修改页面时,经过选择复选框后,转入另一个页面在文本框里进行修改,有些重要的信息,不允许变动,提交后经检查后写入数据库。3.用户上下机管理模块:上机时,查询余额是否大于0,若大于0且用户名及密码符合,则允许用户上机。客户端进行下机的操作时,将下机时间写入数据库。4.计费管理模块:输入条件,连接上数据库,查看是否是会员,并且结算费用,将余额写入数据库。5.电脑信息管理:管理员能删除、修改、查询电脑配置信息。2.4 业务需求运用业务流程图可以为用户进行方便的操作进行指导,另外系统模块的业务流程图在管理员或是程序员在
22、进行系统的维护以及系统升级是会有很大的帮助,当然,在进行业务流程分析的同时会对一些系统的数据流进行分析,进而为系统的数据库设计进行分析作了准备。管理员通过填写用户名和密码进行登陆,如果用户名或密码错误或为空,系统会给出相应的提示信息,操作员可以重新填写密码信息。进入系统后,管理员通过导航选择要进行管理或者查询的模块。电脑信息管理:管理员进入电脑信息管理界面中,可以选择查询计算机信息以及管理现有的计算机信息。查询计算机包括计算机名、显示器、内存、CPU、计算机编号等计算机相关信息,在提交之后,系统会给出相应的提示信息。选择修改是对现有计算机信息进行修改的操作,在提交修改信息之后,系统会给出相应的
23、提示信息。在电脑信息管理页面中也可以输入计算机名进行计算机的查询操作。在用户信息管理界面中,管理员通过填写用户名、密码、性别等用户的一些相关信息进行用户信息的登记,在提交之后,如果系统需要的信息为空,系统会给出相应的错误提示信息。管理员可以对会员进行查询、修改、删除操作。计费信息管理:该模块是对网吧收费情况进行管理。在计费管理界面中,管理员输入用户身份证,即可调用数据库中的上下机时间,并结算花费金额、余额,存入数据库。用户可根据,用户名及密码登录用户系统,登录时判断余额是否充足,条件判断都符合,则允许登录,并将登录的时间写入数据库。用户可在用户界面上查询现在上网的信息,如:开始上网时间,现在的
24、时间,共花费的金额,上网的时间等信息。也可在客户端进行退出,并将退出时的时间记入数据库,以便在管理端进行结算。图2-1 业务流程图2.5 可行性需求本系统采用Windows XP、windows7系统,采用java、jsp作为开发语言,数据库采用Microsoft Office Access,严格按照软件开发流程进行设计。采用先进科学和广为流行的设计方法简化设计流程。模块化的设计方法,有助于管理,因为科学合理的划分多个功能,单独设计,用助于降低设计难度及减少错误程序的影响范围,又使整个界面间易于衔接和修改。该网吧计费系统使用的安全性实施主要包括以下几个方面:1.基于系统平台的安全措施:防止非法
25、的文件操作;防止非法的数据输入;防止非法使用;防止非法的访问信息: 防止非法窃听信息。操作错误对策: 数据错误对策。2.操作系统的安全性:在操作系统方面,利用操作系统的日志记录功能,记载用户的使用情况;同时增强对用户访问控制和系统文件的管理,对用户的权限有着严格的限制,根据访问控制的要求,对用户采取一些必要控制措施。如:校验用户权限、口令的有效性、控制对系统资源的使用权限、校验注册用户的合法性等。 3 数据库设计3.1 数据库的概念数据库(Database)是按照数据结构来组织、存储和管理数据的仓库,它产生于距今五十年前,随着信息技术和市场的发展,特别是二十世纪九十年代以后,数据管理不再仅仅是
26、存储和管理数据,而转变成用户所需要的各种数据管理的方式。数据库有很多种类型,从最简单的存储有各种数据的表格到能够进行海量数据存储的大型数据库系统都在各个方面得到了广泛的应用。严格地说,数据库是“按照数据结构来组织、存储和管理数据的仓库”。在经济管理的日常工作中,常常需要把某些相关的数据放进这样的“仓库”,并根据管理的需要进行相应的处理。例如,企业或事业单位的人事部门常常要把本单位职工的基本情况(职工号、姓名、年龄、性别、籍贯、工资、简历等)存放在表中,这张表就可以看成是一个数据库。有了这个“数据仓库” 我们就可以根据需要随时查询某职工的基本情况,也可以查询工资在某个范围内的职工人数等等。这些工
27、作如果都能在计算机上自动进行,那我们的人事管理就可以达到极高的水平。此外,在财务管理、仓库管理、生产管理中也需要建立众多的这种“数据库” ,使其可以利用计算机实现财务、仓库、生产的自动化管理。数据库中的数据是为了众多用户共享其信息所建立的,它已经摆脱了具体程序的制约和限制。不同的用户可通过不同的用法去使用数据库中的数据;多个用户可在同时共享数据库中的资源,即不同的用户可同时存取数据库中的同一个数据。数据共享性不仅能满足各用户对信息内容的要求,同时也满足各用户之间信息通信的要求。网吧计费系统的数据库概念设计是基于需求分析的基础之上的,在进行概念设计时应用实体关系图进行,在实体关系图中主要分为实体
28、、属性以及实体间的关系。通过对该图的分析,可以将该网吧计费系统的功能理解得更加深刻,以便对数据库进行进一步设计。网站将使用一直以来使用都最为广泛的关系模型作为数据库的建设依据。在用户的观念下,关系模型中数据的结构是一张二维表,通常说一个关系对应一张表,而且关系的每一个分量一定是一个不可分的数据项。而基于关系模型的数据库则是由若干个二维表所组成的。对于一些比较的的数据库,如Oracle,DB2,SQL Server等都是关系型数据库,并且它们带有的数据库管理工具都是其他较小型数据库所欠缺的,而这些工具能为管理员的工作节省出大量的时间和财力。3.2 数据库的选择本网站使用Access 2003实现
29、关系型数据库。Access 是微软公司推出的基于Windows的桌面关系数据库管理系统(RDBMS,即Relational Database Management System),是Office系列应用软件之一。它提供了表、查询、窗体、报表、页、宏、模块7种用来建立数据库系统的对象;提供了多种向导、生成器、模板,把数据存储、数据查询、界面设计、报表生成等操作规范化;为建立功能完善的数据库管理系统提供了方便,也使得普通用户不必编写代码,就可以完成大部分数据管理的任务。 Access的有点如下:(1)存储方式简单,易于维护管理 Access管理的对象有表、查询、窗体、报表、页、宏和模块,以上对象都
30、存放在后缀为(.mdb或.accdb)的数据库文件中,便于用户的操作和管理。 (2)面向对象 Access是一个面向对象的开发工具,利用面向对象的方式将数据库系统中的各种功能对象化,将数据库管理的各种功能封装在各类对象中。它将一个应用系统当作是由一系列对象组成的,对每个对象它都定义一组方法和属性,以定义该对象的行为和外国,用户还可以按需要给对象扩展方法和属性。通过对象的方法、属性完成数据库的操作和管理,极大地简化了用户的开发工作。同时,这种基于面向对象的开发方式,使得开发应用程序更为简便。 (3)界面友好、易操作 Access是一个可视化工具,是风格与Windows完全一样,用户想要生成对象并
31、应用,只要使用鼠标进行拖放即可,非常直观方便。系统还提供了表生成器、查询生成器、报表设计器以及数据库向导、表向导、查询向导、窗体向导、报表向导等工具,使得操作简便,容易使用和掌握。 (4)集成环境、处理多种数据信息 Access基于Windows操作系统下的集成开发环境,该环境集成了各种向导和生成器工具,极大地提高了开发人员的工作效率,使得建立数据库、创建表、设计用户界面、设计数据查询、报表打印等可以方便有序地进行。 (5)Access支持ODBC(开发数据库互连,Open Data Base Connectivity),利用Access强大的DDE(动态数据交换)和OLE(对象的联接和嵌入)
32、特性,可以在一个数据表中嵌入位图、声音、Excel表格、Word文档,还可以建立动态的数据库报表和窗体等。Access还可以将程序应用于网络,并与网络上的动态数据相联接。利用数据库访问页对象生成HTML文件,轻松构建Internet/Intranet的应用。 (6)支持广泛,易于扩展,弹性较大 能够将通过链接表的方式来打开EXCEL文件、格式化文本文件等,这样就可以利用数据库的高效率对其中的数据进行查询、处理。还可以通过以Access作为前台客户端,以SQL Server作为后台数据库的方式(如ADP)开发大型数据库应用系统。 总之,Access是一个既可以只用来存放数据的数据库,也可以作为一
33、个客户端开发工具来进行数据库应用系统开发;即可以开发方便易用的小型软件,也可以用来开发大型的应用系统。Access是一个面向对象的开发工具,利用面向对象的方式将数据库系统中的各种功能对象化,将数据库管理的各种功能封装在各类对象中。它将一个应用系统当作是由一系列对象组成的,对每个对象它都定义一组方法和属性,以定义该对象的行为和外国,用户还可以按需要给对象扩展方法和属性。通过对象的方法、属性完成数据库的操作和管理,极大地简化了用户的开发工作。同时,这种基于面向对象的开发方式,使得开发应用程序更为简便。 Access是一个可视化工具,是风格与Windows完全一样,用户想要生成对象并应用,只要使用鼠
34、标进行拖放即可,非常直观方便。系统还提供了表生成器、查询生成器、报表设计器以及数据库向导、表向导、查询向导、窗体向导、报表向导等工具,使得操作简便,容易使用和掌握。 总之,Access是一个既可以只用来存放数据的数据库,也可以作为一个客户端开发工具来进行数据库应用系统开发;即可以开发方便易用的小型软件,也可以用来开发大型的应用系统。3.3 数据库表的描述数据模型(Data Model)是数据特征的抽象,是数据库管理的教学形式框架。数据库系统中用以提供信息表示和操作手段的形式构架。数据模型包括数据库数据的结构部分、数据库数据的操作部分和数据库数据的约束条件。概念模型主要是对信息世界的建模,它的表
35、示方法有很多种,最为常用的表示方法是实体联系模型,即ER模型,它是通过ER图来描述现实世界概念模型。ER图中通过矩形来表示实体;用椭圆来表示属性;用菱形来表示联系。网吧计费系统的数据库概念设计是基于需求分析的基础之上的,在实体关系图中主要分为实体、属性以及实体间的关系。通过对该图的分析,可以将该网吧计费系统的功能理解得更加深刻,以便对数据库进行进一步设计。下面是该系统的实体关系图:图3-1 用户实体信息图3-2 记录上下机实体信息 图3-3 计算机配置实体信息图3-4 管理员登录实体关系3.3.1 用户信息表字段类型位数主键备注Numberint6用户编号Namechar50用户名Sexcha
36、r50性别Birthdaychar50出生日期start_datechar6创建时间phone_numberchar50电话号码Addresschar25地址Userchar25用户级别Idchar25身份证号码Passwordchar25登录密码表3-5 用户信息表3.3.2 上机下机信息表该表主要完成用户上下机管理模块:上机时,查询余额是否大于0,若大于0且用户名及密码符合,则允许用户上机。客户端进行下机的操作时,将下机时间写入数据库。见表3-6。字段类型位数主键备注Numint6用户编号Namechar50用户名update1char50上机时间update2char50下机时间User
37、char6用户级别card_accountchar50卡中余额Idchar25身份证号码表 3-6 上下机信息表3.3.3 电脑配置信息表该表主要为电脑配置信息的添加。见表4-3。字段类型位数主键备注pc_numint6电脑编号Monitorchar50显示器pc_namechar50电脑名称Cpuchar50处理器Memorychar6内存hard_driverchar50硬盘Systemchar25系统start_datechar创建时间表 4-3 电脑配置信息表3.3.4 管理员登陆信息表该表主要完成管理员登录模块:管理员需要输入密码和名字登录系统,以便于管理。若密码和用户名输入不正确将
38、登录失败。字段类型位数主键备注IDint6管理员编号Umanachar50管理员名字Updwchar25管理员密码表4-4 管理员登录信息表4 技术介绍4.1 JAVA开发语言Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由Sun Microsystems公司于1995年5月推出的Java程序设计语言和Java平台(即JavaSE, JavaEE, JavaME)的总称。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。在全球云计算和移动互联网的产业环境下,
39、Java更具备了显著优势和广阔前景。它最初被命名为Oak,目标设定在家用电器等小型系统的编程语言,来解决诸如电视机、电话、闹钟、烤面包机等家用电器的控制和通讯问题。由于这些智能化家电的市场需求没有预期的高,Sun放弃了该项计划。就在Oak几近失败之时,随着互联网的发展,Sun看到了Oak在计算机网络上的广阔应用前景,于是改造了Oak,以“Java”的名称正式发布。Java 编程语言的风格与C 、C+语言十分相似。Java是一种纯的面向对象的程序设计语言,它不但继承了 C+ 语言面向对象的技术核心,还舍弃了C +语言中那些容易引起错误的指针(以引用取代)、多重继承(以接口取代)、运算符重载(op
40、erator overloading)等特性,同时增加了垃圾回收器功能以用来回收不再被引用的对象所占据的内存空间,让程序员不再为内存管理的问题而担忧。在 Java SE 1.5 的版本中,Java 引入了泛型编程(Generic Programming)、不定长参数、类型安全的枚举和自动装/拆箱等语言特性。 Java 和一般的编译执行计算机语言和解释执行计算机语言是不同的。它会首先将源代码编译为二进制字节码(bytecode),再通过各种不同平台上的虚拟机去解释执行字节码,以此来实现了“一次编译、到处执行”跨平台的特性。但是,每次编译执行是需要消耗一定的时间,这也在一定程度上降低了 Java
41、程序的运行效率。但在 J2SE 1.4.2 发布之后,Java 的执行速度有了很大幅度的提升。 与传统的程序不同,Sun 公司在推出 Java 的同时就将其作为一种开放的技术。全球数以万计的 Java 开发公司都被要求所设计的 Java 软件必须是相互兼容的。“Java 语言靠群体的力量而非公司的力量”是 Sun 公司的口号之一,这自然也获得了广大软件开发商的赞同。这种模式与微软公司所倡导的注重精英和封闭式的模式完全不同。 Sun 公司对 Java 编程语言的解释是:Java 编程语言是个简单、面向对象、健壮、分布式、高性能、安全与系统无关、可移植、解释性、多线程和动态的语言。 Java 平台
42、是基于 Java 语言的一种平台。这样的平台目前是非常流行的,因此微软公司也推出了与之竞争的.NET平台和模仿 Java 的 C#语言。4.2 JSP技术JSP(Java Server Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP技术有点类似ASP技术,它是在传统的网页HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件(*.jsp) 。 用JSP开发的Web应用是跨平台的,既能在Linux下运行,也能在其他操作系统上运行。JSP技术使用Java编程语言编写类
43、XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。 Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。 JSP与JavaServlet一样,是在服务器端执行的,通常返回给客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。JS
44、P页面由HTML代码和嵌入其中的Java代码所组成。服务器在页面被客户端请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。Java Servlet是JSP的技术基础,而且大型的Web应用程序的开发需要Java Servlet和JSP配合才能完成。JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。利用JSP技术,使得动态信息由JSP页面去表现,JSP页面通过安装在Web服务器或者利用JSP的应用服务器上的JSP引擎去执行。JSP引擎接受到客户端对JSP页面的请求,并且生成相应的JSP页面作为对客户端的响应。 J
45、SP页面通常会被编译成为Java Servlets,这是Java的一种标准的扩展。页面开发人员可以访问全部的Java应用环境,来利用Java技术的可移植性和扩展性。当JSP页面第一次被调用时,如果它不存在,就会被编译为一个Java Servlets类,并且会存储在服务器的内存之中。这使得在之后的对该页面的调用中,服务器会有很快的响应(这样避免了CGIBIN为每一个HTTP请求再次生成一个进程的问题)。 JSP页面能够包含在各种不同的模型或应用体系结构中,可以用于由不同组件、协议和格式组成的联合体中。由于JSP的动态信息发布技术是一个可扩展的、开放的建立动态Web页面的标准。所以无论采用怎样的创
46、建工具,开发人员都能够利用JSP页面去创建可移植的Web应用,在不同的Web应用服务器上来运行。4.3 MVC设计模式MVC架构是“Model-View-Controller”的缩写,中文翻译为“模型-视图-控制器”。MVC应用程序总是由这三个部分组成。它们各自处理自己的任务。MVC架构最早是smalltalk语言研究团提出的,应用于用户交互的应用程序中。smalltalk语言和java语言有着很多的相似性,它们都是面向对象的语言,自然SUN在petstore(宠物店)事例应用程序中推荐MVC架构作为开发Web应用的架构模式。MVC架构是一种架构,是需要其他模式来协作完成的。在J2EE模式的目录中,通常采用service to worker模式来实现,而service to worker模式可以通过派遣器模式,集中控制器模式和Page Helper模式共同组成。而Struts只实现了MVC中的View和Contro