资源描述
*大学毕业设计(论文)题 目:企业考勤管理系统姓 名: 学 号: 专 业:指导老师:答辩时间: 摘 要随着计算机的普及和计算机科学技术的飞速发展,人们开始越来越多地利用计算机解决实际问题。员工考勤信息管理是企业信息管理的重要部分。面对大量的企业考勤信息,采用人力处理将浪费大量的时间、人力和物力,且数据的准确性低。 因此,开发一个界面友好,易于操作的员工信息管理软件进行自动化处理具有较大的社会现实意义。同时,人事考勤管理系统是一切应用系统的典范,它具有一切应用系统的特征,系统结构与现实生活紧密结合,具体直观,开发应用简单,不失一般性。企业考勤管理系统的特点是从企业考勤管理的角度出发,用集中的数据库将几乎所有与考勤相关的数据统一管理起来,形成了集成的信息源。友好的用户界面,强有力的报表生成工具、分析工具和信息的共享使得企业考勤管理人员得以摆脱繁重的日常工作,集中精力从战略的角度来考虑企业考勤规划和政策。本论文主要介绍了系统的分析,设计和开发的全部过程。运用数据流图,ER图,程序流程图等对系统的设计过程进行详细的说明。全文共分为前言、需求分析、系统设计、开发技术、关键技术解决,结论六部分。系统采用B/S开发模式,开发工具选择JAVA、JSP、JavaScript、Html语言,采用Tomcat服务器技术,后台数据库选用SQL Server 2000。关键词:JSP,JAVA,SQL Server 2000数据库,B/S模式AbstractWith the proliferation of computers and computer science and technology, the rapid development of more and more people began to use computers to solve practical problems. Employee attendance information management is an important part of enterprise information management. Attendance information on the face of a large number of enterprises, using manpower to tackle the waste of a lot of time, manpower and material resources, and the low accuracy of the data. Therefore, developing a user-friendly, easy-to-employee information management software for automated processing of a larger social relevance. At the same time, personnel attendance management system is a model for all applications, it has all the characteristics of application systems, system structure closely integrated with the real life, concrete intuitive, development and application of simple, without loss of generality. Enterprise Attendance Management System is characterized by attendance from the business management point of view, with a centralized database will be almost all the unified management of attendance-related data together to form an integrated source of information. User-friendly interface, powerful reporting tools, analytical tools and information sharing allows businesses Attendance Management staff to get rid of the heavy daily work and concentrate from a strategic point of view business planning and policy appraisal.The thesis has introduced the analysis of the system, and its design and exploit. With the data flow chart, ER chart and program flow chart, the design process of the system has been illustrated in detail. The paper can be divided into six parts: introduction, demand analysis, system design, development technique, key technology and the conclusion. The exploit mode is B/S, and the development tools are JAVA, JSP, JavaScript and Html. It takes the Tomcat as its server, and the backstage supporters database is finished by SQL Server 2000.Key words:JSP, JAVA, SQL Server 2000 database, B/S mode目 录第 1 章绪论6第 2 章需求分析72.1问题分析72.2方案选择72.3任务概述82.4功能需求概述82.5运行环境9第 3 章系统概念结构设计13.1功能划分13.1.1系统结构设计13.1.2系统功能模块1第 4 章系统设计34.1指导思想34.2系统层次模块图34.3系统流程图44.4数据流程图54.5功能模块设计54.5.1系统管理模块54.5.2部门管理74.5.3公告管理94.5.4员工管理114.5.5留言管理134.5.6个人考勤154.5.7考勤管理164.5.8请假管理164.6数据库设计18第 5 章开发技术205.1开发技术介绍205.1.1B/S模式及其优势205.1.2Web应用程序开发环境JSP技术215.1.3Java简介215.1.4Tomcat应用服务器235.1.5SQL server 2000265.2数据访问接口27第 6 章关键技术解决286.1JSP企业考勤管理配置说明286.2JSP与数据库的连接29第 7 章结论30致谢31参考文献32第 1 章 绪论随着计算机技术的飞速发展,以计算机与通信技术为基础的信息系统正处于蓬勃发展的时期。同时,以计算机为基础的各种软件也渐渐走入规模不同的各种企业单位中。企业在对竞争日趋强烈的现代社会在不断提高自身产品质量的同时,对员工的要求也逐渐提高,考勤管理也就成为了一个大众化的课题。 企业考勤管理系统是为了解决员工考勤管理的而设计的,目的是建立一个能够初步实现企业考勤管理系统的智能化管理,提高考勤管理效率,工作人员能够在各个岗位上的工作状态得到及时的反馈,而系统所需的工作人员的数量少,效率高。企业考勤管理系统是一个企事业单位不可缺少的一部分,它的内容对于企业的决策者和管理者来说都是至关重要的,因此,企业考勤管理系统应该能够为用户提供充足人事管理的信息和快捷的管理查询手段,但一直以来人们使用传统的人工方式管理员工的上下班等信息,这种管理方式存在着许多缺点,诸如效率低,保密性差等,而且时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。随着科学技术的不断提高,计算机科学不断发展,其强大的功能已经被人们深刻认识,它已经进入了人类社会的各个领域并发挥着越来越重要的作用.作为计算机应用的一部分,使用计算机对企业考勤信息进行管理,具有着人工管理无法比拟的优点,它检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等,可减少更多的人力物力,这些都能够极大地提高企业的考勤管理效率,也是企业考勤管理科学化、正规化,与世界接轨的重要条件.因此,开发一个企业考勤管理系统是很有必要的,具有其特有的技术意义和管理意义。第 2 章 需求分析2.1问题分析企业考勤管理系统是一个企事业单位不可缺少的一部分,它的内容对于企业的决策者和管理者来说都是至关重要的,因此,企业考勤管理系统应该能够为用户提供充足人事管理的信息和快捷的管理查询手段,但一直以来人们使用传统的人工方式管理员工的上下班等信息,这种管理方式存在着许多缺点,诸如效率低,保密性差等,而且时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。因此,开发一个企业考勤管理系统是很有必要的,具有其特有的技术意义和管理意义。企业考勤管理系统拟采用B/S模式,三层结构设计。涉及静(动)态网页编写(熟悉HTML、CSS、JavaScript)、程序设计(ASP、PHP、JSP或其它语言基础)、数据库应用(SQL server、MySQL的使用、SQL语言、调优)、数据库设计、软件工程及软件测试,用户界面设计、美化、文档编写(软件开发计划、用户手册等设计内容都要形成文字)等各方面知识;以及团队组织、项目管理,帮助文档的编写、部分的测试等。2.2方案选择开发企业考勤管理系统,提出以下解决方案:采用B/S模式,选择SQL Server 2000作为后台数据库,选择JAVA、JSP、JavaScript、Html作为应用程序开发工具,运用Tomcat服务器技术,整个系统完全基于Browser/Server模式进行设计。B/S模式有以下优点:(1)开发成本及维护成本降低。由于B/S架构管理软件只安装在服务器端(Server)上,网络管理人员只需要管理服务器就行了,用户界面主要事务逻辑在服务器(Server)端完全通过WWW浏览器实现,极少部分事务逻辑在前端(Browser)实现,所有的学生端只有浏览器,网络管理人员只需要做硬件维护。(2)良好的安全性能,防火墙技术可以保证后台数据库的安全性。所有学生端请求都是通过DBMS来访问数据库,从而大大减少了数据直接暴露的风险。因此系统的架构就采用了B/S设计模式。2.3任务概述企业考勤管理系统主要实现系统管理、部门管理、公告管理、员工管理、个人考勤、考勤管理、留言管理等功能,充分利用计算机网络技术,改变传统的操作方式进行管理,实现了网络化管理模式。2.4功能需求概述(1) 用户类别:登录系统的身份定为二种,一是管理员(企业领导),二是般普通员工,只有被授权的用户才可以使用本系统的资源。(2) 权限管理:系统需要经过有效的身份验证可以登录。用户的身份不同,使用的系统资源也不同。普通员工可以进行个人考勤查询,同时还可以有系统公告的管理功能;管理员(企业领导)可添加公告、员工信息、查询修改管理员信息、进行留言管理、请假管理、考勤管理,可以对员工考勤进行查询操作,可以对系统发布公告等信息,可控制整个系统的登录功能(控制系统)的登录,拥有整个系统的全部使用权限。(3) 用户留言:管理员、普通员工可以在本系统中进行发表意见,并可以查看留言记录。(4) 控制系统:领导可对普通员工用户进行控制,看是否可以登录。(5) 部门管理:领导对本企业的部门进行添加、查询的功能。(6) 公告编辑:领导对本系统中的所用子级用户进行发布公告及编辑。(7) 个人考勤:用户登录系统后,可以考勤(上班,下班)。(8) 留言管理:本系统使用者可以进行发表意见,并可以查看留言记录。(9) 请假管理:管理员可以以员工的请假信息进行操作(准请假和不准请假)。(10) 考勤管理:管理员可以对员工的全部考勤进行查询的功能操作,但普通员工只能对自己的考勤有查询的功能。(11) 员工管理:管理员对普通员工有查询与添加的操作功能。2.5运行环境系统对运行的环境的要求:1. 硬件环境(1) 服务器端服务器端的最低配置是由建立站点所需的软件来决定的,在最低配置的情况下,服务器的往往不尽如人意,现在的硬件性能已经相当出色,而且价格也很便宜,因此通常应给服务器端配置高性能的硬件。本网络系统服务器端的配置如下:l 处理器:Inter Pentium 4 1.6GHz 或更高l 内存:256MBl 硬盘空间:80GBl 光驱:CD-ROM 48Xl 显卡:SVAG显示适配器。(2) 用户端因为学生端主要用于浏览和操作数据,所以对学生端的硬件要求不高,不过现在的电脑很高的性价比,因此需要的配置应该高于下面的配置:l 处理器:Inter Pentium 1.0GHz 或更高l 内存:32MBl 硬盘空间:40GBl 光驱:CD-ROM 48Xl 显卡:SVAG显示适配器。2. 软件环境(1) 服务器端l 操作系统:Windows 2000 Serverl 网络协议:TCP/IPl web服务器:Internet Information Server5.0/Personal Web Serverl 数据库:Mircrosoft SQLserver2000l 浏览器:Internet Explorer 5.0以上(2) 用户端l 操作系统:Windows 98/2000/XPl 网络协议:TCP/IPl 数据库:Mircrosoft SQLserver2000l 浏览器:Internet Explorer 5.0以上*大学,毕业论文第 3 章 系统概念结构设计3.1 功能划分将需求分析得到的作为需求抽象信息结构。即概念模型的过程就是概念结构设计,它是整个数据库设计的关键。要系统需求分析阶段,搞清楚了系统“做什么”的问题,形成了目标系统的逻辑模型。现在我们就是说要把系统“做什么”的逻辑模型变换为“怎么做”的物理模型,即着手实现系统的需求。首先,我们需要描述的是系统的总的体系结构。接着在一步步的向下进行描述。功能划分的基本思想是将系统设计成由多个相对独立、功能单一的模块组成的结构。由于模块之间相对独立,每一模块就可以单独地被理解、编写、测试、排错和修改,从而有效地防止错误在模块之间扩散蔓延,提高了系统的质量(可维护性、可靠性等)。因此,大大简化了系统研制开发的工作。3.1.1 系统结构设计总体设计主要是指在系统分析的基础上,对整个系统的划分(子系统)、机器设备(包括软、硬设备)的配置、数据的存贮规律以及整个系统实现规划等方面进行合理的安排。系统设计工作应该自顶向下地进行。系统设计的工作复杂又细致,总体设计阶段需要进行系统模块结构设计,要将一个大系统分解成不同层次、多个模块组成的系统,在详细设计阶段要在模块结构设计的基础上,给出每个模块实现方法的细节,并对模块的输入、输出和处理过程作详细描述,以便在系统实施阶段进行程序设计时可以把这个描述直接“翻译”成用某种程序设计语言书写的程序。3.1.2 系统功能模块模块化是指解决一个复杂问题时自上项下逐层把系统划分成若干个模块的过程。每个模块完成一个特定的功能,所有的模块按某种方法组织起来,成为一个整体,完成整个系统所要求的功能。系统的模块划分不能是任意的,应尽量保持其独立性。是为了降低系统和复杂性,提高可读性、可维护性。也就是说,每个模块只完成系统要求的独立的子功能,并且与其他模块的联系最少且接口简单,即尽量做到提高模块的独立,为设计高质量的系统结构奠定基础。系统模块结构设计的任务是划分子系统,然后确定子系统的模块结构,并画出模块结构图。在这个过程中必须考虑以下几个问题:1)如何将一个系统划分成多个子系统。2)每个子系统如何划分成多个模块。3)如何确定子系统之间、模块之间传送的数据及其调用关系。4)如何评价并改进模块结构的质量。该方法适合于软件系统的总体设计和详细设计,特别是将一个复杂的系统转换成模块化结构系统,该方法具有它的优势。在使用过程中可将结构化设计方法与结构化分析(SA)方法及编程阶段的结构化程序设计方法(SP)前后衔接起来。 系统功能模块化的优点: 1)系统功能模块划分清晰,区别明显,易于操作。2)操作界面友好,简单易懂适合不同层次的操作人员。3)子系统之间的数据交换操作简单、快捷。根据该系统的需求分析,设计可实现的模块组织结构。用户登录系统管理员工管理个人考勤部门管理考勤管理留言管理请假管理如图3.1所示:图 3.1 系统层次模块图第 4 章 系统设计4.1 指导思想系统功能设计本着从用户角度出发的原则,要求实用,且符合用户提出的合理需求。系统设计在不违反系统整体性的基础上,可根据用户的需求进行二次开发,不断完善系统功能,便于系统的不断升级。4.2 系统层次模块图用户登录系统管理员工管理个人考勤部门管理考勤管理留言管理请假管理图1 系统层次模块图4.3 系统流程图用户信息普通员工信息查询系统资源模块个人考勤考勤信息退出考勤管理查询 管理员(企业领导) 图2 系统流程图考勤管理考勤信息4.4 数据流程图管理员 录入员工信息文件查询试卷登录合法员工 图3 数据流程图4.5功能模块设计企业考勤管理系统分为系统管理、部门管理、公告管理、员工管理、请假管理、个人考勤、考勤管理、留言管理、退出系统等九大模块。各模块的具体功能划分如下:4.5.1系统管理模块系统管理更改密码控制系统图4 系统管理模块功能树系统管理模块包括更改密码、高级管理(控制系统)两大子模块。1、更改密码:各级管理员登录系统后,可自行重新设置登录密码;2、高级管理:控制系统的功能操作控制系统4.5.2部门管理 添加部门部门管理查询部门 图6 部门管理模块功能树部门管理模块包括添加部门及查看部门1、添加部门添加部门用于管理员(领导)给本系统添加部门信息。输入项:部门名称输出项:添加成功,进入成功页面,不成功则显示错误信息页面。处 理:判断部门名称是否为空,数据库中是否有重复的数据是否正确。2、查询部门(1)公告信息查询输入项:无输出项:序号,部门名称,添加时间。处 理:将系统中所有的部门信息全部显示出来并可编辑(修改,删除)。4.5.3公告管理 添加公告公告管理查询公告 图6 公告管理模块功能树公告管理模块包括添加公告及查看公告1、添加公告添加公告用于管理员(领导)给本系统的所有用户发布公告信息。输入项:公告标题,公告内容,所属对象(阅读部门)输出项:添加成功,进入成功页面,不成功则显示错误信息页面。处 理:判断公告标题,公告内容,所属对象(阅读部门)是否为空,数据库中是否有重复的数据是否正确。2、查询公告(1)公告信息查询输入项:无输出项:(公告标题,查看对像,添加时间)。处 理:将系统中所有的公告以标题的形式全部显示出来并可编辑(修改,删除)。4.5.4员工管理 添加员工员工管理查询员工 图6 员工管理模块功能树员工管理模块包括添加员工及查询员工1、添加员工添加员工用于领导给本系统添加员工信息。输入项:员工编号,密码,确定密码,权限,姓名,性别,所属部门输出项:添加成功,进入成功页面,不成功则显示错误信息页面。处 理:判断员工编号,权限,密码,确定密码,姓名,性别,部门是否为空,数据库中的用户帐户是否有重复的数据是否有存在一样的,如果有提示不能添加,或则直接插入。2、查询员工输入项:员工编号、员工姓名,部门输出项:序号,员工编号,员工姓名,权限,员工角色,性别,所属部门。处 理:根据用户所输入的条件到数据库里对应的查询,将系统中所有查询出来的数据显示全部显示出来并可编辑(修改,删除)。4.5.5留言管理添加留言留言管理查看留言图7 留言管理模块功能树1. 添加留言 输入项:姓名,邮箱,性别,留言内容。 输出项:显示符合条件的留言信息(姓名,性别,时间,留言内容),无符合条件的将显示出错提示 处 理:在这个子功能里,用户可以输入,姓名,邮箱,性别,留言内容。进行检验,如果符合信息,添加到数据库里。并可以供用户提取数据。2. 查看留言4.5.6个人考勤个人考勤模块用于对个人对自己的考勤查看功能操作。4.5.7考勤管理 考勤管理模块中管理员具有查询所用员工考勤的详细资料信息,而普通员工只具有查询自己的信息功能操作。输入项:姓名、部门(选择)、开始时间、结束时间、性质以(选择)输出项:编号,姓名,部门,性质,上班,下班。处 理:根据用户所输入的条件到数据库里对应的查询,将系统中所有查询出来的数据显示全部显示出来。4.5.8请假管理输入项:姓名、部门(选择)、开始日期、结束日期)输出项:编号,姓名,部门,性质,开始日期,天数,结束日期,备注,准假,不准假。处 理:根据用户所输入的条件到数据库里对应的查询,将系统中所有查询出来的数据显示全部显示出来。4.6数据库设计表1 管理员信息表(administrators)名称字段名称数据类型主键非空用户名wnumvarchar(4)yesyes密码wpswdvarchar(30)noyes管理员姓名tnamevarchar(30)nono性别tsexintnono所在部门tdepintnoyes身份等级tpri intnoyes表2 控制系统信息表(cust_sys)名称字段名称数据类型主键非空标号actintyesyes员工teacintnono备注remarkvarchar(100)nono表3 留言表(liuyuan)名称字段名称数据类型主键非空记录IDrec_idintyesyes昵称namevarchar(20)nono性别sexintnono邮箱emailvarchar(20)nono内容liuyuanvarchar(500)nono时间addtimedatetimenoyes表4 公告表(news)名称字段名称数据类型主键非空记录IDidintyesyes标题titlevarchar(100)nono新闻内容newsvarchar(500)nono部门IDdepintnono部门名称depnamevarchar(50)nono添加时间Add_timedatetimenono表5 部门表(departmen)名称字段名称数据类型主键非空记录IDSys_idintyesyes部门IDdepintnoyes部门名称depnameVarchar(30)noyes表6 考勤表(kq)名称字段名称数据类型主键非空记录IDrec_idintyesyes用户IDwnumvarchar(50)nono是否上班go_onintnono上班时间go_workdatetimenono是否下班get_onintnono下班时间get_workdatetimenono性质pstateintnono表7 请假信息表(qj)名称字段名称数据类型主键非空标号actintyesYes员工teacintnoyes意见stuIntnoyes备注remarkVarchar(100)noYes第 5 章 开发技术企业考勤管理系统采用B/S开发模式,开发工具选择JAVA、JSP、JavaScript、Html语言,采用Tomcat服务器技术,后台数据库选用SQL Server 2000。5.1 开发技术介绍5.1.1 B/S模式及其优势(1)C/S(Client / Server)模式过去,网络软件的开发都采用C/S(Client)模式,在这种模式下,主要的业务逻辑都集中于学生端程序,基于Client / Server(学生端/服务器)结构的考试系统,利用计算机局域网络,每台计算机(学生端)通过安装必要的软件才能与服务器端相互通信。由于利用了计算机网络,不再需要大量人力以实现考题的一致性和考试信息的收集,自动化程度和效率较高。但由于其结构特点,只适用于一定范围的网络内部(局域网),范围难以扩展,可以通过改进通信协议,对该结构进行改造,使其适用于更广的网络范围(广域网),但由于需要安装学生端程序,维护和升级同样存在困难。这种结构也称为MIS型架构,试题内容放在远程的服务器上,在考试机上安装考试应用程序和数据库学生机配置,因此每次考试时要对机器进行安装、配置,这样一来考试组织比较烦琐;而且考试程序放在学生机上,安全性也受到一定程度的影响。(2)B/S(Browser / Server)模式B/S(Browser / Server)结构即浏览器和服务器结构。它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器端(Server)实现,形成所谓三层(3-tier)结构。一个三层架构的应用程序由三部分组成,这三部分各自分布在网络中的不同地方。这三个部分分别是:工作站或表示层接口、事务逻辑、数据库以及与其相关的程序设计。在一个典型的三层架构应用程序中,应用程序的用户工作站包括提供图形用户界面(GUI)的程序设计和具体的应用程序入口表格或交互式窗口。事务逻辑处在局域网(LAN)服务器或其他共享主机上,它作为响应工作站所发出学生请求的服务器,而相对于处于大型机的第三层它是作为学生端,并且决定需要什么数据以及数据存储在哪里。第三层包括数据库以及处理读写以及访问数据库的程序。然而应用程序的设计可能比这个架构要复杂,对于大型程序来说,这个三层模式是一种比较简便的考虑方法。这种应用程序的设计使用学生/服务器模式,各层可以同时开发,并且可以由不同的成员组用不同的语言来开发。因为各个层次的开发不会影响其他层次,所以这种模型对于进一步开发软件是很方便的。这样就大大简化了学生端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本(TCO)。以目前的技术看,局域网建立B/S结构的网络应用,并通过Internet / Intranet模式下数据库应用,相对易于把握、成本也是较低的。它是一次性到位的开发,能实现不同的人员,从不同的地点,以不同的接入方式(比如LAN, WAN, Internet / Intranet等)访问和操作共同的数据库;它能有效地保护数据平台和管理访问权限,服务器数据库也很安全。特别是在Java这样的跨平台语言出现之后,B/S架构管理软件更是方便、快捷、高效。这种B/S模式学生端只要安装一个标准的Web浏览器,其它应用程序都存储在Web服务器上。建立在B/S模式上的在线考试系统,可建立大型、高效、共享的题库,在服务器端对数据库进行管理,学生端通过浏览器登录考试系统,打破了时空界限,可实现自动出卷、阅卷、评卷、简化考试程序,且考试结果更加公正、客观。采用B/S(Browser / Server)模式的计算机在线考试和管理系统适用于一个考场或几十个考场、几十人甚至几万人同时通过网络在线考试,解决了考试系统对学生机软件过分依赖的问题,减轻了学生机软件维护工作量,比以往的考试系统更具有实用性。采用这种结构,考试系统安装和试题装卸的程序简易;进行不同类别试题的考试时仅需要在服务器上进行试题的更换处理,对考场的计算机配置应考专业的相应软件,考生就可以进行考试。此技术超越了传统的“学生机/服务器”两层结构,采用了三层体系结构:用户界面层/事务层/数据库层。因此Web结构有着更好的安全性。在用户机上不需要安装任何应用程序,应用程序可以安装在事务层所在的计算机上,试题存放在数据库服务器上(事务层和数据库可以是同一台机器)。5.1.2 Web应用程序开发环境JSP技术5.1.3 Java简介简言之,Java环境可用来开发能在任何计算平台上运行的应用软件。它实际上是一种非常基本且结构紧凑的技术,而它对World Wide Web以及商业的总体影响已可同电子表格对PC机的影响相比拟。1、Java是巨大的推动力量Java已用动态的交互应用软件使Web栩栩如生。它使开发人员具有“编写一次到处运行TM”的巨大能力。而且,借助其JavaAPI及其编程语言上的Java虚拟机,它已产生一种分布信息的崭新模式。这种模式叫做Java企业计算,正在帮助各企业以各种不同的方法取得竞争优势。网管和控制已大大简化。软件分配基本上是免费的,而且立即可实现。电子贸易已获得。占有成本大幅度降低。信息和应用软件到处可存取。Java建立在简单的前提基础上,即所有微处理器都应讲同一种语言所有内部采用芯片的产品都应能一起工作,无缝而方便地共享信息。它已经改变企业和个人同Internet大交道的方式。现在,它正在对消费类产品产生明显的影响,而且从总体上更加深刻地影响企业计算。借助Java,您可自由自在地使用您已拥有的硬件和软件。这是因为Java是独立于平台的,它还可使您超越企业计算,使应用软件在便携式计算机、信息亭、电视、蜂窝电话和其他大量设备上运行。全世界的公司都已发现Java数不胜数的应用。所有应用可从其无可比拟的能力,即提高可靠性、安全性和简化各种不同计算产品和环境的能力中受益匪浅,而且节省的时间和费用十分可观。Java无处不在。它已拥有几百万个用户,其发展速度要快于在它以前的其他任何一种计算机产品。它可位于任何地方,而且能到处运行。Java正在迅速被用做传播信息的事实上标准,这是因为它既可给企业,也可给最终用户带来似乎数不清的好处。2、Java的来龙去脉Sun公司一小组工程师聚集在一起,认真思考日常生活中的数字系统因为烤面包机、恒温器、游戏机和其他无数设备都包含越来越复杂的CPU以及他们如何能使这些数字系统共享信息。3、创造未来的计算制造产品的人当然全都从不同的方面来考虑其设计,视他们所使用的硬件平台、操作系统和应用软件而定。但是,如果您要使这些产品中的一些产品一起工作,那怎么办?安全性、可靠性和网络问题又这么样呢?因此,Sun公司这些工程师把各种不同的产品拆开来,然后又把它们重新组装起来,其目标是要使这些不同的设备相互交谈。他们把这些研究对象相互传来传去,并理解所有其他研究对象的特性,以便使他们能更好地一起工作。这就把制造商的问题缩减到最低程度,并使消费者能方便地进行集成。当传统的语言证明是不适用时,工程师们就打算找到某种简单的现代新语言。于是,Java应运而生。人们很快发现,Java有可能超越工程师的想象。Java的魅力在于它提供给开发人员和用户的简便性。开发人员拥有广大的用户基础、平台独立性、降低的开发费用和始终如一的执行环境,而用户则可从生动的内容、即时软件和增大的安全性中受益。但是,Java正是从置于World Wide Web那时起才真正起飞。Java使全世界大为震动,因为它使Web页面栩栩如生,而且不久变得很明显,Java拥有大得多的潜力。人们之所以采纳Java,是因为它有独特的能力来编制和部署能在任何一个网络、任何一个操作系统上运行的应用软件。分配软件的时间和费用实际上已不复存在,使得各公司可把更多的资源用来开发其产品。而且,某些工业专家认为,Java可能会改变软件销售模式,从固定价格改变为按使用量收费,这样做更有利可图,而且可阻止非法盗版。Java是一种网络计算的通用开放标准平台。这种平台可从电话一直扩展到极端重要的应用,建立在您现有的硬件和软件体系结构基础上,从而创造出一个全部联网的企业或者制造出超出的创新产品。4、Java扎下根来在某种意义上,Java具体体现了Sun Microsystems公司自其创建以来所追述的目标。当时,它创造了“网络就是计算机”这句名言。它是基于Web的新网络计算模式的完美平台,因为它建立在各个组织现有的硬件和软件体系结构基础上,能建立一个全部联网的企业。5、Java是一个完整而全面的解决方案Java远不止是一种编程语言,它是企业内外的完整计算环境,而且万事齐备,从开发工具、操作系统、服务器软件和瘦/肥学生机一直到网络管理工具、支持、培训、咨询和集成服务,一应俱全。Java使用起来非常简单,部分原因是Sun提供一种全面统一的解决方案。5.1.4 Tomcat应用服务器目前支持JSP的应用服务器是较多的,Tomcat是其中较为流行的一个Web服务器,被JavaWorld杂志的编辑选为2001年度最具创新的java产品,可见其在业界的地位。 Tomcat是一个免费的开源的Serlvet容器,在Tomcat中,应用程序的部署很简单,你只需将你的WAR放到Tomcat的webapp目录下,Tomcat会自动检测到这个文件,并将其解压。你在浏览器中访问这个应用的Jsp时,通常第一次会很慢,因为Tomcat要将Jsp转化为Servlet文件,然后编译。编译以后,访问将会很快。另外Tomcat也提供了一个应用:manager,访问这个应用需要用户名和密码,用户名和密码存储在一个xml文件中。通过这个应用,辅助于Ftp,你可以在远程通过Web部署和撤销应用。当然本地也可以。 Tomcat也具有传统的Web服务器的功能:处理Html页面。但是与Apache相比,它的处理静态Html的能力就不如Apache。我们可以将Tomcat和Apache集成到一块,让Apache处理静态Html,而Tomcat处理Jsp和Servlet。这种集成只需要修改一下Apache和Tomcat的配置文件即可。Tomcat是一个很好的工具,不仅仅因为其免费,功能强大,更因为其开放性,越来越收到人们的重视。Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,目前最新版本是6.0.14。目前支持JSP的应用服务器是较多的,Tomcat是其中较为流行的一个Web服务器,被JavaWorld杂志的编辑选为2001年度最具创新的Java产品,可见其在业界的地位。Tomcat是一个免费的开源的Serlvet容器,在Tomcat中,应用程序的部署很简单,你只需将你的WAR放到Tomcat的webapp目录下,Tomcat会自动检测到这个文件,并将其解压。你在浏览器中访问这个应用的JSP时,通常第一次会很慢,因为Tomcat要将JSP转化为Servlet文件,然后编译。编译以后,访问将会很快。另外Tomcat也提供了一个应用:manager,访问这个应用需要用户名和密码,用户名和密码存储在一个xml文件中。通过这个应用,辅助于FTP,你可以在远程通过Web部署和撤销应用。当然本地也可以。Tomcat也具有传统的Web服务器的功能:处理HTML页面。但是与Apache相比,它的处理静态HTML的能力就不如Apache。我们可以将Tomcat和Apache集成到一块,让Apache处理静态HTML,而Tomcat处理JSP和Servlet。这种集成只需要修改一下Apache和Tomcat的配置文件即可。与传统的桌面应用程序不同,Tomcat中的应用程序是一个WAR(Web Archive)文件。WAR是Sun提出的一种Web应用程序格式,与JAR类似,也是许多文件的一个压缩包。这个包中的文件按一定目录结构来组织:通常其根目录下包含有Html和JSP文件或者包含这两种文件的目录,另外还会有一个WEB-INF目录,这个目录很重要。通常在WEB-INF目录下有一个web.xml文件和一个classes目录,web.xml是这个应用的配置文件,而classes目录下则包含编译好的Servlet类和JSP或Servlet所依赖的其它类(如JavaBean)。通常这些所依赖的类也可以打包成JAR放到WEB-INF下的lib目录下,当然也可以放到系统的ClassPath(系统变量)中,但那样移植和管理起来不方便。在Tomcat中,应用程序的部署很简单,你只需将你的WAR放到Tomcat的webapp目录下,Tomcat会自动检测到这个文件,并将其解压。你在浏览器中访问这个应用的JSP时,通常第一次会很慢,因为Tomcat要将JSP转化为Servlet文件,然后编译。编译以后,访问将会很快。另外Tomcat也提供了一个应用:Manager,访问这个应用需要用户名和密码,用户名和密码存储在一个xml文件中。通过这个应用,辅助于FTP,你可以在远程通过Web部署和撤销应用,当然本地也可以。Tomcat不仅仅是一个Servlet容器,它也具有传统的Web服务器的功能:处理Html页面。但是与Apache相比,它的处理静态Html的能力就不如Apache.我们可以将Tomcat和Apache集成到一块,让Apache处理静态Html,而Tomcat处理JSP和Servlet.这种集成只需要修改一下Apache和Tomcat的配置文件即可。另外,Tomcat提供Realm支持。Realm类似于Unix里面的group.在Unix中,一个group对应着系统的一定资源,某个group不能访问不属于它的资源。Tomcat用Realm来对不同的应用(类似系统资源)赋给不同的用户(类似group)。没有权限的用户则不能访问这个应用。Tomcat提供三种Realm:1、JDBCRealm,这个Realm将用户信息存在数据库里,通过JDBC获得用户信息来进行验证;2、JNDIRealm,用户信息存在基于LDAP的服务器里,通过JNDI获取用户信息;3、MemoryRealm,用户信息存在一个xml文件里面,上面讲的manager应用验证用户时即使用此种Realm.通过Realm我们可以方便地对访问某个应用的学生进行验证。在Tomcat中,你还可以利用Servlet 2.3提供的事件监听器功能,来对你的应用或者Session实行监听。Tomcat也提供其它的一些特征,如与SSL集成到一块,实现安全传输。还有Tomcat也提供JNDI支持,这与那些J2EE应用服务器提供的是一致的。说到这里我们要介绍一下通常所说的应用服务器(如WebLogic)与Tomcat有何区别。应用服务器提供更多的J2EE特征,如EJB,JMS,JAAS等,同时也支持JSP和Servlet.而Tomcat则功能没有那么强大,它不提供EJB等支持。但如果与JBoss(一个开源的应用服务器)集成到一块,则可以实现J2EE的全部功能。既然应用服务器具有Tomcat的功能,那么Tomcat有没有存在的必要呢?事实上,我们的很多中小应用不需要采用EJB等技术,JSP和Servlet已经足够,这时如果用应用服务器就有些浪费了。而Tomcat短小精悍,配置方便,能满足我们的需求,这种情况下我们自然会选择Tomcat。基于Tomcat的开发其实主要是JSP和Servlet的开发,开发JSP和Servlet非常简单,你可以用普通的文本编辑器或者IDE,然后将其打包成WAR即可。我们这里要提到另外一个工具Ant,Ant也是Jakarta中的一个子项目,它所实现的功能类似于Unix中的make.你需要写一个build.xml文件,然后运行Ant就可以完成xml文件中定义的工作,这个工具对于一个大的应用来说非常好,我们只需在xml中写很少的东西就可以将其编译并打包成WAR。事实上,在很多应用服务器的发布中都包含了Ant。另外,在JSP1.2中,可以利用标签库实现Java代码与Html文件的分离,使JSP的维护更方便。Tomcat也可以与其它一些软件集成起来实现更多的功能。如与上面提到的JBoss集成起来开发EJB,与Cocoon(Apache的另外一个项目)集成起来开发基于Xml的应用,与OpenJMS 集成起来开发JMS应用,除了我们提到的这几种,可以与Tomcat集成的软件还有很多。Tomcat确实是一个很好的工具,不仅仅因为其免费,功能强大,更因为其开放性。如今,开源软件越来越收到人们的重视,Linux就是一个成功的典型。人们不再限于只使用软件,而且已经关心起软件的具体实现。我们有理由相信Tomcat会走得更远。5.1.5 SQL server 2000Microsoft SQL Server2000是由 Microsoft公司开发的,简称SQL Server,由一系列相互协作的组件构成,能满足最大的Web站点和企业数据处理系统存储和分析数据的需求。Microsoft SQL Server 2000 的特性包括: Internet 集成 SQL Server 2000 数据库引擎提供完整的 XML 支持。它还具有构成最大的 Web 站点的数据存储组件所需的可伸缩性、可用性和安全功能。SQL Server 2000 程序设计模型与 Windows DNA 构架集成,用以开发 Web 应用程序,并且 SQL Server 2000 支持 English Query 和 Microsoft 搜索服务等功能,在 Web 应用程序中包含了用户友好的查询和强大的搜索功能。可伸缩性和可用性同一个数据库引擎可以在不同的平台上使用,从运行 Microsoft Windows 98 的便携式电脑,到运行 Microsoft Windows 2000 数据中心版的大型多处理器服务器。SQL Server 2000 企业版支持联合服务器、索引视图和大型内存支持等功能,使其得以升级到最大 Web 站点所需的性能级别。 企业级数据库功能SQL Server 2000 关系数据库引擎支持当今苛刻的数据处理环境所需的功能。数据库引擎充分保护数据完整性,同时将管理上千个并发修改数据库的用户的开销减到最小。SQL Server 2000 分布式查询使您得以引用来自不同数据源的数据,就好象这些数据是 SQL Server 2000 数据库的一部分,同时分布式事务支持充分保护任何分布式数据更新的完整性。复制同样使您得以维护多个数据复本,同时确保单独的数据复本保持同步。可将一组数据复制到多个移动的脱接用户,使这些用户自主地工作,然后将他们所做的修改合并回发布服务器。 易于安装、部署和使用SQL Server 2000 中包括一系列管理和开发工具,这些工具可改进在多个站点上安装、部署、管理和使用 SQL Server 的过程。SQL Server 2000 还支持基于标准的、与 Windows DNA 集成的程序设计模型,使 SQL Server 数据库和数据仓库的使用成为生成强大的可伸缩系统的无缝部分。这些功能使您得以快速交付 SQL Server 应用程序,使学生只需最少的安装和管理开销即可实现这些应用程序。 数据仓库SQL Server 2000 中包括析取和分析汇总数据以进行联机分析处理 (OLAP) 的工具。SQL Server 中还包括一些工具,可用来直观地设计数据库并通过 English Query 来分析数据。 5.2 数据访问接口系统采用JDBC-ODBC桥数据驱动程序,以纯Java的方式来连接数据库,为访问不同的数据库提供统一的接口。JDBC数据库驱动程序是把JDBC调用翻译成厂商专用API的调用。开放数据连接(ODBC)最初是为微软操作系统上的SQL提供API标准,后来也在其他的平台上提供了支持。ODBC为直接访问数据定义了一组函数,而不是在学生应用程序中嵌入SQL。JKBC-ODBC桥在JKBC API 和ODBC API 之间提供了一个桥梁,这个桥把标准的JDBC调用翻译成对应的
展开阅读全文