![java版局域网聊天程序的设计与实现毕业论文.doc_第1页](http://file.renrendoc.com/FileRoot1/2018-12/29/153fafcb-3907-459c-be36-34103d93c42e/153fafcb-3907-459c-be36-34103d93c42e1.gif)
![java版局域网聊天程序的设计与实现毕业论文.doc_第2页](http://file.renrendoc.com/FileRoot1/2018-12/29/153fafcb-3907-459c-be36-34103d93c42e/153fafcb-3907-459c-be36-34103d93c42e2.gif)
![java版局域网聊天程序的设计与实现毕业论文.doc_第3页](http://file.renrendoc.com/FileRoot1/2018-12/29/153fafcb-3907-459c-be36-34103d93c42e/153fafcb-3907-459c-be36-34103d93c42e3.gif)
![java版局域网聊天程序的设计与实现毕业论文.doc_第4页](http://file.renrendoc.com/FileRoot1/2018-12/29/153fafcb-3907-459c-be36-34103d93c42e/153fafcb-3907-459c-be36-34103d93c42e4.gif)
![java版局域网聊天程序的设计与实现毕业论文.doc_第5页](http://file.renrendoc.com/FileRoot1/2018-12/29/153fafcb-3907-459c-be36-34103d93c42e/153fafcb-3907-459c-be36-34103d93c42e5.gif)
已阅读5页,还剩98页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘 要摘 要随着互联网的发展,网络聊天工具作为一种交流工具,已经受到网民的青睐。目前,出现了很多功能强大的聊天工具,其中应用比较广泛的有腾讯qq、msn-messager等等。即时通讯软件,是每一个上网用户都需要的工具,它除了能够让您迅速地在网上找到自己的朋友和伙伴之外,还可以实时交谈和传递信息,截止到目前,全球约有近3亿多人使用即时软件,正因为即时通讯软件拥有数以亿计的用户和增长的市场,所以各个公司都盯上了这个最大的市场,一时间,即时通讯市场硝烟四起。对等网络(peer-to-peer,简称p2p),应用最初出现时和现在并不相同。事实上可以认为它是若干不同技术以及流行趋势相结合的产物。以下是导致p2p技术发展最重要的趋势:首先,一些新技术与软件工程的结合,形成了一种将工作分散的趋势。p2p计算正是这种分散工作趋势的结果。其次,在企业应用集成等因素的驱动下,过去十年渐渐形成从集中的单机系统转向分布式系统。然而随着互联网的发展,全面的分布式计算也就成为一种迫切需求。关键字: 局域网、聊天、p2p、java viabstractabstractwith the development of the internet,the chat tool as a communication tool, has been popularly accepted by netizens of all ages. at present, there are many powerful chat tools, of which tencent qq, msn-messager are much more prevalent.instant messaging software is necessary for every one who connects to the internet, which can not only provide you a prompt way to find friends and partners online, but can provide you the convenience of internet relay chat and information delivering. up to now, there are about 300 million people using real-time software all over the world. as more and more corporations have focused on this market with growing potential, which has hundreds of millions of uses, the competitions among these corporations are extremely fierce. the initial application of peer-to-peer network (peer-to-peer, referred to as p2p) is not the same as it is now. in fact, it can be regarded as a combination of different technologies and fashion trends. below are the most important trends that have led the development of p2p technology: first of all, the integration of software engineering and new technologies led to a working dispersion trend. as a result, p2p computing was born. then, in the past decade, it has turned fro m a single centralized system to distributed system due to the motivation of factors such as enterprise application integration. at last, with the development of the internet, however, a comprehensive distributed computing has become an urgent need.keywords:computer、network、intelligent、buildings monitoring project、necessary目 录毕业设计(论文)原创性声明和使用授权说明原创性声明本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得 及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。作 者 签 名: 日 期: 指导教师签名: 日期: 使用授权说明本人完全了解 大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。作者签名: 日 期: 学位论文原创性声明本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。作者签名: 日期: 年 月 日学位论文版权使用授权书本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权 大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。涉密论文按学校规定处理。作者签名:日期: 年 月 日导师签名: 日期: 年 月 日目 录第1章引言11.1 选题背景11.2 本文研究内容1第2章基础知识22.1 开发工具及开发语言概述22.1.1 windows xp简介22.1.2 应用服务器apache tomcat简介32.1.3 mysql概述32.1.4 b/s方式管理网站92.2 运行平台及开发工具的安装与配置112.2.1 jdk安装与配置112.2.2 apache tomcat应用服务器安装与配置112.2.3 jdk与tomcat相连路径配置122.2.4 mysql以及驱动安装142.2.5 mysql客户端navicat152.2.6 eclipse安装及导入项目152.2.7 java的网络功能与编程162.2.8 java的特点182.2.9 javabaen技术202.2.10 ip/tcp协议202.2.11 socket介绍21第3章局域网聊天的分析与设计233.1 设计的总体思想233.2 课题来源233.3 局域网聊天体系结构243.3.1 jsp技术243.3.2 系统结构-基于struts三层结构253.4 数据库的生成及网站目录结构263.4.1 数据库的结构263.4.2 网站目录结构29第4章系统各模块的详细设计与实现324.1 总体设计要点324.2 设计步骤以及功能模块324.3 功能模块33第5章项目测试465.1 项目测试目的465.2 项目测试结果截图46第6章结束语51参考文献52致谢53外文资料原文54译文56附录58第1章 引言第1章 引言1.1 选题背景随着互联网逐步普及,互联网技术的逐步提高。人们的工作和生活也越来越离不开网络,而即时聊天是人们最常见、最直接的online交流的方式。本系统以聊天功能为主,通过网络为用户提供一个人际交流的平台。本文所介绍的网络聊天系统是基于java编程语言开发设计的,其主要特性是能动态、实时的完成消息的传递,且具有高效的交互性,能更有效的处理客户请求,其运行时所需环境及工作流程和各模块的工作原理将在本文依次介绍,并且文中提供了全部程序源代码。1.2 本文研究内容通过以上对局域网聊天的讲述和发展的了解,我们可以预见到,局域网聊天在人们未来的生活中会会有更大的开展前途,它必将朝向更广深的方向发展,进一步影响人们的生活,所以有必要对其基本原理进行了解,通过了解基本原理深化对局域网聊天的理解,加深对局域网聊天的认识,为进一步开发更新更具前景的监控系统做准备!97第二章 楼宇监控系统的开发工具及运行平台 第2章 基础知识2.1 开发工具及开发语言概述首先我将对我所做的此项目进行一下描述,项目描述:该系统是以b/s方式实现管理网站的功能:以web方式完成楼宇的监控管理。能够为物业公司提供更为便捷的安全管理服务。本系统的任物主要完成一个局域网聊天的需求分析,ui设计,db设计以及其他设计并最终使用java技术来实现。 该系统采用的运行平台:windows xp系统、应用服务器apache tomcat、数据库mysql开发工具:eclipse开发语言:java使用框架技术:struts框架采用方式:b/s方式管理网站功能2.1.1 windows xp简介windows xp中文全称为视窗操作系统体验版。是微软公司发布的一款视窗操作系统。它发行于2001年10月25日,原来的名称是whistler。微软最初发行了两个版本,家庭版(home)和专业版。家庭版的消费对象是家庭用户,专业版则在家庭版的基础上添加了新的为面向商业的设计的网络认证、双处理器等特性。且家庭版只支持1个处理器,专业版则支持2个。字母xp表示英文单词的“体验”。window xp是基于window 2000代码的产品,同时拥有一个用户图形界面,它包括了一些细微的修改,其中一些看起来是从linux的桌面环境,诸如kde中获得的灵感:带有用户图形的登陆界面就是一个例子。此外,window xp引入了一个“基于人物”的用户界面,使得工具条可以访问任务的具体细节。它包括了简化了的window 2000的用户安全特性,并整合了防火墙,以用来确保长期以来一直困扰微软的安全问题。2.1.2 应用服务器apache tomcat简介tomcat是apache 软件基金会项目中的一个核心项目,由apache、sun和其他一些公司及个人共同开发而成。由于有了sun的参与和支持,最新的servlet 和jsp 规范总是能在tomcat 中得到体现,因为tomcat 技术先进、性能稳定,而且免费,因而深受java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的web 应用服务器。tomcat 很受广大程序员的喜欢,因为它运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能;而且它还在不断的改进和完善中,任何一个感兴趣的程序员都可以更改它或在其中加入新的功能。tomcat是一个小型的轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试jsp 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好apache 服务器,可利用它响应对html 页面的访问请求。实际上tomcat 部分是apache 服务器的扩展,但它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与apache 独立的进程单独运行的。2.1.3 mysql概述mysql是一个小型关系型数据库管理系统,开发者为瑞典mysql ab公司。在2008年1月16号被sun公司收购。而2009年,sun又被oracle收购。mysql的前途,没有任何人抱乐观的态度.目前mysql被广泛地应用在internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了mysql作为网站数据库。mysql的官方网站的网址是 与其他的大型数据库例如oracle、db2、sql server等相比,mysql自有它的不足之处,如规模小、功能有限(mysql cluster的功能和效率都相对比较差)等,但是这丝毫也没有减少它受欢迎的程度。对于一般的个人使用者和中小型企业来说,mysql提供的功能已经绰绰有余,而且由于mysql是开放源码软件,因此可以大大降低总体拥有成本。mysql的特性:1.使用c和c+编写,并使用了多种编译器进行测试,保证源代码的可移植性 2.支持aix、freebsd、hp-ux、linux、mac os、novell netware、openbsd、os/2 wrap、solaris、windows等多种操作系统 3.为多种编程语言提供了api。这些编程语言包括c、c+、python、java、perl、php、eiffelruby和tcl等。 4.支持多线程,充分利用cpu资源 5.优化的sql查询算法,有效地提高查询速度 6.既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中提供多语言支持,常见的编码如中文的gb 2312、big5,日文的shift_jis等都可以用作数据表名和数据列名 7.提供tcp/ip、odbc和jdbc等多种数据库连接途径 8.提供用于管理、检查、优化数据库操作的管理工具 9.可以处理拥有上千万条记录的大型数据库eclipse概述 eclipse 是一个开放源代码的、基于 java 的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,eclipse 附带了一个标准的插件集,包括 java 开发工具。 eclipse最初是由ibm公司开发的替代商业软件visual age for java的下一代ide开发环境,2001年11月贡献给开源社区,现在它由非营利软件供应商联盟eclipse基金会(eclipse foundation)管理。 2003年,eclipse 3.0选择osgi服务平台规范为运行时架构。 2007年6月,稳定版3.3发布。2008年6月发布代号为ganymede的3.4版。2009年7月发布代号为galileo的3.5版。 eclipse是著名的跨平台的自由集成开发环境(ide)。最初主要用来java语言开发,但是目前亦有人通过插件使其作为其他计算机语言比如c+和python的开发工具。eclipse的本身只是一个框架平台,但是众多插件的支持使得eclipse拥有其他功能相对固定的ide软件很难具有的灵活性。许多软件开发商以eclipse为框架开发自己的ide。 eclipse 最初由oti和ibm两家公司的ide产品开发组创建,起始于1999年4月。ibm提供了最初的eclipse代码基础,包括platform、jdt 和pde。目前由ibm牵头,围绕着eclipse项目已经发展成为了一个庞大的eclipse联盟,有150多家软件公司参与到eclipse项目中,其中包括borland、rationalsoftware、red hat及sybase等。eclipse是一个开发源码项目,它其实是 visual age for java的替代品,其界面跟先前的visual age for java差不多,但由于其开放源码,任何人都可以免费得到,并可以在此基础上开发各自的插件,因此越来越受人们关注。近期还有包括oracle在内的许多大公司也纷纷加入了该项目,并宣称eclipse将来能成为可进行任何语言开发的ide集大成者,使用者只需下载各种语言的插件即可。 虽然大多数用户很乐于将 eclipse 当作 java ide 来使用,但 eclipse 的目标不仅限于此。eclipse 还包括插件开发环境(plug-in development environment,pde),这个组件主要针对希望扩展 eclipse 的软件开发人员,因为它允许他们构建与 eclipse 环境无缝集成的工具。由于 eclipse 中的每样东西都是插件,对于给 eclipse 提供插件,以及给用户提供一致和统一的集成开发环境而言,所有工具开发人员都具有同等的发挥场所。 基于 eclipse 的应用程序的突出例子是ibmwebsphere studio workbench,它构成了 ibm java 开发工具系列的基础。例如,websphere studio application developer添加了对 jsp、servlet、ejb、xml、web 服务和数据库访问的支持。 eclipse的主要组成 eclipse是一个开放源代码的软件开发项目,专注于为高度集成的工具开发提供一个全功能的、具有商业品质的工业平台。它主要由eclipse项目、eclipse工具项目和eclipse技术项目三个项目组成,具体包括四个部分组成eclipse platform、jdt、cdt和pde.jdt支持java开发、cdt支持c开发、pde用来支持插件开发,eclipse platform则是一个开放的可扩展ide,提供了一个通用的开发平台。它提供建造块和构造并运行集成软件开发工具的基础。eclipse platform允许工具建造者独立开发与他人工具无缝集成的工具从而无须分辨一个工具功能在哪里结束,而另一个工具功能在哪里开始。 eclipse sdk(软件开发者包)是eclipse platform、jdt和pde所生产的组件合并,它们可以一次下载。这些部分在一起提供了一个具有丰富特性的开发环境,允许开发者有效地建造可以无缝集成到eclipse platform中的工具。eclipse sdk由eclipse项目生产的工具和来自其它开放源代码的第三方软件组合而成。eclipse项目生产的软件以 gpl发布,第三方组件有各自自身的许可协议。java面向对象语言java,是由sun microsystems公司于1995年5月推出的java程序设计语言和java平台的总称。用java实现的hotjava浏览器显示了java的魅力:跨平台、动态的web、internet计算。从此,java被广泛接受并推动了web的迅速发展,常用的浏览器现在均支持java applet。java是一种简单的,面向对象的,分布式的,解释型的,健壮安全的,结构中立的,可移植的,性能优异、多线程的动态语言。java主要特性1、java语言是简单的。java语言的语法与c语言和c+语言很接近,使得大多数程序员很容易学习和使用java。另一方面,java丢弃了c+ 中很少使用的、很难理解的、令人迷惑的那些特性,如操作符重载、多继承、自动的强制类型转换。特别地,java语言不使用指针,并提供了自动的废料收集,使得程序员不必为内存管理而担忧。 2、java语言是一个面向对象的。java语言提供类、接口和继承等原语,为了简单起见,只支持类之间的单继承,但支持接口之间的多继承,并支持类与接口之间的实现机制。java语言全面支持动态绑定,而c+ 语言只对虚函数使用动态绑定。总之,java语言是一个纯的面向对象程序设计语言。 3、java语言是分布式的。java语言支持internet应用的开发,在基本的java应用编程接口中有一个网络应用编程接口,它提供了用于网络应用编程的类库。java的远程方法激活机制也是开发分布式应用的重要手段。 4、java语言是健壮的。java的强类型机制、异常处理、废料的自动收集等是java程序健壮性的重要保证。对指针的丢弃是java的明智选择。java的安全检查机制使得java更具健壮性。 5、java语言是安全的。java通常被用在网络环境中,为此,java提供了一个安全机制以防恶意代码的攻击。除了java语言具有的许多安全特性以外,java对通过网络下载的类具有一个安全防范机制,如分配不同的名字空间以防替代本地的同名类、字节代码检查,并提供安全管理机制让java应用设置安全哨兵。 6、java语言是体系结构中立的。java程序在java平台上被编译为体系结构中立的字节码格式,然后可以在实现这个java平台的任何系统中运行。这种途径适合于异构的网络环境和软件的分发。 7、java语言是可移植的。这种可移植性来源于体系结构中立性,另外,java还严格规定了各个基本数据类型的长度。java系统本身也具有很强的可移植性,java编译器是用java实现的,java的运行环境是用ansi c实现的。 8、java语言是解释型的。如前所述,java程序在java平台上被编译为字节码格式, 然后可以在实现这个java平台的任何系统中运行。在运行时,java平台中的java解释器对这些字节码进行解释执行,执行过程中需要的类在联接阶段被载入到运行环境中。 9、java是高性能的。与那些解释型的高级脚本语言相比,java的确是高性能的。事实上,java的运行速度随着jit(just-in-time)编译器技术的发展越来越接近于c+。 10、java语言是多线程的。在java语言中,线程是一种特殊的对象,它必须由thread类或其子(孙)类来创建。通常有两种方法来创建线程:其一,使用型构为thread的构造子将一个实现了runnable接口的对象包装成一个线程,其二,从thread类派生出子类并重写run方法,使用该子类创建的对象即为线程。值得注意的是thread类已经实现了runnable接口,因此,任何一个线程均有它的run方法,而run方法中包含了线程所要运行的代码。线程的活动由一组方法来控制。 java语言支持多个线程的同时执行,并提供多线程之间的同步机制。 11、java语言是动态的。java语言的设计目标之一是适应于动态变化的环境。java程序需要的类能够动态地被载入到运行环境,也可以通过网络来载入所需要的类。这也有利于软件的升级。另外,java中的类有一个运行时刻的表示,能进行运行时刻的类型检查。 java语言的优良特性使得java应用具有无比的健壮性和可靠性,这也减少了应用系统的维护费用。java对对象技术的全面支持和java平台内嵌的api能缩短应用系统的开发时间并降低成本。java的编译一次,到处可运行的特性使得它能够提供一个随处可用的开放结构和在多平台之间传递信息的低成本方式。特别是java企业应用编程接口为企业计算及电子商务应用系统提供了有关技术和丰富的类库。struts框架struts是apache 基金会jakarta 项目组的一个open source 项目,它采用mvc模式,能够很好地帮助java 开发者利用j2ee开发web应用。和其他的java架构一样,struts 也是面向对象设计,将mvc模式分离显示逻辑和业务逻辑的能力发挥得淋漓尽致。structs 框架的核心是一个弹性的控制层,基于如 java servlets,javabeans,resourcebundles与xml等标准技术,以及 jakarta commons 的一些类库。struts有一组相互协作的类(组件)、servlet以及jsp tag lib组成。基于struts构架的web应用程序基本上符合jsp model2的设计标准,可以说是一个传统 mvc设计模式的一种变化类型。 struts最早是作为apache jakarta项目的组成部分问世运作。项目的创立者希望通过对该项目的研究,改进和提高java server pages、servlet、标签库以及面向对象的技术水准。struts的目的是为了减少在运用mvc设计模型来开发web应用的时间。你仍然需要学习和应用该架构,不过它将可以完成其中一些繁重的工作。 struts跟tomcat、turbine等诸多apache项目一样,是开源软件,这是它的一大优点,使开发者能更深入的了解其内部实现机制。mvc即model-view-controller的缩写,是一种常用的设计模式。该模式减弱了业务逻辑接口和数据接口之间的耦合,以及让视图层更富于变化。struts 是mvc的一种实现,它将 servlet和 jsp 标记(属于 j2ee 规范)用作实现的一部分。struts继承了mvc的各项特性,并根据j2ee的特点,做了相应的变化与扩展。model部分:actionform和javabean组成,其中actionform用于封装用户的请求参数,封装成actionform对象,该对象被actionservlet转发给action,action根据actionfrom里面的请求参数处理用户的请求。 javabean则封装了底层的业务逻辑,包括数据库访问等。 view部分该部分采用jsp实现。struts提供了丰富的标签库,通过标签库可以减少脚本的使用,自定义的标签库可以实现与model的有效交互,并增加了现实功能。对应上图的jsp部分。controller组件:controller组件有两个部分组成系统核心控制器,业务逻辑控制器。系统核心控制器,对应上图的actionservlet。该控制器由struts框架提供,继承httpservlet类,因此可以配置成标注的servlet。该控制 器负责拦截所有的http请求,然后根据用户请求决定是否要转给业务逻辑控制器。 业务逻辑控制器,负责处理用户请求,本身不具备处理能力,而是调用model来完成处理。对应action部分。2.1.4 b/s方式管理网站b/s结构即浏览器和服务器结构。它是随着internet技术的兴起,对c/s结构的一种变化或者改进的结构。在这种结构下,用户工作界面是通过www浏览器来实现,极少部分事务逻辑在前端实现,但是主要事务逻辑在服务器端实现,形成所谓三层3-tier结构。这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本。以目前的技术看,局域网建立b/s结构的网络应用,并通过internet/intranet模式下数据库应用,相对易于把握、成本也是较低的。它是一次性到位的开发,能实现不同的人员,从不同的地点,以不同的接入方式(比如lan, wan, internet/intranet等)访问和操作共同的数据库;它能有效地保护数据平台和管理访问权限,服务器数据库也很安全。在java这样的跨平台语言出现之后,b/s架构管理软件更是方便、快捷、高效。 一、b/s结构的优点 b/s结构最大的优点就是可以在任何地方进行操作而不用安装任何专门的软件。只要有一台能上网的电脑就能使用,客户端零维护。系统的扩展非常容易,只要能上网,再由系统管理员分配一个用户名和密码,就可以使用了。甚至可以在线申请,通过公司内部的安全认证(如证书)后,不需要人的参与,系统可以自动分配给用户一个账号进入系统。 二、b/s架构软件的优势与劣势 (1)维护和升级方式简单。目前,软件系统的改进和升级越来越频繁,b/s架构的产品明显体现着更为方便的特性。对一个稍微大一点单位来说,系统管理人员如果需要在几百甚至上千部电脑之间来回奔跑,效率和工作量是可想而知的,但b/s架构的软件只需要管理服务器就行了,所有的客户端只是浏览器,根本不需要做任何的维护。无论用户的规模有多大,有多少分支机构都不会增加任何维护升级的工作量,所有的操作只需要针对服务器进行;如果是异地,只需要把服务器连接专网即可,实现远程维护、升级和共享。所以客户机越来越“瘦”,而服务器越来越“胖”是将来信息化发展的主流方向。今后,软件升级和维护会越来越容易,而使用起来会越来越简单,这对用户人力、物力、时间、费用的节省是显而易见的,惊人的。因此,维护和升级革命的方式是“瘦”客户机,“胖”服务器。 (2)成本降低,选择更多。大家都知道windows在桌面电脑上几乎一统天下,浏览器成为了标准配置,但在服务器操作系统上windows并不是处于绝对的统治地位。 现在的趋势是凡使用b/s架构的应用管理软件,只需安装在linux服务器上即可,而且安全性高。所以服务器操作系统的选择是很多的,不管选用那种操作系统都可以让大部分人使用windows作为桌面操作系统电脑不受影响,这就使的最流行免费的linux操作系统快速发展起来,linux除了操作系统是免费的以外,连数据库也是免费的,这种选择非常盛行。 比如说很多人每天上“新浪”网,只要安装了浏览器就可以了,并不需要了解“新浪”的服务器用的是什么操作系统,而事实上大部分网站确实没有使用windows操作系统,但用户的电脑本身安装的大部分是windows操作系统。 (3) 应用服务器运行数据负荷较重。由于b/s架构管理软件只安装在服务器端上,网络管理人员只需要管理服务器就行了,用户界面主要事务逻辑在服务器端完全通过www浏览器实现,极少部分事务逻辑在前端实现,所有的客户端只有浏览器,网络管理人员只需要做硬件维护。但是,应用服务器运行数据负荷较重,一旦发生服务器“崩溃”等问题,后果不堪设想。因此,许多单位都备有数据库存储服务器,以防万一。2.2 运行平台及开发工具的安装与配置 2.2.1 jdk安装与配置jdk是sun microsystems针对java开发员的产品。自从java推出以来,jdk已经成为使用最广泛的java sdk。jdk 是整个java的核心,包括了java运行环境,java工具和java基础的类库。jdk是学好java的第一步。而专门运行在x86平台的jrocket在服务端运行效率也要比sun jdk好很多。从sun的jdk5.0开始,提供了泛型等非常实用的功能,其版本也不断更新,运行效率得到了非常大的提高。jdk是sun microsystems针对java开发员的产品。自从java推出以来,jdk已经成为使用最为广泛的java sdk。jdk是整个java的核心,包括了java的运行环境,java工具和java基础的类库。jdk是学好java的第一步。而专门运行在x86平台的jrocket在服务端运行效率也要比sun jdk好很多。从sun的jdk5.0开始,提供了泛型等非常实用的功能,其版本也不断更新,运行效率得到了非常大的提高。之所以先安装jdk是因为安装tomcat之前必须先安装jdk,原因是jdk是java编译和运行环境,tomcat运行时也需要用到jdk来编译执行java文件,tomcat是用纯java写的一个软件,没有jdk或者jre它运行不起。eclipse如果没有集成jdk的话 它也是运行不起的,因为它门都是用java语言写的软件,而java写的软件都必须运行在java软件必须有的jvm(java虚拟机)里,jvm是由软件jdk中的jre实现的。关于jdk的下载,读者可以到java官方网站去下载或者到正规的软件网站下载即可,我下载的是jdk-1_5_0_06-windows-i586-p,将其解压到当前文件夹,双击运行,依据提示即可一一完成安装,可能安装过程比较慢,请你耐心等待,安装完jdk即可以安装jre(java运行环境),你可以根据你的硬盘大小而选择在哪个硬盘进行安装,对于这些关于计算机方面的软件,建议大家安装在系统盘-c盘。2.2.2 apache tomcat应用服务器安装与配置安装完jdk和jre后即可安装tomcat了,同样,可到tomcat官方网站正规软件网站下载tomcat,我下载的是apache-tomcat-5.5.20,下载后双击运行它,并根据自己硬盘大小可选择在哪个硬盘进行安装,我安装的是c盘。2.2.3 jdk与tomcat相连路径配置前面已将jdk和tomcat安装好,接下来就可以让他们联系在一起了,但首先要了解一些名词:classpath:设置classpath的目的,在于告诉java执行环境,在哪些目录下可以找到您所要执行的java程序。java执行环境本身就是一个平台,执行于这个平台上的程序是已编译完成的java程序。如果将java执行环境比喻为操作系统,如果设置path变量是为了让操作系统找到指定的工具程序(以windows来说就是找到.exe文件),则设置classpath的目的就是让java执行环境找到指定的java程序(也就是.class文件)。 有几个方法可以设置classpath,最简单的方法是在系统变量中新增classpath环境变量。点击右键点击我的电脑,选择属性,点击高级,再选择“系统变量”下单击“新建”按钮,在“变量名”文本框中输入classpath,在“变量值”文本框中输入java类文件的位置。我之前是安装在c盘,所以其路径是c:program filesjavajdk1.5.0_06,注意:每一路径中间必须以;作为分隔。很多人在初学java的时候经常会被书中介绍的一堆环境变量的设置搞得头昏脑胀,很多书中都会在初装jdk的时候让他大家设置java_home环境变量,在开发程序的时候设置classpath环境变量,而很多人并不理解这两个环境变量的作用,我们来分别进行详细的阐述。首先是java_home环境变量,我们先来掌握这个环境变量的设置内容,java_home这个环境变量的设置内容是jdk的安装目录,比如说您的jdk安装在d:jdk1.6.0这个目录下,请您查看一下这个目录下是不是有一个子目录bin,bin目录中是不是有java.exe这个文件,如果是,那么您的java_home环境变量的内容应该为d:jdk1.6.0。那么我们设置这个环境变量的作用是什么呢?就单独的java开发而言,这个环境变量 并没有任何作用,这就是很多根据书上的描述设置好之后,把一本书学 完也没有用到这个变量,所以很是不理解。其实java_home变量最好还是设置一下,首先,我们为了能够编译和运行java程序,需要在path环境变量中把java.exe所在的目录设 置为path变量的一部分,目的是为了能够通过命令行运行javac和java 命令成为可能,当你在命令行中输入javac .或者java .的时候,如 果提示你一个错误:javac 不是内部命令或外部命令,也不是可运行 的程序或批处理文件。这时候说明操作系统没有找到你通过命令行输入 的javac这个命令,为什么呢?因为操作系统并不知道你的javac.exe 这个文件在哪里,所以无法执行对应的文件。那么为了能够让操作系统 找到这个可执行文件,我们就需要把javac.exe这个可执行文件所在的 目录作为path环境变量的一部分设置起来,这样当你在命令行输入一个命令的时候,操作系统就会自动搜索path变量中所指定的所有目录了。在windows系统中path变量中的所有路径采用分号分割,如果在linux系统中采用冒号分割。另外说明一点,如果你设置好了环境变量,在命令行中还是出现同样的错误,那么有两种可能,一种就是你的设置不正确,另一种就是你的设置没有生效,一般你可以 关闭命令行窗口再重新打开就可以了。这对这个设置,以刚才的目录为 例,那么path变量中的内容就是.;d:jdk1.6.0bin,这时候我们可 以借用已经设定过的java_home,将path的内容修改 为:.;%java_home%bin,这样的设置有一定的好处,当你的系统中 重新安装jdk,并改变过目录的话,你只要修改java_home的内容就可以 了,path则不需要修改。此外,java_home变量还会有一些其他用途, 比如eclipse这个ide,它本身是由java程序编写的,那么在运行的时候必然需要虚拟机的存在,所以eclipse在启动时需要查找虚拟机,如果有java_home这个变量,那么eclipse就会利用这个变量找到虚拟机的路径。所以虽然开始java_home环境变量可以不设置,但是还是建议大家为以后考虑而设置上。我们继续来谈论classpath的问题,很多书上在讲解java程序的时候建议大家设置classpath这个环境变量,我们这里不建议大家设置。原因我们会在稍后的时候看到。讲到classpath,我们首先来看编写java程 序时一直在用的两个命令javac和java。javac的命令语法是这样的:javac 我们常用的情况是这样的:javac -classpath 这里的类路径输入什么呢?这里的类路径是指要编译的java源文件中所用的非java的基础api中的类在那个目录下,路径可以是多个目录,用分号隔开来。比如说我们要编译app.java这个文件,而这个文件中用到了com.util这个包中的mydate这个类,现在我们假设mydate这个类存在目录是:d:mylibcomutilmydate.class,那么我们如何编 译app这个类呢?我们的命令如下:javac -classpath d:mylib app.java注意这里的classpath的内容,我们只是指定路径到package所在目录,并不能把package一起指定进去,而且mydate.class必须在comutil这个目录中,因为这个类定义了package为com.util。最后置至于tomcat路径,只需在classpath的变量值那行,紧接着写c:apachesoftwarefoundationtomcat5.5commonlibservlet-api.jar即可(我把tomcat安装在c盘)2.2.4 mysql以及驱动安装对于mysql,建议大家去官网下载比较好,我下载的是mysql5.1,解压后进行双击安装,安装过程请耐心等待,可根据提示信息选择想要安装的位置,安装过程中可设置用户名和密码,在选择字符集时最好选择utf-8,utf-8是unicode的一种变长字符集编码,选择它是因为这样能使得数据库中允许存放中文字节。这样mysql就安装好了,但是还没完,我们还要加入mysql驱动:mysql-connector-java-5.1.7-bin这可以到网上自由下取,将其放到所做项目的文件夹中的lib即可,例如我的项目放在d盘的workspace的zsglt,将mysql驱动放在d:workspacezsgltweb-inflib就可以了。最后一步是让项目能够和mysql融为一体,这只需在所做的项目中写上:class.forname(com.mysql.jdbc.driver);string url = jdbc:mysql:/localhost:3306/zsglt;string user = root;string password = 123;connect = drivermanager.getconnection(url, user, password);connect.settransactionisolation(connection.transaction_read_committed);这几句话的意思是连接数据库mysql里的zsglt项目,用户名为root,密码为1232.2.5 mysql客户端navicatnavicat for mysql是一个强大的mysql数据库服务器管理和开发工具。它可以与任何3.21或以上版本的mysql一起工作,并支持大部分的mysql最新功 能,包括触发器、存储过程、函数、事件、视图、管理用户,等等。它不仅对专业开发人员来说是非常尖端的技术,而且对于新手来说也易学易用。其精心设计的图 形用户界面,navicat for mysql可以让你用一种安全简便的方式快速并容易地创建,组织,访问和共享信息。navicat for mysql在三种平台上是可用的微软windows、mac os x 和linux操作系统。它可以使用户连接到本地/远程服务器,提供了几种实用工具,例如数据结构同步、导入/导出、备份和报告,使维护数据的过程很容易。除了常规的管理数据库对象外,navicat for mysql功能主要有:多种格式的导入导出能力,使维护数据的过程很容易。并可以从odbc导入数据:将mssql,oracle数据导入mysql批量的工作调度处理,有力减轻了数据库管理员的负担。快速地实现广域网远程连接,更加安全简便。 智能地构建复杂的sql查询语句,提高开发效率。2.2.6 eclipse安装及导入项目在eclipse官网下载eclipse并导入相应的包后,双击eclipse图标,选择你所做项目的地址,打开eclipse后,在eclipse上栏位点击window选择preferences,点击tomcat选择你当前的tomcat版本,再引入你当前安装的tomcat路径名,往下看有个configuration file,在此处引入你的tomcat的server.xml文件,在jvm setting的jre中选择你当前的jdk版本,最后鼠标右键点击左边空白处选择new,接着选others,然后双击tomcat project,导入你的项目,最后运行tomcat检查是否出现异常即可。为了能定制并完全控制eclipse,您需要对eclips
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 船舶建造生产合同书(标准版)
- 广东省茂名地区达标名校2025届全国普通高中初三三月大联考物理试题含解析
- 竞选英语组长发言稿
- 企业员工安全培训考试题附答案(培优B卷)
- 项目管理人员安全培训考试题含答案【能力提升】
- 计算机工程师在图像和信号处理中的应用和发展
- 城市工程质量验收的工程质量与环境监测技术
- 厂里安全培训考试题含完整答案(全优)
- 项目部管理人员安全培训考试题及完整答案(易错题)
- 全国高考历史试题汇编月 第一期Q单元古今中国的科学技术与文化含解析
- 中国34个省级行政区轮廓图(共2页)
- 月YXQ-G系列立式压力蒸汽灭菌器使用说明书
- 日本原装卡瓦依钢琴K300技术评测
- (完整版)绿藻鉴定图谱
- 《国企财务管理讲义》PPT课件.ppt
- 人岗匹配解决方案PPT课件
- 小学数学问题解决教学策略的研究课题实施方案
- 白花蛇舌草注射液十大给药途径对肿瘤治疗作用
- 《高等量子力学》课程教学大纲
- 美规丰田塞纳两驱3.5L商务车说明书中文版图文.ppt
- 取消断路器欠压(失压)脱扣功能的危害及对策
评论
0/150
提交评论