JSP技术

10 篇文章 0 订阅
9 篇文章 1 订阅
JSP技术
日期:2015-06-15 15:59:39  浏览量:64
 

 

    JSP是一种建立在Servlet规范提供的功能之上的动态页面技术,JSP文件在用户第一次请求时,会被编译成Servlet,然后由这个Servlet处理用户的请求,所以JSP也可以看成是运行时的ServletJSPServlet的区别是什么呢?

ServletJavaCGI的回应,它们在服务器上执行和解释浏览器的请求,承担客户端和其他应用程序之间的中间层的角色。Servlet主要是把动态的内容混合到静态的内容中以产生HTML

    JSP页面在HTML元素中嵌入Java脚本代码和JSP标记,是得文件长度变短,格式更加清晰。JSP把静态和动态的内容分离开来,实现了内容和表示的分离。

    使用JSP,不需要单独配置每一个文件,只要扩展名是.jspJSP容器(也是Servlet容器)就会自动识别,将其转换为Servlet为客户端服务。

    JSP容器管理JSP页面生命周期的两个阶段:转换阶段和执行阶段。当有一个对JSP页面的客户请求到来时,JSP容器检验JSP页面的语法是否正确,将JSP页面转换成为Servlet源文件,然后调用javac工具编译Servlet源文件生成字节码文件,这一阶段是转换阶段。接下来,Servlet容器加载转换后的Servlet类,实例化一个对象处理客户端的请求,这一阶段是执行阶段。

JSP语法:

    一个JSP页面由元素和模板数据组成。元素是必须由JSP容器处理的部分,而模板是JSP容器不处理的部分,例如,JSP页面中的HTML内容,这些内容会直接发送到客户端。

      元素有三种类型:指令元素、脚本元素和动作元素

      指令元素主要用于为转换阶段提供整个JSP页面的相关信息,指令不会产生任何的输出到当前的输出流中。形式如下:<%@ directive {attr="value"}* %>

page指令作用于整个JSP页面,定义了许多与页面相关的属性,这些属性将被用于和JSP容器通信。语法如下

<%@ page attr1="value1" attr2="value2" ...%>

XML语法格式:<jsp:directive.page attr1="value1" attr2="value2".../>

include指令用于在JSP页面中静态包含一个文件,该文件可以是JSP页面、HTML页面、文本文件或一段Java代码。使用了include指令的JSP页面在转换时,JSP容器会在其中插入所包含文件的文本或代码。语法如下

<%@ include file="relativeURLspec" %>

XML语法格式:<jsp:directive.include file="relativeURLspec"/>

taglib指令运行页面使用用户定制的标签,语法如下:

<%@ taglib(uri="tagLibraryURI" | tagdir="tagDir") prefix="tagPrefix" %>

XML语法格式:<jsp:directive.tablib(uri="tagLibraryURI" | tagdir="tagDir") prefix="tagPreFix"/>

      脚本元素包括三个部分:声明、脚本段和表达式。声明脚本元素用于声明在其他脚本元素中可以使用的变量和方法,脚本段是一段Java代码,用于描述在对请求的响应中要执行的动作,表达式脚本元素是Java语言中完整的表达式,在响应请求时被计算,计算的结果被转换为字符串,插入到输出流中。

<%! declaration(s) %>

XML语句格式:<jsp:declaration>declaration(s)</jsp:declaration>

例如:<%! int i;%>

<%! int i=0;%>

<%! public String f(int i){ if (i<3) return ("true");}%>

可以在一个声明中声明多个变量和方法,也可以使用多个声明

脚本段是在请求处理期间要执行的Java代码段。脚本段可以产生输出,并将输出发送到客户端,也可以是一些流程控制语句<%scriptlet%>

XML语法格式如下:<jsp:scriptlet>scriptlet</jsp:scriptlet>

例子:

<%

   if(Calendar.getInstance().get(Calendar.AM_PM)==Calendar.AM)

   {

%>

        Good Morning

<%

    }

    else

    {

%>

         Good Afternon

<%

     }

%>

<%%>之间的部分是脚本段,“Good Morning”“Good Afternoon”是模板数据。

      表达式脚本元素是Java语言中完整的表达式,在请求处理时计算这些表达式,计算的结果将被转换成字符串,插入到当前的输出流中。表达式以<%=开始,以%>结束

语法如下:<%= expression %>

XML语法格式:<jsp:expression> expression</jsp:expression>

动作元素为请求处理阶段提供信息。动作元素遵循XML元素的语法,有一个包含元素名的开始标签,可以由属性、可选的内容、与开始标签匹配的结束标签。

 

 
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

wangchuang2017

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值