J2EE基础之JSP

J2EE基础之JSP

1、JSP简介

JSP是JavaServer的缩写,是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。在HTML文件中加入Java程序代码就构成了JSP网页。Web服务器在遇到访问JSP网页的请求时,首先执行其中的Java程序代码,然后将执行结果以HTML形式返回给客户端。实际上,从另一方面来说,JSP的实质是Servlet,其在发布编译运行时会被转换成标准的Servlet,该转换过程一般在出现第一次页面请求时就会发生。

JSP设计的目的在于简化表示层的展示。JSP中没有增加任何本质上不能用Servlet实现的功能。但是,在JSP中编写静态HTML,更加方便,不必再用println语句来输出每一行HTML代码。更重要的是,借助内容和外观的分离,页面制作中不同性质的任务可以方便地分开。

除了普通的HTML代码之外,嵌入JSP页面的其他成分主要包括以下三种:脚本元素、指令、动作。其中,脚本元素是用来嵌入Java代码,这一 部分Java代码将直接转换为Servlet的一部分;JSP指令用来从整体上控制Servlet的结构;JSP动作用于引入现有的组件以控制Web容器的行为。另外,为了简化脚本元素,JSP定义了一组可以直接使用的内部对象变量。

2、JSP指令

JSP指令是从JSP向Web容器发送的消息,它用来设置页面的全局属性,如输出内容类型等。指令的作用范围仅限于包含指令本身的JSP页面。

JSP指令的格式为:

<%@指令名 属性=”属性值”%>

指令名有page、include和tablib三种。具体如下:

(1)page指令

page指令用来定义整个JSP页面的全局属性。合法的page属性有language、import、session、contentType、isThreadSafe、buffer、autoflush、extends、info、errroPage、isErrorPage等。

(2)include指令

JSP页面可通过include指令将其他文件插入到当前页面中。这个文件可以是JSP文件、HTML文件或文本文件。include指令的格式为:

<%@include file = “relativeURL”%>

include指令的主要作用是在一个Web应用中,当多个JSP页面包含相同的内容时,可以把相同的部分放在一个文件中,然后在其他文件中用include指令包含这个文件即可。这样做的好处,当要修改这一部分文件代码是,只需修改一个文件即可。

(3)taglib指令

当需要在JSP文件中使用自定义的标签时,可以通过使用taglib指令来指定。格式为:<%@taglib uri=”URItoTagLibrary”prefix=”tagPrefix”%>

其中,URI为统一资源标记符,prefix是标签库的识别符,可以根据此prefix对自定义的标签进行唯一的命名。

3、JSP动作

JSP动作是一组动态执行的指令,用于控制Web容器的行为。利用JSP动作可以动态地向页面中插入文件、重写JavaBean组件、导向另一个页面等。常见的JSP动作有以下四种:

(1)include动作

include动作把指定文件插入正在生成的页面,其格式如下:

<jsp:include page=”relativeURL” flush=”true|false”>

include动作和include指令在执行过程中有很大的不同。include动作在执行时不对包含的文件进行处理,如果对包含的文件进行了修改,那么运行时可以看到所包含文件修改后的结果。而静态的include指令包含的文件如果发生变化,必须重新编译,否则只能看到所包含文件修改前的内容。因此,除非被包含文件经常改动,否则使用include指令奖获得更好的性能。

(2)forward动作

forward动作用于把当前的JSP页面导向另一个页面,客户端看到的地址是当前网页的地址,而实际内容却是另一个页面的。其格式如下:

<jsp:forward page=”relativeURL”>

(3)param动作

param动作用于传递参数信息,必须配合include动作或forward动作一起使用。格式如下:

<jsp:param name=参数名称,value=值/>

(4)useBean动作

UseBean动作能够让JSP网页使用JavaBean,从而能够充分应用Java的重要性。通过使用useBean动作,可在JSP网页中实例化一个或多个JavaBean组件,这些被实例化的JavaBean对象可以在JSP中被调用。其格式为:

<jsp:useBean id=”name” class=”classname” scope=”page|request|session|application”>

4、JSP内置对象

JSP提供了可在脚本中使用的内置对象,这些对象使用户更容易收集通过浏览器请求发送的信息、响应浏览器及存储用户信息。JSP共提供九中内置对象:request、response、out、session、application、config、pagecontext、page和exception。常用的有以下六种:

(1)request对象

request对象是JSP中最常用的对象,代表来自客户端的请求,它封装了用户提交的信息,例如在FORM表单中填写的信息等,通过调用request对象相应的方法可以获取关于客户请求的信息。

(2)response对象

response对象用于将服务器数据发送到客户端以响应客户端的请求。可以通过response对象来组织发送到客户端的信息,如Cookie、HTTP头文件等。但是由于组长方式比较底层,所以一般不建议使用,需要向客户端发送文字时直接使用out对象即可。

(3)session对象

session对象指的是客户端与服务器的一次会话,从客户端连到服务器的一个Web应用程序开始,直到客户端与服务器断开为止。

(4)application对象

如果客户浏览不同的Web页面,将产生不同的application对象。同一个Web应用中的所有JSP页面都将存取同一个application对象,即使浏览这些JSP网页的客户不是同一个也是如此。application对象一旦创建,除非服务器关闭,否则将一直保持下去。

