JSP实践要点

2016-01-29 12:22 5 1 收藏

JSP实践要点,JSP实践要点

【 tulaoshi.com - Java 】

 

在 Internet众多网站中,基于Web数据库的动态网站应用相当广泛。基于Web网络数据库的动态网站由一个Web浏览器作为客户端界面,一个数据库服务器用做信息存储和一个连接两者的 Web应用服务器组成。原有开发动态网站的CGI技术,随着Web应用程序的客户端技术不断地发展,逐渐被Java Applet、ActiveX控件、DHTML和JavaScript所取代。这些技术极大地改善了用户界面,但当它们尝试做一些深入的工作时,开始遇到客户端浏览器不兼容、服务器负担过重、访问速度下降以及安全性等问题。JSP技术就是解决这些问题的一把金钥匙,本文主要讨论在使用JSP技术构建动态网站的过程中的一些技术问题。

JSP技术

JSP是基于Java Servlet以及整个Java体系的Web开发技术,利用这一技术可以建立先进、安全、快速和跨平台的动态网站。在传统的网页HTML文件中加入Java程序片段和JSP标记,就构成了JSP网页。Web服务器接收到访问JSP网页的请求时,首先执行其中的程序片段,然后将执行结果以HTML格式返回给客户。程序片段可以操作数据库、重新定向网页以及发送 E-mail 等等,这就是建立动态网站所需要的功能。所有程序操作都在服务器端执行,网络上传送给客户端的仅是得到的结果,对客户浏览器的要求很低。如图1所示,在用户连接JSP网站时,用户请求网页,JSP页面独自响应请求,将用户对网页的请求转化为对数据的请求,通过JavaBean处理请求并将返回的数据封装成HTML页面返回给用户。

JSP有许多优势:

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/java/)

1. 程序写一次,到处可以运行。JSP在设计时,充分考虑到应用平台的无关性。依赖于Java的可移植性,JSP得到目前许多流行操作平台的支持,可在Apache、NetScape、IIS等服务器上执行。

2. 执行速度快。JSP页面只需编译一次转化为Java字节代码,其后一直驻留于服务器内存中,加快了对JSP页面的响应速度。若不考虑JSP页面第一次编译所花的时间,则JSP的响应速度要比ASP快得多。

3. Java的优势。JSP技术是用Java语言作为脚本语言的。跨平台、成熟、健壮、易扩充的Java技术使得开发人员的工作在其他方面也变得容易和简单。在Windows系统被怀疑可能会崩溃时,Java能有效地防止系统崩溃。Java语言通过提供防止内存泄漏的方法,在内存管理方面大显身手。加之,JSP为应用程序提供了更为健壮的意外事件处理机制,充分发挥了Java的优势。

JSP技术难点

1. 连接数据库

数据库连接对动态网站来说是最为重要的部分,在与后端数据库连接时可以采用ODBC或JDBC技术。虽然ODBC作为传统的连接数据库的手段是一种选择,但是ODBC有以下致命缺陷,从而使它无法胜任JSP的请求:

(1) ODBC是C语言实现的API,从Java程序调用本地的C程序会带来一系列类似安全性、完整性、健壮性方面的问题。

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/java/)

(2) 其次,完全精确地实现从C代码ODBC到Java API 翻译的ODBC不会令人满意,因为在Java中没有指针,而ODBC中大量地使用了指针,包括极易出错的空指针“void *”。

(3) 考虑到平台移植性,在开发JSP程序中使用ODBC会带来负面影响,使得代码不适合于移植。

为了使程序在具有安全性、完整性、健壮性的同时, 可以方便地移植,采用JDBC连接数据库更合适一些。JDBC是一种可用于执行SQL语句的Java API,它由一些Java语言写的类、界面组成,使开发人员可以用纯Java语言编写完整的数据库应用程序。通过使用JDBC,可以很方便地将SQL语句传送到几乎任何一种数据库。也就是说,可以不必写一个程序访问Sybase,写另一个程序访问Oracle,再写一个程序访问Microsoft的SQL Server。用JDBC写的程序能够自动地将SQL语句传送给相应的数据库管理系统。

