浅谈JSP基本语法

一、JSP是什么?

JSP(java server page)是一种java编写的服务器语言。

二、JSP的构成

JSP页面中包括指令标识、HTML代码、JavaScript代码、嵌入的Java代码、注释和JSP动作标识等内容。

三、指令标识

1.作用:设定整个JSP页面范围都有效的有关信息,被服务器解释并执行,客户端浏览器不可见。

2.语法格式:

<%@page language="java" contentType="text/html;charset=GB18030"pageEncoding="GB18030"%>
//tip:指令标识的<%@和%>是完整的标记,不能添加空格,但是标签中定义的属性与指令名是有空格的

3.Page指令(包括language,extends,import,pageEcoding等15个属性)

4.include指令 

特点:该指令是静态包含,即包含文件中所有内容会被原样包含到JSP页面中,即使被包含文件中有JSP代码,在包含时也不会被编译执行。使用include指令,最终将生成一个文件,所以在被包含和包含的文件中,不能有相同名称的变量。  

<%@ include file="path"%>
//该指令只有一个file属性,用于要包含的路径。该路径可以是相对路径,也可以是绝对路径。但是不可以通过<%=%>表达式所代表的文件。

5.taglib指令

<%@ taglib prefix='tagPrefix" url="tagURL"%>

四、脚本标识

1.JSP表达式

<%= 表达式%>
//可以是任意Java语言的完整表达式,该表达式的最终运算结果将被转换为字符串。
//tip:JSP表达式不仅可以插入到网页的文本中,用于输出文本内容,也可以插入到HTML标记中,用于动态设置属性。

2.声明标识

说明:服务器执行JSP页面时,会将JSP页面转换为Servlet类,在该类中会把使用JSP声明标识定义的变量和转换为类的成员变量和方法。

<%! 声明变量或方法的代码 %>
//tip:<%与!之间不可以有空格,但是!与其后面的代码之间可以有空格。另外,<%!与%>可以不在同一行。

3.代码片段

说明:代码片段就是在JSP页面中嵌入的Java代码或是脚本代码。

代码片段与声明标识的区别是,通过声明标识创建的变量和方法,在当前JSP页面中有效,它的生命周期从创建开始到服务器关闭结束;而代码片段创建的变量或方法,也是在当前JSP页面中有效,但它的生命周期是页面关闭后,就会被销毁。

五.JSP注释

1.HTML中的注释

2.带有JSP表达式的注释

3.隐藏注释

<%-- 注释内容 --%>

JSP编译时会忽略隐藏注释,所以即使隐藏注释中存在语法错误也不会影响程序的进行。

4.动态注释

六.动作标识

1.包含文件标识<jsp:include>

<jsp:include page="url" flush="false|true"/>

include与<jsp:include>的区别:

1.include指令通过file属性指定被包含的文件,并且file属性不支持任何表达式;<jsp:include>动作标识通过page属性指定被包含的文件,而且page属性支持JSP表达式。

2.使用include指令时,被包含的文件内容会原封不动地插入到包含页中,然后JSP编译器再将合成后的文件编译成一个Java文件;使用<jsp:include>动作标识包含文件时,当该标识被执行时,程序会将请求转发到被包含的页面,并将执行结果输出到浏览器中,然后返回包含页继续执行后面的代码。因为服务器执行的是多个文件,所以JSP编译器会分别对这些文件进行编译。

3.include指令包含文件最终会生成一个文件,所以包含文件中不能重名的变量和方法;在应用<jsp:include>动作标识包含文件时,每个文件单独编译,所以在被包含文件和包含文件中重名的变量和方法是不相冲突的。

2.请求转发标识<jsp:forward>

<jsp:forward page="url">

3.传递参数标识<jsp:param>

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值