《基于WEB的学生考勤管理系统设计毕业设计论文.docx》由会员分享,可在线阅读,更多相关《基于WEB的学生考勤管理系统设计毕业设计论文.docx(56页珍藏版)》请在三一办公上搜索。
1、基于WEB的学生考勤管理系统随着计算机科学的发展,各种Web技术也随之不断的发展,Internet的应用越来 越广泛。在高校校园信息化过程中,有效地借助网络、数据库等技术成为提高工作和管 理效率的关键。如今针对师生的成绩查询系统、教务管理系统、招生就业系统、BBS、 校园网站等系统在各大高校纷纷出现,对全校师生的学习、生活、管理、办公带来了便 利。因此学生考勤管理系统能进一步加强高校学风建设,维护正常的教学秩序,给学生 创造一个优良的学习环境。本设计基于Web的学生考勤管理系统,开发与设计将使用当前主流的编程语言JaVa 来开发,用MySQ1.数据库作为底层数据的存储,在页面的实现中,将使用了
2、 javascript 技术,实现出一个功能相对齐全、界面简洁、使用方便、用户体验度相对较高的学生考 勤系统。该系统为用户提供了一个学生考勤管理平台,操作上力争实现人性化、合理化,满 足学校、老师、非计算机管理人员的使用和查看。关键词考勤管理、Java MySQ1.s javascriptjspStudent attendance system based on WebAbstractWith the deve1.opment of computer science, a variety of Web techno1.ogies a1.so wi1.1. continue the deve1.
3、opment of Internet app1.ications more wide1.y. In the process of campus information effective1.y through the network, database techno1.ogy and the key to improve management efficiency. Today, teachers and students for the achievement query system, educationa1. management system, enro1.1.ment and emp
4、1.oyment system, BBS, campus sites and other systems have appeared in major universities, teachers and students to 1.earn, 1.ive, management, office brings convenience. So the student attendance management system wi1.1. further strengthen the construction of university study sty1.e, maintaining the
5、norma1. teaching order, the students create a good 1.earning environment.The deve1.opment and design of student attendance system based on Web wi1.1. use the current mainstream programming 1.anguage Java to deve1.op, use MySQ1. database as data storage, in the rea1.ization of the page, the use of ja
6、vascript techno1.ogy, rea1.izes the function of a re1.ative1.y comp1.ete, the interface is simp1.e, easy to use, user experience degree student attendance system the re1.ative1.y high.The system provides a student attendance management p1.atform for the user, Operation strive to achieve humane and r
7、easonab1.e, to meet the schoo1., teachers, use of non-computer management and viewing.Key words: Attendance management, Java, MySQ1., JavaScriptJsp摘要IAbstractII第一章绪论1一、项目背景1二、Web的发展历史1()Web的起源1(二)Web技术发展阶段2三、编写目的4第二章系统关键技术及开发环境5一、系统开发环境5二、系统开发工具5()B/S 架构5(二)JaVa 技术7() Tomcat服务器技术8(四)MySQ1.数据库10(五)Ec
8、1.ipse11第三章系统分析13一、可行性分析13(-)引言13(二)目的和意义13(H)经济可行性13(四)技术可行性13二、需求分析14(-)用户需求概述14(-) 系统功能划分14第四章系统总体设计16一、系统设计目标16二、系统总体功能16三、系统功能模块16四、系统用例图18第五章数据库设计19一、数据库逻辑结构设计19(-)管理员信息表19(二)教师信息表19(H)学生信息表20(四)考勤信息表20二、数据库编写20(-)管理员信息表20(二)教师信息表21(H)学生信息表21(四)考勤信息表21第六章系统实现23一用户登录23二、在线请假25三、教师审批27四、管理员主要功能2
9、9第七章系统测试34一、软件测试的概念和方法34二、采用的测试技术34结论35参考文献37致谢36外文文献38第一章 绪论一、项目背景高校校园网的迅速普及,使学生考勤管理系统能充分依托校园网,实现教务信息的 集中管理、分散操作、信息共享,使传统的教务管理朝数字化、无纸化、智能化、综合 化的方向发展。基于Web的学生考勤系统利用JSP技术与MySQ1.数据库相结合实现, 具有数据输入、查询修改等功能,应用该系统可大大提高工作效率,并为进一步完善计 算机教务管理系统和全校信息系统打下良好的基础。随着高校校园信息化的逐步完善, 有效地借助网络、数据库等技术提高工作和管理效率。如今针对师生的成绩查询系
10、统、 教务管理系统、招生就业系统、BBS、校园网站等系统在各大高校纷纷出现,对全校师 生的学习、生活、管理、办公带来了便利。因此学生考勤管理系统能进一步加强高校学 风建设,维护正常的教学秩序,给学生创造 个优良的学习环境。信息技术的迅猛发展,已经引起社会的深刻变革,信息时代的到来,迫切要求我们 的学校管理进行变革。因此,信息化的考勤系统就在这种情况下变的越来越受欢迎,它 给教师带来了更加高效处理考勤的方法,使得教学能够比较顺利的进行下去,不会再因 为考勤等烦杂事务影响教学。因此一个好的学生考勤管理系统在一定程度上可以解决这 些弊端,本系统主要针对目前高校学生在线请假以及学生上课出勤管理而设计的
11、信息系 统。学生考勤管理系统是一个B/S系统,它的出现,改变了教师手工登记考勤信息的管 理方式,管理员及教师使用计算机对学生信息进行管理,具有着手工无法比拟的优点,例 如:考勤统计查询方便快捷,数据存储量大,可靠性高等,便于教师掌握学生的出勤情况。 学生考勤系统以方便、快捷等优点冲击着传统的考勤方式。也正是因为这些优点,使它 更符合现代社会人们快节奏、高效率的生活方式。二、Web的发展历史()Web的起源混沌初开,一切都那么简单。为了连接美国的少数几个顶尖研究机构,人们设计了 最早的“Internet”,以便共同开展科学研究。不论是图书馆员、核物理 学家,还是计 算机科学家,都必须学习一个相当
12、复杂的系统。1962年,麻省理工学院(MIT)的J.C.R. 1.iCk1.ider最早提出他的Ga1.actic Network”(超大网络)思想时,FirefOX和IE之类的 便捷工具连概念都未产生。1.iCk1.ider后来继续在美国国防高级研究计划局(DARPA)从事计算机研究,在那 里他积极地宣扬网络化思想的重要性。几乎与此同时,MIT的1.eonardKIeinroek和 1.awrence G Roberts正在开展分组交换理论的研究,这是计算机联网的一个核心概念。 在ThOmaS Merri1.1.的帮助之下,Roberts于1965年进而创建了第一个广域网,他通过一 个拨号连
13、接使马萨诸塞州的一台TX-2连上了加利福尼亚州的一台Q-32o1966年底,RobertS带着他的实验结果来到DARPA,在这里他构思了高级研究项 目管理网络(AdvancedResearchprojectsAdministrationNetwork, ARPANET)的计划。 此时,K1.einrock正在加州大学洛杉矶分校网络测量中心(NetWork Measurement Center), 这里被选作ARPANET的第一个节点。正是在这里,1969年BBN公司成功地安装了第 一个分组交换器,称为接口消息处理器(InterfaCeMeSSagePrOCeSSOrS, IMP)O斯坦福 研究
14、中心被选为第二个节点,1969年10月,在此首次实现了主机到主机的消息交换。 此后不久,又将加州大学圣巴巴拉分校和犹他大学增加为节点,这就是我们现在所称 因特网的前身。Web是Wor1.dWideWeb的简称,中文称之为万维网,是用于发布、浏览、查询信 息的网络信息服务系统,由许多遍布在不同地域内的Web服务器有机地组成。 Web的不断完善都是基于各种Web技术的不断发展,Web的应用架构是由英国人Tim Bemers-1.ee在1989年提出的,而它的前身是1980年Tim Berners-1.ee负责的 Enquire(Enquire Within Upon Everything 的简称)
15、项目。1990 年 11 月第一个 Web 服务器 nxoc01.cern.ch开始运行,由Tim Berners-1.ee编写的图形化Web浏览器第一次出现在人 们面前。1991 CERN(European Partic1.e Physics 1.abOratOry)正式发布了 Web 技术标准。 目前,与Web相关的各种技术标准都由著名的W3C组织(WOr1.d Wide Web Consortium) 管理和维护。(二)Web技术发展阶段互联网的发展总是让人瞠目结舌。当人们身处Web1.0,讨论着博客,SNS (社会性 网络)等这些web2.0概念的时候,我们不禁想问:web3.0的时代
16、,我的世界将会怎么 样?那么就让我们来看看前两个互连网时代的特性吧 1. Web技术发展的第一阶段静态技术阶段本阶段的Web主要是静态的Web页面。在这个阶段,HTM1.语言就是Web向用户 展示信息的最有效的载体。HTM1.的全称是超文本标注语言(HyPerTeXtMarkUP 1.anguage),它通过提供超文本格式的信息,在客户端的用户机上显示出完整的页面。 Web服务器使用HTTP(Hyper Text Transport PrOtOCO1.)超文本传输协议将HTM1.文档从 Web服务器传输到用户的Web浏览器上。通过(IiU2 1.an3 qi4 shang4 _tong1. g
17、uo4)对各种 资料的学习,我们得知,HTM1.的构想由上世纪四五十年代就形成了。1945年,Vannevar BUSh就已经提出了一种使文本与文本相互关联的问题,并给出了能够实现文件关联的 计算机设计方案,其后,DOUgEngeIbart等人则对该种方案进行了首次实验。TedNeISon 于1960年前后正式将这种信息关联技术命名为超文本(HyPerteXt)技术。1969年,IBM 的 Char1.es Go1.dfarb 发明 了可用于描述超文本信息的 GM1.(Genera1.ized Markup 1.anguage) 语言,也就是后来的SGM1.语言。经过不断(yu3 yan2 J
18、ing1. guo4 bu4 duan4)的完善, 到1990年,第一个Web浏览器就可以使用HTM1.语言来实现超文本信息的展示。在本阶段,由于受HTM1.语言和旧式浏览器的制约,Web页面只包含了静态的文 本和图像信息,限制了资源共享,这个现象越来越不能满足人们对信息多样性和及时性 的要求。而这一阶段的Web服务器基本上只是一个HTTP的服务器,它负责接收客户 端浏览器的访问请求,建立连接,响应用户的请求,查找所需的静态的Web页面,再 返回到客户端。2. Web技术发展的第二阶段动态技术阶段在Web出现的同时,能存储、展现二维动画的GIF图像格式也已发展成熟,为HTM1. 引入动态元素提
19、供了条件。此后,为了能更好地克服静态页面的不足,人们将传统单机 环境下的编程技术引入互联网络与Web技术相结合,从而形成新的网络编程技术。1995年JaVa语言的问世给Web的发展带来更大的变革,它为人们提供了一条在浏览器中开 发应用的捷径。1996年,著名的Netscape浏览器2.0版本和Microsoft的IE 3.0增加了 对JaVaAPPIetS和JaVaSCriPt的支持。JaVaSCriPt语音是一种脚本方式运行的,简化的Java 语言。Web世界里从此出现了脚本技术。MiCrOSoft公司于1996年为IE3.0设计出了与 JavaScript相抗衡的脚本语言VBSCriPt脚
20、本语言。在Windows98及其后的Windows操作系统中,WSH (WindOWSSCriPtHoSt)技术将原本只能在浏览器中运行的JaVaSCript、 VBScript变成了可以在WIN32环境下使用的通用脚本语言。其实,真正让HTM1.页面又酷又炫、动感无限的是CSS(Cascading Sty1.e SheetS)和 DHTM1.(DynamiCHTM1.)技术。1996年底,W3C组织提出了 CSS的建议标准,同年, IE3.0引入了对CSS的支持。这项技术使得开发者能够在Web上更好地把握信息的的展 示。1997年的NetSCaPe 4.0在支持CSS技术的同时,又增加了愈多
21、由他们自定义的动 态HTM1.标记,同年,MiCrOSoft公司发布了 IE 4.0,并将动态的HTM1.标记、CSS和 动态对象模型(DHTM1.ObjeCt ModeI)发展成了一套完整的客户端开发技术体系(DHTM1.)o该项技术无需启动JaVa虚拟机或其他脚本环境,在浏览器的支持下,同 样可以实现HTM1.页面的动态展示,而且可以获得更好的效果。1996 年,Netscape 2.0 成功引入了对 QuickTime 插件的支持(Cha1. jian4 deO zhi1. Ch, 从此,实现了在HTM1.页面下音频、视频等更为(ye4 mian4 xia4 yin1. pin2 _sh
22、i4 pin2 deng3 geng4 wei4)复杂的多媒体应用。同年,IE 3.0正式支持在HTM1.页面中插入 ACtiVeX控件的功能。从此,各式各样由不同公司所开发的各种插件先后在浏览器上取 得了成功。我们这里所说的动态页面和静态页面是相对应的,在引入了动态技术生成的网页 中,网页UR1.的后缀不只是.htm、.htm1.、.Shtm1、.Xm1.等静态网页的常见形式,还可以 是以.asp、.jsp、.php、.per1.、.Cgi等形式为后缀。从网页内容的显不上看,动态网页引 入了各项技术,使得网页内容更多样化,引人入胜;从网站的开发管理和维护角度看, 动态网页以数据库技术为基础,
23、更利于网站的维护,而动态网页使用了 ASP对象,可 以实现诸如用户注册、用户登陆、数据管理等的功能,大大提高了网络的利用率,为用 户提供更多的方便。3. Web技术发展的第三阶段Web2.0新时期在最近两年里,Web2.0这个名词引起了很多人的关注,那什么是Web2.0呢?其实, Web2.0并没有一个准确的定义,甚至于它并不是一个具体的事物,它只是人们对于一 个阶段的描述。在这一阶段,用户可以自己主导信息的生产和传播,从而打破了原先所 固有的单向传输模式。Web2.0并不是一个革命性的改变,而只是应用层面的东西,相 对于传统的门户网站,它具备了更好的交互性。一般来说Web2.0 (也有人称之
24、为互联网2.0)是相对Web1.O的新的一类互联网应 用的统称。WebI.0的主要特点在于用户通过浏览器获取信息,Web2.0则更注重用户的 交互作用,用户既是网站内容的消费者(浏览者),也是网站内容的制造者。如果说 WEB1.O是以数据为核心的网,那我觉得WEB2.0是以人为出发点的互联网让,是要让 所有的人都忙起来,全民织网,然后用软件,机器的力量使这些信息更容易被需要的人 找到和浏览,让我们通过几个Web2.0的产品,就可以理解以上的观点!B1.og 博客/网志:B1.og的全名应该是Web 1.og,后来缩写为B1.ogo B1.og是一个 易于使用的网站,您可以在其中迅速发布想法、与
25、他人交流以及从事其他活动。所有这 一切都是免费的。RSS站点摘要:RSS是站点用来和其他站点之间共享内容的一种简易方式(也 叫聚合内容)的技术。最初源自浏览器“新闻频道”的技术,现在通常被用于新闻和其 他按顺序排列的网站,例如B1.og。WIKI百科全书:W汰i-一种多人协作的写作工具。Wiki站点可以有多人(甚 至任何访问者)维护,每个人都可以发表自己的意见,或者对共同的主题进行扩展或者 探讨。Podcasting:个人视频/声频的发布/定阅。SNS社会网络:Socia1. Network Sofwaret,社会性网络软件,依据六度理论,以认识朋友的朋友为基础,扩展自己的人脉。P2P对等联网
26、:P2P是PeeHo-Peer的缩写,Peer在英语里有“(地位、能力等) 同等者”、“同事”和“伙伴”等意义。这样一来,P2P也就可以理解为“伙伴对伙伴”、 “点对点”的意思,或称为对等联网。目前人们认为其在加强网络上人的交流、文件交 换、分布计算等方面大有前途。IM即时通讯:即时通讯(InStantMeSSenger,简称IM)软件可以说是目前我国上网用户使用率最高的软件。聊天一直是网民们上网的主要活动之一,网上聊天的主 要工具已经从初期的聊天室、论坛变为以MSN、QQ为代表的即时通讯软件。三、编写目的系统对学校全体学生的资料和考勤情况进行管理,通过每日的打卡把出勤信息输入 到学校的考勤管
27、理中心,保存学生每日的的出勤情况,以便于统计学生的出勤情况。同 时方便班长查阅,即节省了人力,又省去了中间的很多容易出错的步骤。让学校学生的 考勤管理更具有透明性,且方便管理。此外系统还涉及系统数据安全和用户管理的问题、各种代码使用和维护问题、数据 安全和数据维护问题、统计报表生成和输出等问题,因此还要求系统具有系统管理和事 务处理功能。总而言之,要求通过系统的开发,达到系统项目的总体目标是:在整个系 统的框架下,结合学生在学校的实际出勤情况的需要实现对数据更新、数据查询、数据 统计、数据分析等功能进行有效的管理。并提供用户友好接口,满足学校管理需求的软 件,提高学校对学生的管理效率,从而完善
28、学校的管理制度。学生考勤管理程序是学校管理工作中一个比较重要的任务,过多的学生考勤管理程 序工作给学校管理人员带来了很大麻烦的。虽然原始的记录方法在一定的程度上可以解 决问题,可是现在计算机已经走到了我们的生活,它的不足之处就显而易见了。学生 考勤管理程序,是一个对于学生考勤的管理系统,不仅大大减少了考勤管理人员的大量 的工作,而且还方便了班级和学校对学生出课率的查询,只要通计算机登入本系统就能 及时修改、更正学生的考勤信息,使信息真实、有效。这样节省了大量人力物力,节省 了宝贵的时间,大大提高了工作效率操作上力争实现人性化、合理化,满足学校、老 师、非计算机管理人员的使用和查看。第二章系统关
29、键技术及开发环境一、系统开发环境系统结构:BS(浏览器/服务器) 开发语言:JAVA/JSP数据库:MySQ1.开发工具:Ec1.ipse服务器端容器:Tomcat 6.0二、系统开发工具(一)B/S架构学生考勤管理系统采用了当前很流行的B/S模式结构。相对于以往的主机/终端、 C/S机构来说,B/S结构更具有优势。在B/S体系结构系统中,用户通过浏览器向分布在网络上的许多服务器发出请求, 服务器对浏览器的请求进行处理,将用户所需信息返回到浏览器。而其余如数据请求、 加工、结果返回以及动态网页生成、对数据库的访问和应用程序的执行等工作全部由 WebSerVer完成。随着WindOWS将浏览器技
30、术植入操作系统内部,这种结构已成为当 今应用软件的首选体系结构。显然B/S结构应用程序相对于传统的C/S结构应用程序是 一个非常大的进步。B/S (Browser / Server)结构即浏览器和服务器结构。它是随着InIernet技术的兴 起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户工作界面是通过WWW 浏览器来实现,极少部分事务逻辑在前端(BrOWSer)实现,但是主要事务逻辑在服务 器端(Server)实现,形成所谓三层(3-tier)结构。一个三层架构的应用程序由三部分 组成,这三部分各自分布在网络中的不同地方。这三个部分分别是:工作站或表示层接 口、事务逻辑、数据库以
31、及与其相关的程序设计。在一个典型的三层架构应用程序中, 应用程序的用户工作站包括提供图形用户界面(GUI)的程序设计和具体的应用程序入 口表格或交互式窗口。事务逻辑处在局域网(1.AN)服务器或其他共享主机上,它作为响应工作站所发出 学生请求的服务器,而相对于处于大型机的第三层它是作为学生端,并且决定需要什么 数据以及数据存储在哪里。第三层包括数据库以及处理读写以及访问数据库的程序。然 而应用程序的设计可能比这个架构要复杂,对于大型程序来说,这个三层模式是一种比 较简便的考虑方法。这种应用程序的设计使用学生/服务器模式,各层可以同时开发,并且可以由不同 的成员组用不同的语言来开发。因为各个层次
32、的开发不会影响其他层次,所以这种模型 对于进一步开发软件是很方便的。这样就大大简化了学生端电脑载荷,减轻了系统维护 与升级的成本和工作量,降低了用户的总体成本(TCO)o以目前的技术看,局域网建 立B/S结构的网络应用,并通过IntenIet/Intranet模式下数据库应用,相对易于把握、 成本也是较低的。它是一次性到位的开发,能实现不同的人员,从不同的地点,以不同 的接入方式(比如1.AN, WAN, Internet / Intranet等)访问和操作共同的数据库;它 能有效地保护数据平台和管理访问权限,服务器数据库也很安全。特别是在JaVa这样 的跨平台语言出现之后,B/S架构管理软件
33、更是方便、快捷、高效。这种B/S模式学生端只要安装一个标准的Web浏览器,其它应用程序都存储在Web 服务器上。建立在B/S模式上的在线考试系统,可建立大型、高效、共享的题库,在服 务器端对数据库进行管理,学生端通过浏览器登录考试系统,打破了时空界限,可实现 自动出卷、阅卷、评卷、简化考试程序,且考试结果更加公正、客观。采用B/S (BrowserZServer)模式的计算机在线考试和管理系统适用于一个考场或 几十个考场、几十人甚至几万人同时通过网络在线考试,解决了考试系统对学生机软件 过分依赖的问题,减轻了学生机软件维护工作量,比以往的考试系统更具有实用性。采 用这种结构,考试系统安装和试题
34、装卸的程序简易;进行不同类别试题的考试时仅需要 在服务器上进行试题的更换处理,对考场的计算机配置应考专业的相应软件,考生就可 以进行考试。此技术超越了传统的“学生机/服务器”两层结构,采用了三层体系结构:用户界 面层/事务层/数据库层。因此Web结构有着更好的安全性。在用户机上不需要安装任何 应用程序,应用程序可以安装在事务层所在的计算机上,试题存放在数据库服务器上(事 务层和数据库可以是同一台机器)。采用B/S结构软件的优势在于:(1)维护和升级方式简单。当前,软件系统的改进 和升级越发频繁,B/S架构的产品明显体现着更为方便的特性。对一个稍微大一点单位 来说,系统管理人员如果需要在几百甚至
35、上千部电脑之间来回奔跑,效率和工作量是可 想而知的,但B/S架构的软件只需要管理服务器就行了,所有的客户端只是浏览器,根 本不需要做任何的维护。无论用户的规模有多大,有多少分支机构都不会增加任何维护 升级的工作量,所有的操作只需要针对服务器进行;如果是异地,只需要把服务器连接 专网即可,实现远程维护、升级和共享。所以客户机越来越“瘦”,而服务器越来越“胖” 是将来信息化发展的主流方向。今后,软件升级和维护会越来越容易,而使用起来会越 来越简单,这对用户人力、物力、时间、费用的节省是显而易见的,惊人的。因此,维 护和升级革命的方式是“瘦”客户机,“胖”服务器。(2)成本降低,选择更多。大家都知道
36、WindOWS在桌面电脑上几乎一统天下,浏览器 成为了标准配置,但在服务器操作系统上WindoWS并不是处于绝对的统治地位。当前 的趋势是凡使用B/S架构的应用管理软件,只需安装在1.inUX服务器上即可,而且安全 性高。所以服务器操作系统的选择是很多的,不管选用哪种操作系统都可以让大部分人 使用windows作为桌面电脑操作系统不受影响,这就使得最流行免费的1.inux操作系统 快速发展起来,1.inUX除了操作系统是免费的以外,连数据库也是免费的,这种选择非 常盛行。比如说很多人每天上“新浪”网,只要安装了浏览器就可以了,并不需要了解“新浪” 的服务器用的是什么操作系统,而事实上大部分网站
37、确实没有使用WindOWS操作系统, 但用户的电脑本身安装的大部分是windows操作系统。(3)应用服务器运行数据负荷较重。由于B/S架构管理软件只安装在服务器端(SerVer) 上,网络管理人员只需要管理服务器就行了,用户界面主要事务逻辑在服务器(SeNer) 端完全通过WWW浏览器实现,极少部分事务逻辑在前端(Browser)实现,所有的客 户端只有浏览器,网络管理人员只需要做硬件维护。但是,应用服务器运行数据负荷较 重,一旦发生服务器“崩溃”等问题,后果不堪设想。因此,许多单位都备有数据库存 储服务器,以防万一。(二)JaVa 技术在丰富的开发语言种类中,Java是一个非常理想的选择。
38、Java 分为三个体系 JavaSE (J2SE) (Java2 P1.atform Standard Edition, java 平台标准 版),JavaEE(J2EE)(Java 2 P1.atform,Enterprise Edition, java 平台企业版), JavaME(J2ME)(Java 2 P1.atform Micro Edition, java 平台微型版)。JaVa与传统程序不同,SUnMiCrOSyStemS公司在推出JaVa之际就将其作为一种开 放的技术。使得全球的JaVa公司在开发的关于JaVa程序都要做到了互相兼容。“Java 语言开发要靠大家努力而非个人、
39、企业的力量”是SUnMiCrOSyStemS的口号之一,并且 得到了大多数软件开发公司的认可。这种模式和微软公司所提倡的注重精英的模式和密 封式的模式完全不同。Sun Microsystems公司对JaVa编程语言的官方诠释是:Java编程语言是个简单、 面向对象、健壮、解释性、分布式、安全与系统无关、高性能、可移植、多线程和动态 的语言。Java编程语言的风格非常的接近C语言、C+语言。JaVa语言的设计核心是面向对 象的编程语言,它继承了 C+语言面向对象技术的核心。Java的进步是其没有像C语言那样,容易由于指针引起错误、运算符重载(OPeratOr over1.oading).多重继承
40、(以接口取代)等特性,增加了垃圾回收功能用于回收不再被 引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。在JaVa1.5之后的版本中,Java又引入了类型安全的枚举、泛型编程(GeneriC Programming自动装/拆箱和不等长参数等等语言特性。JaVa语言是易学的。JaVa语言的语法与C语言和C+语言很接近,使得大多数程 序员很容易学习和使用Java。另一方面,JaVa丢弃了 C+中很少使用的、很难理解的、 令人迷惑的那些特性,如操作符重载、多继承、自动的强制类型转换。特别地,Java 语言不使用指针,而是引用。并提供了自动的废料收集,使得程序员不必为内存管理而 担忧。J
41、aVa语言是强制面向对象的。JaVa语言提供类、接口和继承等原语,为了简单起见, 只支持类之间的单继承,但支持接口之间的多继承,并支持类与接口之间的实现机制(关 键字为imp1.ements)。JaVa语言全面支持动态绑定,而C+语言只对虚函数使用动态绑 定。总之,JaVa语言是一个纯的面向对象程序设计语言。JaVa语言是分布式的。JaVa语言支持Internet应用的开发,在基本的JaVa应用编程 接口中有一个网络应用编程接口(javanet),它提供了用于网络应用编程的类库,包括 UR1. UR1.Connection Socket、SerVerSoCket 等。JaVa 的 RM1. (
42、远程方法激活)机制 也是开发分布式应用的重要手段。JaVa语言是健壮的。JaVa的强类型机制、异常处理、垃圾的自动收集等是JaVa程 序健壮性的重要保证。对指针的丢弃是Java的明智选择。Java的安全检查机制使得Java 更具健壮性。JaVa语言是安全的。JaVa通常被用在网络环境中,为此,Java提供了一个安全机 制以防恶意代码的攻击。除了 JaVa语言具有的许多安全特性以外,JaVa对通过网络下 载的类具有一个安全防范机制(类CIaSS1.Oader),如分配不同的名字空间以防替代本地 的同名类、字节代码检查,并提供安全管理机制(类SeCUrityManager)让JaVa应用设 置安全
43、哨兵。JaVa语言是体系结构中立的。JaVa程序(后缀为java的文件)在JaVa平台上被编 译为体系结构中立的字节码格式(后缀为C1.aSS的文件),然后可以在实现这个JaVa平 台的任何系统中运行。这种途径适合于异构的网络环境和软件的分发。JaVa语言是可移植的。这种可移植性来源于体系结构中立性,另外,JaVa还严格规定了 各个基本数据类型的长度。Java系统本身也具有很强的可移植性,Java编译器是用Java 实现的,Java的运行环境是用ANSI C实现的。JaVa语言是解释型的。如前所述,Java程序在JaVa平台上被编译为字节码格式, 然后可以在实现这个JaVa平台的任何系统中运行
44、。在运行时,JaVa平台中的JaVa解释 器对这些字节码进行解释执行,执行过程中需要的类在联接阶段被载入到运行环境中。 JaVa是性能略高的。与那些解释型的高级脚本语言相比,JaVa的性能还是较优的。JaVa语言是原生支持多线程的。在JaVa语言中,线程是一种特殊的对象,它必须 由Thread类或其子(孙)类来创建。通常有两种方法来创建线程:其一,使用型构为 Thread(RUnnab1.e)的构造子将一个实现了 RUnnab1.e接口的对象包装成一个线程,其二, 从Thread类派生出子类并重写run方法,使用该子类创建的对象即为线程。值得注意 的是Thread类已经实现了 R1.mnabI
45、e接口,因此,任何一个线程均有它的run方法,而 run方法中包含了线程所要运行的代码。线程的活动由一组方法来控制。JaVa语言支持 多个线程的同时执行,并提供多线程之间的同步机制(关键字为SynChroniZed)。JaVa语言是动态的。JaVa语言的设计目标之一是适应于动态变化的环境。JaVa程 序需要的类能够动态地被载入到运行环境,也可以通过网络来载入所需要的类。这也有 利于软件的升级。另外,JaVa中的类有一个运行时刻的表示,能进行运行时刻的类型检 查。JaVa语言的优良特性使得JaVa应用具有无比的健壮性和可靠性,这也减少了应用 系统的维护费用。JaVa对对象技术的全面支持和JaVa
46、平台内嵌的API能缩短应用系统 的开发时间并降低成本。JaVa的编译一次,到处可运行的特性使得它能够提供一个随 处可用的开放结构和在多平台之间传递信息的低成本方式。特别是JaVa企业应用编程 接口(JaVaEnterPriSeAPIS)为企业计算及电子商务应用系统提供了有关技术和丰富的 类库。Java的优势:此开发语言非常适合集体开发,软件工程可以相对做到一定的标准化。 由于其本身的极度严格语法的特点,因此JaVa语言无法写出结构杂乱无章的程序。这 样将迫使程序员的软件代码、软件结构的一致性、规范性。这是其很难比拟的优势。JaVa的劣势:j2ee的架构相对完善,第一版软件虽然可以做满意,但是很
47、不适合互 联网模式的持续不断修改。互联网软件工程管理上的不好的地方,不断的修补就会导致 软件框架的破坏。() TomCat服务器技术目前支持JSP的应用服务器是较多的,Tomcat是其中较为流行的一个Web服务 器,被JaVaWorkI杂志的编辑选为2001年度最具创新的java产品,可见其在业界的地 位。TomCat是一个免费的开源的Ser1.Vet容器,在TOmCat中,应用程序的部署很简单, 你只需将你的WAR放到Tomcat的webapp目录下,TomCat会自动检测到这个文件, 并将其解压。你在浏览器中访问这个应用的JSP时,通常第一次会很慢,因为TomCat 要将JSP转化为Ser
48、V1.et文件,然后编译。编译以后,访问将会很快。另外TOmCat也提 供了一个应用:manager,访问这个应用需要用户名和密码,用户名和密码存储在一个 Xm1.文件中。通过这个应用,辅助于Ftp,你可以在远程通过Web部署和撤销应用。当 然本地也可以。TOmCat也具有传统的Web服务器的功能:处理Htm1.页面。但是与Apache相比, 它的处理静态Htm1.的能力就不如Apacheo我们可以将Tomcat和Apache集成到一块, 让APaChe处理静态Htm1.,而TOmCat处理JSP和SerVIet。这种集成只需要修改一下Apache 和TOmCat的配置文件即可。TomCat是一个很好的工具,不仅仅因为其免费,功能强大,更因为其开放性,越 来越收到人们的重视。Tomcat服务器是一个免费的开放源代码的Web应用服务器,目前最新版本是 6.0.14o目前支持JSP的应用服务器是较多的,Tomcat是其中较为流行的一个Web服务器, 被JavaWor1.d杂志的编辑选为2001年度最具创新的Java产品,可见其在业界的地位。TOmCat是一个免费的开源的Ser1.Vet容器,在TOmCat中,应用程序