在本地数据库程序使用Microsoft的Access等数据库时,可以使用Sun公司开发的JDBC-ODBC桥,借用此技术JSP程序就可以访问带有ODBC驱动程序的数据库。这样既保留JDBC的优点,又可以使用Microsoft提供的ODBC数据源与Access连接。不管对方是何种数据库,只要有ODBC接口就可以直接使用JDBC-ODBC桥与数据库连接,而无需因为后端数据库的改变而改动相应的程序代码,实现了应用层与数据库层的完美分离。如果需要变后端数据库为MySQL,只需在ODBC数据源中安装MySQL的驱动程序之后,就可以直接使用MySQL数据库了。

2. 内建的组件

在实现网站的时候,由于客观需要,为了方便区分本地局域网用户与远端连上来的用户,并提供相应的权限,可以采用内建的组件Request来捕获每一个连到服务器上的用户的IP地址,通过比较之后给出相应的权限。这样做到本局域网内用户可以使用网站内所有公开的和不对外公开的资源。还可以将现有的方法加以改进,将各种IP地址输入到数据库中并且赋予不同的IP地址不同的权限,以完整地控制用户使用网站资源。

会话状态维持是Web应用开发者必须面对的问题。为了了解用户是否还在线,使用内建的Session组件,通过给每个登录用户一个Session变量,可以在用户非正常离开网站之后,关闭该用户使用的资源,达到节省内存,提高服务器性能的目的。

在JSP中还提供了Cookie类,其构造器有两个参数,分别代

来源:http://www.tulaoshi.com/n/20160129/1485832.html

延伸阅读
标签: Java JAVA基础
  JSP另外一个重要的语法是Tags(标记)。JSP Tags不是使用<%,而只是使用<字符。JSP Tag有点象HTML Tag 。JSP tags可以有一个“start tag”、一个“tag body”以及一个“end tag”。开始和结束的标志都可以使用标志的名字,都被圈在<和字符里面。结束的标志是在字符<后面加一个反斜杆(/)字符。这个标志名字有一个嵌入的冒...
标签: Web开发
DWR(Direct Web Remoting)是一个WEB远程调用框架.利用这个框架可以让AJAX开发变得很简单.利用DWR可以在客户端利用JavaScript直接调用服务端的Java方法并返回值给JavaScript就好像直接本地客户端调用一样(DWR根据Java类来动态生成JavaScrip代码).它的最新版本DWR0.6添加许多特性如:支持Dom Trees的自动配置,支持Spring(JavaScript...
尽管 C 语言问世已近 30 年,但它的魅力仍未减退。C 语言继续吸引着众多的人们,他们为了编写新的应用程序,或者移植或维护现有的应用程序而必须学习新技能。 简介 本文是为了满足开发人员的需要而写的。我们总结了一套指南,无论作为开发人员还是顾问,这些指南多年来一直都很好地指导着我们,我们把它们作为建议提供给...
标签: Web开发
如果你还不知道 Web 标准是什么,那么我给一个定义:从 05 年开始才在中国流行起来的一种做网页的方式,并且现在保持着一定的热度。新浪、网易这两大门户网站的首页都是标准的(或接近标准)。我这么定义,是说作为一个新锐的网页设计师,如果你现在还不知道 Web 标准,那么你即将被历史淘汰了。 很多人不知道怎么系统的学习 Web 标准。...
标签: 电脑入门
1. 实验目 的理解shell程序的功能。 学会shell的使用。 建造一个简单的shell。 2. 实验内容 基本任务:编写一个简单的shell程序,实现以下基本的命令。 1) 浏览目录和文件的各种属性 ls -l? 2) 回显 echo、 3) 显示文件内容 cat、more、 4) 创建目录mkdir、 5) 删除目录rmdir、 6) 删...

经验教程

144

收藏

94

精华推荐

CNET JSP BASIC: 安装JSP

CNET JSP BASIC: 安装JSP

YfShadow22

JSP由浅入深(6)—— JSP声明

JSP由浅入深(6)—— JSP声明

大宝的宝贝9

JSP由浅入深(7)—— JSP Directives

JSP由浅入深(7)—— JSP Directives

爱xiaoyan520

微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部