1、JSP音乐网站摘 要:随着互联网和宽带上网的普及,Integer音乐网站在中国异军突起,并日益渗透到人们的日常生活中。音乐网站是运用现代通信技术、计算机和网络技术进行的一种社会形态,其目的是通过互联网、提高人们生活水平、优化社会资源配置,从而实现社会财富的最大化利用。本课题所研究的Integer音乐网站主要是为个人提供搜索,欣赏和评论的一个平台,从而给个人带来方便。课题目标是设计并实现一个音乐网站。结合实践,理解网页开发技术和数据库的基本知识,学习相关开发工具和应用软件,熟悉网站建设的过程,熟练掌握网络数据库编程方法。系统采用B/S开发模式,开发工具选择JAVA、JSP、JavaScript、
2、Html语言,采用Tomcat服务器技术,后台数据库选用SQL Server 2000。关键词:音乐网站,互联网,系统设计。Music websiteAbstract: Along with the Internet and the wide band surfers popularization, the Integer music website is sudden appearance in China, and seeps day by day to peoples daily life. Music website is one kind of form of society whi
3、ch using the Modern Communication Technology, the computer and the networking carries on, its goal is through the Internet, raises the people living standard, the optimization social resource disposition, thus realizes the public wealth maximized use. This topic studies the Integer music website is
4、mainly to provide the search personally, the appreciation and a commentary platform, thus for brings conveniently personally. The topic goal is designs and realizes a music website. The union practice, understood that the homepage development technology and the database elementary knowledge, the stu
5、dy related development kit and the application software, the familiar website constructions process, masters the network database programming method skilled. 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 su
6、pporters database is finished by SQL Server 2000.Key words: Music website; InternetSystem design.目 录1 引言 11.1 课题的目的和意义11.2 国内现状分析12 需求分析32.1 问题分析32.2 任务概述32.3 功能需求概述32.4 运行环境43 系统概念结构设计63.1功能划分63.2系统结构设计63.3系统功能模块64 系统设计74.1 指导思想84.2 系统流程图84.3 数据流程图94.4 功能模块设计94.5 前台功能模块设计94.5.1 用户注册94.5.2 购物车管理104.
7、5.3 订单管理114.5.4 个人资料管理124.5.5 投票专区134.6 后台功能模块设计144.6.1 系统管理模块144.6.2 会员管理154.6.3 类别管理164.6.4 订单管理174.6.5 音乐管理184.6.6 投票管理204.7 数据库设计225 开发技术255.1 开发技术介绍255.1.1 B/S模式及其优势255.1.2 Web应用程序开发环境JSP技术265.1.3 Java简介285.1.4 Tomcat应用服务器295.1.5 SQL server 2000325.2 数据访问接口336 关键技术解决346.1 JSP音乐网站配置说明346.2 JSP与数
8、据库的连接357 结论 36致谢37参考文献38宝鸡文理学院本科毕业设计任务书39宝鸡文理学院本科毕业论文(设计)中期检查报告41宝鸡文理学院本科毕业设计指导教师指导记录表42宝鸡文理学院本科毕业设计结题报告43宝鸡文理学院本科毕业设计成绩评定及答辩评议表45宝鸡文理学院本科毕业设计答辩过程记录(附页)471引言1.1课题的目的和意义随着互联网和宽带上网的普及,音乐网站在中国异军突起,并日益渗透到人们的日常生活中。音乐网站是运用现代通信技术、计算机和网络技术进行的一种社会形态,其目的是通过互联网、提高社会生产效率、优化社会资源配置,从而实现社会财富的最大化利用。本课题所研究的音乐网站主要是为个
9、人提供搜索,欣赏和下载的一个平台,从而给个人带来方便。课题目标是设计并实现一个B/S体系结构的音乐网站。结合实践,理解网页开发技术和数据库的基本知识,学习相关开发工具和应用软件,熟悉网站建设的过程,熟练掌握网络数据库编程方法。1.2国内现状分析现在我国的信息管理水平还比较落后,这样的机制已经不能适应时代的发展,因为它浪费了许多人力和物力,在信息时代传统的管理方法必然被计算机为基础的信息管理所取代。软件作为一项有力的工具,只能当此种工具,与我们的实践相结合起来的时候,才具有重大的社会价值及使用价值。因此根据目前实际的情况开发这样一套管理系统是十分必要的。随着科学技术的不断提高,计算机科学技术日渐
10、成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。作为计算机应用的一部分,使用计算机进行管理,具有着手工管理所无法比拟的优点。例如:可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高工作的效率,也是信息正规化管理与世界接轨的重要条件。本系统用JSP语言来编写社本系统,数据库用SQLSERVER 2000来连接系统。本论文主要涉及软件,数据库与网络技术等。涵盖知识面广,可有效地提高学生综合运用所学知识分析解决问题的能力,增强学生对事物的理解与掌握能力,培养学生掌握科学的研究方法,正确的设计思想,独立思考,勇于进取,探索创新,为今后进一步学
11、习与工作奠定了良好的基础。2 需求分析2.1问题分析JSP音乐网站是运用现代通信技术、计算机和网络技术进行的一种社会形态,其目的是通过互联网、提高社会生产效率、优化社会资源配置,从而实现社会财富的最大化利用。本课题所研究的音乐网站主要是为个人提供搜索,欣赏和下载的一个平台,从而给个人带来方便。因此,开发一个JSP音乐网站是很有必要的,具有其特有的技术意义和管理意义。JSP音乐网站拟采用B/S模式,三层结构设计。涉及静(动)态网页编写(熟悉HTML、CSS、JavaScript)、程序设计(ASP、PHP、JSP或其它语言基础)、数据库应用(SQL server、MySQL的使用、SQL语言、调
12、优)、数据库设计、软件工程及软件测试,用户界面设计、美化、文档编写(软件开发计划、用户手册等设计内容都要形成文字)等各方面知识;以及团队组织、项目管理,帮助文档的编写、部分的测试等。2.2任务概述此基于JSP的音乐网站分前台功能和后台功能: (1)前台部分由用户使用,主要包括用户注册,购物车管理,订单管理,个人资料管理,投票专区(2)后台部分由管理员使用,主要包括系统管理,会员管理,类别管理,订单管理,音乐管理,投票管理。2.3功能需求概述1、用户管理:为了便于网站的管理,必须有一套完整的用户管理体系。2、订单查询:登陆用户可以通过订单号查询订单。3、购物车:所选音乐须通过购物车进行保存,然后
13、生成订单。4、修改个人资料:为了保护用户信息不受非法侵害,用户登陆后即可对个人的注册信息进行修改。5、投票专区:用户可以对自己喜欢的音乐进行投票操作。6、系统管理:管理员可以修改自己的密码。7、类别管理:可以添加与查询网站的音乐类别,并进行操作。8、订单信息管理模块:网站管理者对用户订单的执行和编辑状态。 9、添加音乐模块:向音乐表插入前台首页展示的音乐信息。10、查询会员信息管理模块:查询注册所有用户,对一些非法或失信用户进行删除操作。11、投票信息管理模块:管理员对网站用户投票信息进行添加与查询的功能操作。2.4运行环境系统对运行的环境的要求:1. 硬件环境(1) 服务器端服务器端的最低配
14、置是由建立站点所需的软件来决定的,在最低配置的情况下,服务器的往往不尽如人意,现在的硬件性能已经相当出色,而且价格也很便宜,因此通常应给服务器端配置高性能的硬件。本网络系统服务器端的配置如下:l 处理器:Inter Pentium 4 1.6GHz 或更高l 内存:256MBl 硬盘空间:80GBl 光驱:CD-ROM 48Xl 显卡:SVAG显示适配器。(2) 用户端因为学生端主要用于浏览和操作数据,所以对学生端的硬件要求不高,不过现在的电脑很高的性价比,因此需要的配置应该高于下面的配置:l 处理器:Inter Pentium 1.0GHz 或更高l 内存:32MBl 硬盘空间:40GBl
15、光驱: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 SQLserver2000浏览器:Internet Explorer 5.0
16、以上473系统概念结构设计3.1功能划分将需求分析得到的作为需求抽象信息结构。即概念模型的过程就是概念结构设计,它是整个数据库设计的关键。要系统需求分析阶段,搞清楚了系统“做什么”的问题,形成了目标系统的逻辑模型。现在我们就是说要把系统“做什么”的逻辑模型变换为“怎么做”的物理模型,即着手实现系统的需求。首先,我们需要描述的是系统的总的体系结构。接着在一步步的向下进行描述。功能划分的基本思想是将系统设计成由多个相对独立、功能单一的模块组成的结构。由于模块之间相对独立,每一模块就可以单独地被理解、编写、测试、排错和修改,从而有效地防止错误在模块之间扩散蔓延,提高了系统的质量(可维护性、可靠性等)
17、。因此,大大简化了系统研制开发的工作。3.2系统结构设计总体设计主要是指在系统分析的基础上,对整个系统的划分(子系统)、机器设备(包括软、硬设备)的配置、数据的存贮规律以及整个系统实现规划等方面进行合理的安排。系统设计工作应该自顶向下地进行。系统设计的工作复杂又细致,总体设计阶段需要进行系统模块结构设计,要将一个大系统分解成不同层次、多个模块组成的系统,在详细设计阶段要在模块结构设计的基础上,给出每个模块实现方法的细节,并对模块的输入、输出和处理过程作详细描述,以便在系统实施阶段进行程序设计时可以把这个描述直接“翻译”成用某种程序设计语言书写的程序。3.3系统功能模块模块化是指解决一个复杂问题
18、时自上项下逐层把系统划分成若干个模块的过程。每个模块完成一个特定的功能,所有的模块按某种方法组织起来,成为一个整体,完成整个系统所要求的功能。系统的模块划分不能是任意的,应尽量保持其独立性。是为了降低系统和复杂性,提高可读性、可维护性。也就是说,每个模块只完成系统要求的独立的子功能,并且与其他模块的联系最少且接口简单,即尽量做到提高模块的独立,为设计高质量的系统结构奠定基础。系统模块结构设计的任务是划分子系统,然后确定子系统的模块结构,并画出模块结构图。在这个过程中必须考虑以下几个问题:(1)如何将一个系统划分成多个子系统。(2)每个子系统如何划分成多个模块。(3)如何确定子系统之间、模块之间
19、传送的数据及其调用关系。(4)如何评价并改进模块结构的质量。该方法适合于软件系统的总体设计和详细设计,特别是将一个复杂的系统转换成模块化结构系统,该方法具有它的优势。在使用过程中可将结构化设计方法与结构化分析(SA)方法及编程阶段的结构化程序设计方法(SP)前后衔接起来。 系统功能模块化的优点: (1)系统功能模块划分清晰,区别明显,易于操作。(2)操作界面友好,简单易懂适合不同层次的操作人员。(3)子系统之间的数据交换操作简单、快捷。根据该系统的需求分析,设计可实现的模块组织结构。如图3.1所示:网上音乐系统前台功能后台功能 用户管理 购物车管理 订单管理 个人资料管理 投票专区 订单管理
20、音乐管理 投票管理 类别管理 会员管理 系统管理图1 系统层次模块图4系统设计4.1指导思想系统功能设计本着从用户角度出发的原则,要求实用,且符合用户提出的合理需求。系统设计在不违反系统整体性的基础上,可根据用户的需求进行二次开发,不断完善系统功能,便于系统的不断升级。用户信息4.2系统流程图退出会员 管理员系统资源模块商品信息 查询 音乐管理订单查询信息添加、查询、修改删除图2 系统流程图音乐、订单、类别管理订单信息4.3数据流程图管理员 录入修改、删除系统会员信息文件查询试卷登录合法会员 图3 数据流程图4.4功能模块设计此基于JSP的音乐网站分前台功能和后台功能: 1、前台部分由用户使用
21、,主要包括用户注册,购物车管理,订单管理,个人资料管理,投票专区2、后台部分由管理员使用,主要包括系统管理,会员管理,类别管理,订单管理,音乐管理,投票管理。4.5前台功能模块设计4.5.1用户注册当用户第一次登录时首先要注册,成为会员后,才可以购买物品。用户可以通过单击首页的注册按键来打开注册页面进行会员注册操作,用户注册页面的运行结果如图:图4 用户注册页面4.5.2购物车管理在超市中,可以根据自己的需要将很多的物品挑选到购物车中。而在网上虚拟的购物商城中,通常都会采用一种被称做“购物车”的技术来模拟现实生活。这种技术用起来十分方便,不但可以随时添加,查看,修改,清空购物车中的内容,还可以
22、随时去在订单处理。图5 购物车管理4.5.3订单管理为了方便用户随时查看购物情况,会员可以通过查看订单,通过它可以将所放入购物车中的选物品信息显示出来。图6 订单管理4.5.4个人资料管理当会员进入本网站时同,可以对自己的资料进行管理修改操作。图7 个人资料管理4.5.5投票专区会员可以对本网站的音乐歌手进行投票操作。图8 投票专区4.6后台功能模块设计4.6.1系统管理模块系统管理模块:管理员登录系统后,可自行重新设置登录密码;图9 管理员密码设置 旧密码: 新密码: 确定密码: 4.6.2会员管理管理员可以对本网站的会员进行查询及编辑操作。输入项:会员ID、姓名输出项:序号、会员ID、姓名
23、、电话、邮箱、地址、注册时间。处 理:将系统中所有的公告以标题的形式全部显示出来并可编辑(修改,删除)。图10 会员管理4.6.3类别管理 添加类别类别管理查询类别图11 类别管理模块功能树类别管理模块包括添加类别及查询类别1、添加类别添加类别用于管理员给本网站添加专辑类别名称。输入项:类别名称输出项:添加成功,进入成功页面,不成功则显示错误信息页面。处 理:判断类别名称是否为空,数据库中的用户帐户是否有重复的数据是否有存在一样的,如果有提示不能添加,或则直接插入。图12 添加类别2、查询类别输入项:无输出项:序号,专辑类别名称,添加时间。处 理:根据用户所输入的条件到数据库里对应的查询,将系
24、统中所有查询出来的数据显示全部显示出来并可编辑(修改,删除)。图13 查询类别4.6.4订单管理 输入项:会员ID,订单号,姓名。 输出项:显示符合条件的信息(ID,订单号,支付金额,支付方式,订购日期),无符合条件的将显示出错提示 处 理:根据用户所输入的条件到数据库里对应的查询,将系统中所有查询出来的数据显示全部显示出来并可操作(详情,删除,处理)。图14 订单管理4.6.5音乐管理添加专辑添加专辑音乐管理查询音乐添加音乐 图15 音乐管理模块功能树音乐管理模块包括添加专辑、查询专辑、添加音乐、查询音乐。1、添加专辑输入项:封面图片、歌手名字、歌手区域、专辑名称、专辑简介。输出项:添加成功
25、,进入成功页面,不成功则显示错误信息页面。处 理:判断封面图片、歌手名字、歌手区域、专辑名称、专辑简介是否为空,数据库中的用户帐户是否有重复的数据是否有存在一样的,如果有提示不能添加,或则直接插入。图16 添加专辑2、查询专辑输入项:歌手名字、姓名输出项:序号,专辑封面,歌手名字,专辑名称,价格,歌手区域,销售数量,添加时间。处 理:根据用户所输入的条件到数据库里对应的查询,将系统中所有查询出来的数据显示全部显示出来并可编辑(修改,删除)。图17 查询专辑3、添加音乐输入项:上传音乐、歌名、所属音乐。输出项:添加成功,进入成功页面,不成功则显示错误信息页面。处 理:判断上传音乐、歌名、所属音乐
26、是否为空,数据库中的用户帐户是否有重复的数据是否有存在一样的,如果有提示不能添加,或则直接插入。图18 添加音乐4、查询音乐输入项:歌名输出项:序号,专辑名称,歌名,文件名,添加时间。处 理:根据用户所输入的条件到数据库里对应的查询,将系统中所有查询出来的数据显示全部显示出来并可编辑(修改,删除)。图19 查询音乐4.6.6投票管理 添加投票投票管理查询投票图20 投票管理模块功能树1、添加投票输入项:歌手名称。输出项:添加成功,进入成功页面,不成功则显示错误信息页面。处 理:判断歌手名称是否为空,数据库中的用户帐户是否有重复的数据是否有存在一样的,如果有提示不能添加,或则直接插入。图21 添
27、加投票2、查询投票输入项:无输出项:序号,歌手,投票数量,占用比例,添加时间。处 理:根据用户所输入的条件到数据库里对应的查询,将系统中所有查询出来的数据显示全部显示出来并可编辑(查看,修改,删除)。图22 查询投票4.7数据库设计表1 会员信息表(vip_info)名称字段名称数据类型主键非空会员idvip_idintyesyes姓名vip_namevarchar(50)noyes密码vip_passwordvarchar(50)noyes注册时间addtimedatetimenoyes电话telvarchar(50)nono邮件emailvarchar(50)nono地址addressva
28、rchar(100)nono表2 用户信息表(userInfo)名称字段名称数据类型主键非空记录IDrec_idintyesyes用户IDuser_idVarchar(50)noyes密码passwordintnono表3 歌手区域类别信息表(types)名称字段名称数据类型主键非空记录IDrec_idintyesyes类别名称typenamevarchar(50)noyes添加时间addtimedatetimenoyes表4 投票信息表(toupiao)名称字段名称数据类型主键非空记录IDrec_idintyesyes歌手authorvarchar(100)noyes支持数countsint
29、noyes添加时间addtimedatetimenoyes表5 订单信息表(orderTable)名称字段名称数据类型主键非空订单IDorder_idintyesyes状态estateintnoyes会员IDvip_idintnoyes会员名vip_namevarchar(50)noyes地址addressvarchar(50)noyes电话telvarchar(50)noyes订单时间order_datedatetimenoyes备注remarkvarchar(200)nono表6 订单细节信息(orderDetail)名称字段名称数据类型主键非空订单IDorder_idintyesyes专
30、辑IDmusic_idintnono数量cuntsintnono表7 专辑信息(musicInfo)名称字段名称数据类型主键非空记录IDmusic_idintyesyes歌手music_authorvarchar(100)noyes类别types_rec_idintnoyes专辑名称music_namevarchar(100)noyes价格music_priceintnoyes插入图片music_imagevarchar(100)noyes购买数量music_buysintnoyes备注remarkvarchar(100)no添加时间addtimedatetimenoyes表8 歌曲信息表(m
31、p3)名称字段名称数据类型主键非空记录IDrec_idintyesyes文件名mp3filevarchar(100)noyes歌曲名称mp3namevarchar(100)noyes专辑IDmusic_idintnoyes查看次数lookcountintnoyes添加时间addtimedatetimenoyes5开发技术JSP音乐网站采用B/S开发模式,开发工具选择JAVA、JSP、JavaScript、Html语言,采用Tomcat服务器技术,后台数据库选用SQL Server 2000。5.1开发技术介绍5.1.1B/S模式及其优势(1)C/S(Client / Server)模式过去,网
32、络软件的开发都采用C/S(Client)模式,在这种模式下,主要的业务逻辑都集中于学生端程序,基于Client / Server(学生端/服务器)结构的考试系统,利用计算机局域网络,每台计算机(学生端)通过安装必要的软件才能与服务器端相互通信。由于利用了计算机网络,不再需要大量人力以实现考题的一致性和考试信息的收集,自动化程度和效率较高。但由于其结构特点,只适用于一定范围的网络内部(局域网),范围难以扩展,可以通过改进通信协议,对该结构进行改造,使其适用于更广的网络范围(广域网),但由于需要安装学生端程序,维护和升级同样存在困难。这种结构也称为MIS型架构,试题内容放在远程的服务器上,在考试机
33、上安装考试应用程序和数据库学生机配置,因此每次考试时要对机器进行安装、配置,这样一来考试组织比较烦琐;而且考试程序放在学生机上,安全性也受到一定程度的影响。(2)B/S(Browser / Server)模式B/S(Browser / Server)结构即浏览器和服务器结构。它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器端(Server)实现,形成所谓三层(3-tier)结构。一个三层架构的应用程序由三部分组成,这三部分各自分布在网络中的不同地方
34、。这三个部分分别是:工作站或表示层接口、事务逻辑、数据库以及与其相关的程序设计。在一个典型的三层架构应用程序中,应用程序的用户工作站包括提供图形用户界面(GUI)的程序设计和具体的应用程序入口表格或交互式窗口。事务逻辑处在局域网(LAN)服务器或其他共享主机上,它作为响应工作站所发出学生请求的服务器,而相对于处于大型机的第三层它是作为学生端,并且决定需要什么数据以及数据存储在哪里。第三层包括数据库以及处理读写以及访问数据库的程序。然而应用程序的设计可能比这个架构要复杂,对于大型程序来说,这个三层模式是一种比较简便的考虑方法。这种应用程序的设计使用学生/服务器模式,各层可以同时开发,并且可以由不
35、同的成员组用不同的语言来开发。因为各个层次的开发不会影响其他层次,所以这种模型对于进一步开发软件是很方便的。这样就大大简化了学生端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本(TCO)。以目前的技术看,局域网建立B/S结构的网络应用,并通过Internet / Intranet模式下数据库应用,相对易于把握、成本也是较低的。它是一次性到位的开发,能实现不同的人员,从不同的地点,以不同的接入方式(比如LAN, WAN, Internet / Intranet等)访问和操作共同的数据库;它能有效地保护数据平台和管理访问权限,服务器数据库也很安全。特别是在Java这样的跨平台语
36、言出现之后,B/S架构管理软件更是方便、快捷、高效。这种B/S模式学生端只要安装一个标准的Web浏览器,其它应用程序都存储在Web服务器上。建立在B/S模式上的在线考试系统,可建立大型、高效、共享的题库,在服务器端对数据库进行管理,学生端通过浏览器登录考试系统,打破了时空界限,可实现自动出卷、阅卷、评卷、简化考试程序,且考试结果更加公正、客观。采用B/S(Browser / Server)模式的计算机在线考试和管理系统适用于一个考场或几十个考场、几十人甚至几万人同时通过网络在线考试,解决了考试系统对学生机软件过分依赖的问题,减轻了学生机软件维护工作量,比以往的考试系统更具有实用性。采用这种结构
37、,考试系统安装和试题装卸的程序简易;进行不同类别试题的考试时仅需要在服务器上进行试题的更换处理,对考场的计算机配置应考专业的相应软件,考生就可以进行考试。此技术超越了传统的“学生机/服务器”两层结构,采用了三层体系结构:用户界面层/事务层/数据库层。因此Web结构有着更好的安全性。在用户机上不需要安装任何应用程序,应用程序可以安装在事务层所在的计算机上,试题存放在数据库服务器上(事务层和数据库可以是同一台机器)。 5.1.2Web应用程序开发环境JSP技术在传统的网页HTML文件(*.htm,*.html)中加入Java程序片段(Scriptlet)和JSP标记(tag),就构成了JSP网页(
38、*.jsp)。JSP页面看上去象标准的HTML和XML页面,并附带有JSP引擎能够处理和抽取的额外元件。Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序片段,然后将执行结果以HTML格式返回给用户。程序片段可以操作数据库、重新定向网页以及发送E-mail等,这就是建立动态网站所需要的功能。所有程序都在服务器端执行,网络上传送给客户端的仅是得到的结果,对客户浏览器的要求最低。它基于强大的Java语言,具有良好的伸缩性,在网络数据库应用开发领域具有得天独厚的优势。JSP技术在多个方面加速了动态Web页面的开发:(1)将内容的生成和显示进行分离使用JSP技术,Web页面开发人员可以使用H
39、TML或者XML标识来设计和格式化最终页面。使用JSP标识或者小脚本来生成页面上的动态内容(内容是根据请求来变化的,例如请求帐户信息或者特定的一瓶酒的价格)。生成内容的逻辑被封装在标识和JavaBeans组件中,并且捆绑在小脚本中,所有的脚本在服务器端运行。如果核心逻辑被封装在标识和Beans中,那么其他人,如Web管理人员和页面设计者,能够编辑和使用JSP页面,而不影响内容的生成。在服务器端,JSP引擎解释JSP标识和小脚本,生成所请求的内容(例如,通过访问JavaBeans组件,使用JDBCTM技术访问数据库,或者包含文件),并且将结果以HTML(或者XML)页面的形式发送回浏览器。这有助
40、于作者保护自己的代码,而又保证任何基于HTML的Web浏览器的完全可用性。(2)强调可重用的组件绝大多数JSP页面依赖于可重用的,跨平台的组件(JavaBeans或者Enterprise JavaBeansTM组件)来执行应用程序所要求的更为复杂的处理。开发人员能够共享和交换执行普通操作的组件,或者使得这些组件为更多的使用者或者客户团体所使用。基于组件的方法加速了总体开发过程,并且使得各种组织在他们现有的技能和优化结果的开发努力中得到平衡。(3)采用标识简化页面开发Web页面开发人员不会都是熟悉脚本语言的编程人员。JavaServer Page技术封装了许多功能,这些功能是在易用的、与JSP相
41、关的XML标识中进行动态内容生成所需要的。标准的JSP标识能够访问和实例化JavaBeans组件,设置或者检索组件属性,下载Applet,以及执行用其他方法更难于编码和耗时的功能。通过开发定制化标识库,JSP技术是可以扩展的。今后,第三方开发人员和其他人员可以为常用功能创建自己的标识库。这使得Web页面开发人员能够使用熟悉的工具和如同标识一样的执行特定功能的构件来工作。(4)JSP能提供所有Servlets功能与Servlets相比,JSP能提供所有Servlets功能,它比用Println书写和修改HTML更方便。可以更明确地进行分工,Web页面设计人员编写HTML,只需留出空间让Servlets程序员插入动态部分即可。JSP技术能够支持高度复杂的基于Web