03 - jsp基本语法(脚本元素-注释-指令)

  • 在jsp文件中可以嵌套很多的内容, 如 : JSP的脚本元素和注释等, 但是这些内容都需要遵循一定的语法规范.

JSP脚本元素

JSP脚本元素是指嵌套在 <% 和 %> 之中的一条或多条 Java 程序代码. 通过JSP脚本元素可以将Java代码嵌入HTML页面中, 所有可执行的Java代码,可以通过JSP脚本来执行.
JSP 脚本元素主要包含如下三种类型:

  • JSP Scriptlets
  • JSP 声明语句
  • JSP 表达式
  1. JSP Scriptlets
    JSP Scriptlets 是一段代码段. 当需要使用Java实现一些复杂操作或控制时, 可以使用.
<% java 代码 (变量 , 方法 , 语句等) %>

在 jsp Scriptlets中声明的变量是JSP 页面的局部变量, 调用JSP Scriptlets 时, 会为局部变量分配内存空间, 调用结束后, 释放局部变量占有的内存空间.

  1. JSP声明语句
    JSP的声明语句用于声明变量和方法, 以 “<%!” 开始, 以 “%>” 结束 :
	<%!
 	    定义的变量 或者方法
	%>
  • 在声明语法中要注意, 被声明的java代码将被编译到 Servlet 的 *_jsp.java 的Service() 方法之外, 即在JSP声明语句中声明都是成员方法, 成员变量, 静态方法, 静态变量 , 静态代码块等. 在JSP 声明语句中声明的方法在整个JSP页面内有效.
  • <%和%> 中定义的是局部变量, 不能定义方法(java方法中不能再嵌套定义方法), 代码块操作可以将结果输出到浏览器.
  1. JSP表达式
    JSP表示用于将成语数据输出到客户端, 他将要输出的变量或者表达式直接封装在 “<%= xxx %>” 标记中, 基本格式如:
	<%= expression %>

该语句 将"expression" 表达式的结果输出到客户端的浏览器
注意:

  • “<%= xxx %>” 标记中插入表达式或者变量, 后边不能加分号";", 不能插入语句.
  • “<%=” 是一个完整的符号, <% 和 = 之间不可有空格.

JSP注释

凡是编程语言一般都有注释, JSP也有自己的注释方式, 基本格式如下:

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

注意:

  • Tomcat在将JSP页面编译成Servlet程序时,会忽略JSP页面中 被注释的内容, 不会将注释信息发送到客户端. 举个栗子:
<body>
     <!--  HTML注释 -->   页面源码中有显示
     <%--  JSP注释 --%>   页面的源码中不会显示
</body>
  • JSP代码段中的 java注释
<%
     // java注释      在被翻译成java文件后, 显示该java注释
%>

HTML注释 , JSP注释, java注释 总结:

jsp源码 java源码 html源码
jsp注释
java注释
html注释

JSP 指令

存在指令的目的就是去设置JSP页面中的一些信息. jsp2.0 中主要的指令有 page, include , taglib 三种指令, 每种指令又有其各自的属性.

1. page指令

语法 :

<%@  page  属性名1 = "value1"  属性名2 = "value2" ...... %>
  • language

表明jsp页面中可以写java代码

  • contentType

其实即使说这个文件是什么类型,告诉浏览器我是什么内容类型,以及使用什么编码

	contentType="text/html; charset=UTF-8"

	text/html  MIMEType 这是一个文本,html网页
  • pageEncoding jsp内容编码

  • extends 用于指定jsp翻译成java文件后,继承的父类是谁,一般不用改。

  • import 导包使用的,一般不用手写。

  • session

值可选的有true or false .

用于控制在这个jsp页面里面,能够直接使用session对象。

具体的区别是,请看翻译后的java文件 如果该值是true , 那么在代码里面会有getSession()的调用,如果是false : 那么就不会有该方法调用,也就是没有session对象了。在页面上自然也就不能使用session了。

  • errorPage

指的是错误的页面, 值需要给错误的页面路径

  • isErrorPage

上面的errorPage 用于指定错误的时候跑到哪一个页面去。 那么这个isErroPage , 就是声明某一个页面到底是不是错误的页面。

2.include

包含另外一个jsp的内容进来。(静态包含)
include指令只有一个file属性, 该属性用来指定插入到JSP 页面目标位置的文件资源

	<%@ include file="other.jsp"%>
  • 背后细节:

把另外一个页面的所有内容拿过来一起输出。 所有的标签元素都包含进来。
有时候需要在JSP页面静态包含一个文件(常见的比如一个网站的通用的页头, 页尾等)

3.taglib

	<%@ taglib prefix=""  uri=""%>  
	prefix : 标签库的别名  uri: 标签库路径

猜你喜欢

转载自blog.csdn.net/fanbaodan/article/details/84929445