1.2选题目的 结合过去所学的有关网络和网页设计以及软件工程方面的知识,为了加深对B/S结构开发方式的理解和对软件测试理论方法的认识,从测试来发现软件存在的各种问题,我选择了这个课题。B/S结构下,由于Web支持底层的TCP/IP协议,使Web网与目前的几乎所有局域网都可以做到无缝连接,从而彻底解决了异构系统间的连接问题。同时Web采用"瘦客户端",使系统具有开放性得到很大的改善,系统对将要访问系统的用户数的限制有所放松。了解网络应用的发展,深入了解一些常用的网络开发模式及其技术,能将软件工程的思想应用到软件开发及测试对于我们计算机专业的大学生来说是非常重要的。 内容来自论文无忧网 www.paper51.com 第二章 方案论证2.1 B/S结构相关开发技术简介 内容来自论文无忧网 www.paper51.com 从Web数据库的发展过程来看,实现B/S结构下Web数据库的应用通常有两种方法:一种是Web服务器端提供中间件连接Web服务器和数据库服务器;一种是把应用程序下载到客户端直接访问数据库。其中第二种方法在程序的编写、调试上显得较为繁琐,网络安全也较难保证。在第一种方法中较常用的中间件技术有通用网关接口(CGI)和应用程序编程接口(API)两种,而API有两种版本,ISAPI和NSAPI。CGI的最大不足在于对每个访问都会在服务器端产生一个应用程序副本,占用系统资源。API以动态连接库的形式出现虽然克服了CGI的这一缺点,却带来了另一个问题,即当需要修改或更新服务程序时必须重起系统,而这在许多事实性较强的应用服务器上是不允许的。同时,无论是CGI还是API它们共同的缺点是程序和HTML文本分离,编写和调试很不灵活。第一种方法即是Web服务器端提供中间件连接Web服务器和数据库服务器。我们常常称它为Web数据库系统,它实质上是一种动态网页技术与数据库系统的结合。利用数据库系统来存储和管理不断变化的数据信息,并通过动态网页技术实现利用Web页面来访问、存储数据和管理数据库。所谓的动态,主要是具有以下几个方面的特点:交互性:即网页会根据用户的需求和选择而动态改变和响应;自动更新:不需要手动更新HTML文档,就会自动生成新的页面,可以大大节省工作量;自动适应性:即当不同的时间、不同的人访问同一网址时会产生不同的页面。现在,主流的B/S结构下的动态网页技术有JSP,PHP,ASP等。它们都可以提供Web数据库开发的全套解决方案下面将会对这三种技术进行一个简要的介绍,并比较各自的优点和缺点。 paper51.com 2.2 Web数据库开发关键技术2.2.1 JSP技术 内容来自www.paper51.com
JSP(Java Server Page)它是由SUN公司倡导的由许多公司参与共同建立起来的一种动态网页技术标准。它是一种基于Java的技术,所以它用来产生跨平台和跨Web服务器的动态网页技术。JSP的执行原理和我们熟知的VbScript和JavaScript并不相同,它是完全在服务器端执行的,而不像大多数的脚本,有一部分还在浏览器端执行的。在传统的静态HTML网页中加入Java程序片断和JSP标记(tag)就构成了JSP(。jsp)网页。当Web服务器收到浏览器访问JSP网页请求时,它首先执行其中的程序片断,然后将执行的结果以HTML页面的形式返回给浏览器端。 http://www.paper51.com
Java在推向开发人员时出现了重重困难,首先是Java缺少主流系统的广泛支持,而在所有的平台和技术上都缺少可以直接参照的应用方式。这时Java就走向了在各个应用层上的积极进取,在自己擅长的与不擅长的领域都走出了坚定的脚步。其中最让Web技术人员兴奋的就是Java Server的出现和JSP的渐渐成熟,这一步步都让Java正式的走向了Web开发技术的舞台。Java利用了它的跨平台技术,使Java的应用能快速的部署在各个平台上,而真的可以一处编写随处运行。它有较的利用了这优势,巧妙的将Java的通用性、JSP的易用性、Server的速度结合在一起,利用平台部署上的技巧有效的屏蔽Java的速度问题,所以Java迅速的在Web开发人员的团员中推广开来。携着Java Bean、EJB、Java Application Server、Java事务服务器等这样的强大后台走向了真正的成熟应用。实际上JSP就是Java,只是它是一个特别的Java语言,加入了一个特殊的引擎,这个引擎将HTTPServer这个类的一些对象自动进行初始化好让用户使用,而用户不用再去操心前面的工作。同时这个引擎又引入了<jsp:*、<%@等一系列的特别语法,使用这些语法来进行一些特定的操作,如引用文件、URL转向、JavaBean引用等这样的操作,这些都是由引擎自动帮你完成初始化的工作。我们可以将这个引擎看作一个Jsp到Java Server的生成器或是翻译器,让用户不用再面对复杂的Server中的还没开始工作就要写的几十行代码。这就是JSP--一个Java Server生成器。JSP->Java Server Code(。java文件)->Java Runtime Bin Code(。class文件),这就是为什么我们第一次运行JSP时CPU运行能达到很高的原因,它实际上是调用JSP引擎来生成Java文件,再用java来编译它到class文件,这才能去执行它。同时也说明了在第一次运行以后,速度为什么哪么快的原因,只要这个JSP文件不改变哪么这个操作就不再会进行了(除非你删除了class文件)。所以说,Java有什么JSP就有什么样的功能。 paper51.com 优点: 内容来自www.paper51.com
1.一处编写随处运行。这是一个程序员的梦想,也是从前的程序员的恶梦,为了在不同的平台间运行,使许多程序员一行行的重写代码。在这一点上java已经给了我最完美的答案它做的要比PHP更出色,除了系统之外,你的代码不用做一点更改的。 paper51.com
2.系统的多台平支持。差不多在所有平台上都有一致的Java Server/JSP的Web Server/Application Server系统,它可以让你在任意环境做开发,在任意环境进行系统部署,在任意环境扩展。相比ASP/PHP的局限性是显而易见的。 http://www.paper51.com
3.强大的的可伸缩性。从只有一个小的jar文件就可以运行Server/Jsp到由多台服务器进行集群和负载均横,到多台Application进行事务处理、消息处理,一台服务器到无数以服务器,Java显示了一个巨大的生命力。 paper51.com 4.多样化和功能强大的开发工具支持。这一点与ASP很像,Java已经有了许多非常优秀的开发工具而且有许多可以免费得到,并且其中的许多已经可以顺利的运行于多种平台之下。 内容来自论文无忧网 www.paper51.com 缺点: copyright paper51.com 1.与ASP一样,Java的一些优势正是它致命的问题所在。正是由于为了跨平台的功能,为了极度的伸缩能力,所以极大的增加了产品的复杂性。它在扩展时需要的分成多少块,哪么java系统中就有多少种产品。所以我们看到了jre、jdk、jsdk、jswd等等,实际上它们只有有效的搭配在一起,才可以产生强大的效能。 内容来自论文无忧网 www.paper51.com
2.Java的运行速度是用将class常驻内存来完成的,所以它在一些情况下所使用的内存比起用户数量来说确实是"最低性能价格比"了。另一方面来说,它还需要硬盘空间来存储一系列的。java文件和。class文件以及对应的版本文件。 copyright paper51.com 3.缺少系统性的资料。由于SUN公司在国内没有Microsoft公司产品使用得广泛,同时关于Java,JSP等方面得公开出版物比较少。现在随着JSP得发展,情况已经有所改观。 copyright paper51.com 小结――适用人群:具有较强学习能力和耐心的开发人员。投入低,但是希望拥有较大的伸缩能力的应用。适用平台:基本上包括所有的平台。适用应用:Internet/Intranet高可靠性应用、Internet/Intranet与Client/Server结合的应用系统。常用的开发工具:JBuilder/Visual Age for java/Sun Forte for JavaKAWA。开发环境:Windows NT/Windows 2000开发系统JBuilder 3.5/Tomcat 3.1 JDK 1.3 copyright paper51.com
|