(5)out对象

out对象能将特定的数据内容搭配JSP程序代码动态输出到客户端的浏览器。

(6)exception对象

exception对象用来处理JSP文件在执行时所有发生的错误和异常。

时间: 2024-10-12 13:25:04

J2EE基础之JSP的相关文章

J2EE基础之Servlet

J2EE基础之Servlet 1.  什么是Servlet? Servlet即Java服务小程序,是使用应用程序设计接口以及相关类和方法的Java程序.它可以作为一种插件,像Applet程序一样嵌入到Web服务器中运行.Servlet主要用于处理和客户之间的通信,当客户端传来一个HTTP请求时,通过调用Servlet方法来向客户端发送一个响应. Servlet的主要功能在于交互式地浏览和修改数据,收集来自网页表单的用户输入,呈现来自数据库的记录,还可以生成动态的Web内容.狭义的Servlet是

J2EE基础之Web服务简介

J2EE基础之Web服务简介 1.什么是Web服务? 在人们的日常生活中,经常会查询网页上某城市的天气信息,这些信息都是动态的.实时的,它是专业的气象站提供的一种服务.例如,在网上购物时,通常采用网上支付的方式,这是通过使用第三方提供的支付工具来实现的.在网络上提供这样的服务,我们称之为Web服务. 从软件开发者的角度来看,Web服务是一组规范的集合.这种规范用来定义不同应用系统之间是如何交互的,包括信息传递的内容.格式,信息的传递协议,以及相关的安全.策略和互操作等关键特性. 从编程使用者的角

[J2EE基础]初识JSP和Servlet

近期须要用到J2EE,就開始学习与J2EE相关的知识了. JSP是一种Javaserver端技术,它用于在网页上显示动态内容. Tomcat相关知识 JSP的运行过程 JSP的页面构成元素 JSP的凝视 静态和动态include JSP标准标签库 JSP的九大内置对象: Out:一个缓冲的输出流,向client输出内容 page:当前JSP页面本身,它是java.lang.Object类的实例 request:提取浏览器提交的信息 response:server对客户的请求做出响应.向clien

J2EE基础总结(4)——JSP

什么是JSP JSP全名为Java Server Pages,中文名叫java服务器页面,其根本是一个简化的Servlet设计,它是由Sun Microsystems公司倡导.许多公司参与一起建立的一种动态网页技术标准.JSP技术有点类似ASP技术,它是在传统的网页HTML(标准通用标记语言的子集)文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件,后缀名为(*.jsp). 用JSP开发的Web应用是跨平台的,既能在Linux下运

J2EE基础篇——十三个规范

背景: 1.企业级应用框架的需求,在很多企业级应用中.比如数据库连接.邮件服务.事务处理等都是一些通用企业需求模块,这些模块假设每次在开发中都由开发者来完毕的话,将会造成开发周期长和代码可靠性差等问题.于是很多大公司开发了自己的通用模块服务. 这些服务性的软件系列统称为中间件. 2.为了通用必需要提出规范,不然无法达到通用,在上面的需求基础之上,很多公司都开发了自己的中间件,但其与用户的沟通都各有不同,从而导致用户无法将各个公司不同的中间件组装在一块为自己服务.从而产生瓶颈. 于是提出标准的概念

J2EE基础知识(九)

1.BS与CS的联系与区别. C/S是Client/Server的缩写.服务器通常采用高性能的PC.工作站或小型机,并采用大型数据库系统,如Oracle.Sybase.InFORMix或SQL Server.客户端需要安装专用的客户端软件. B/S是Brower/Server的缩写,客户机上只要安装一个浏览器(Browser),如Netscape Navigator或InternetExplorer,服务器安装Oracle.Sybase.InFORMix或SQL Server等数据库.在这种结构

J2EE之初识JSP

上篇博客已经简单介绍了下Servlet,从上篇博客中可以看到,Servlet获得返回来的数据后,显示给客户端时,需要不断的拼串,从而构成完整的html页面,这就在无形中加大了程序员的压力和劳动力.而今天要介绍的JSP正好解决了这个问题. 其实JSP也是J2EE的12中规范之一,它的本质是Servlet,只不过JSP对Sservlet进行了封装,使它更加倾向于表现层,跟html页面接轨,既能进行业务逻辑处理也能进行网页的动态显示,相比Servlet,提高了工作效率,减轻了程序员的劳动力和压力. 既

2016-09-06 J2EE基础知识之不知

1.中间件.容器.Web服务器 1.1中间件 中间件是提供系统软件和应用软件之间连接的软件,以便于软件各部件之间的沟通.中间件处于操作系统和更高一级应用程序之间. J2EE提出的背景: 1)企业级应用框架的需求:在许多企业级应用中,例如数据库连接.邮件服务.事务处理等都是一些通用企业需求模块,这些模块每次再开发如果都由开发人员来完成的话,将会造成开发周期长和代码可靠性差等问题.于是许多大公司开发了自己的通用模块服务,这些服务型的软件系列被称为中间件. 2)通用的规范:因为这些中间件与用户的沟通都

j2ee基础篇

这几天忙着考试系统维护工作,关于j2ee的学习落下了,再次学习之前先把基础知识回顾一遍,整理了一下 版权声明:本文为博主原创文章,未经博主允许不得转载.