Jsp基本语法(常用指令、常用动作标签)


前面说了jsp的基本原理,今天就来说说Jsp基本语法吧。

首先看看jsp基本语法包括哪几部分
1.指令

语法格式:<%@ %>
实例:

 <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>

三大指令:<%@ page %> ,<%@ include %> ,| <%@ taglib %>

2.模板元素
  • html&css&js&jQuery等…
3.代码脚本片段(重点)

格式 :<%%>
作用:在_jspService()方法中,书写java代码。

实例:

<% int i = 0;%>

4.表达式(重点)

格式: <%=%>
作用:将数据显示到页面,与out.print()作用相同。

实例:

 <%=i%>

5.声明

格式:<%!%>
作用:在翻译后的class helloworld_jsp这个Servlet类中,书写java代码。

6.注释:Jsp支持三种注释
  • java:单行注释://,多行注释:/**/
  • html:
  • jsp:<%-- --%>
  • jsp中三种注释的比较,如下所示:
JSP注释 Java注释 HTML注释
JSP页面 可见 可见 可见
Java代码 不可见 可见 可见
浏览器 不可见 不可见 可见

接下来说说Jsp常用指令

Jsp语法格式:
  • <%@ 指令名 属性=属性值 属性2=属性值2 … %>
Jsp常用指令:
1.page指令

语法:

 <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>

属性:

  • language:语言,值为java且仅java。
  • contentType:与response.setContentType()作用一致,设置浏览器编码。
  • pageEncoding:设置Jsp页面的编码字符集。
  • import:导包
  • isErrorPage:设置当前页面是否为错误页面,默认值"false"。
    • ​ true:设置当前页面为错误页面,可以使用exception内置对象,捕获异常 。
    • ​ false:设置当前页面不是错误页面,不可以使用exception内置对象,捕获异常 。
  • errorPage:设置当前页面错误时的跳转目标页面。
2.include指令:静态包含

语法:

<%@include file="被包含文件的路径" %> 	

作用:将目标文件包含到当前文件中。

特点:被包含的文件不会被翻译&编译。(先包含,再翻译)

3.taglib指令

语法:

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> 

属性:

  • prefix用来指定前缀名,我们通过该名来使用JSTL。
  • uri相当于库的唯一标识,因为JSTL由多个不同的库组成,使用该属性指定要导入哪个库。

作用:引入标签库。

接下来说一下Jsp常用动作标签:

1.概述

  JSP动作标签与HTML标签不同,HTML标签由浏览器来解析,而JSP动作标签需要服务器(Tomcat)来运行。

2.常用的JSP动作标签
2.1 转发动作标签

语法:
作用:在页面中用于转发操作。

实例:


转发子标签:

语法:
作用:在转发时设置请求参数,通过request.getParameter()在目标页面获取请求参数。

实例:


    

注意:如果转发动作标签不需要设置请求参数,该标签开始与结束标签内部,不允许书写任何内容,(包括空格)

2.2. 动态包含动作标签

语法:“target.jsp”>
作用:动态包含,将其他页面包含到当前页面中。

实例:


特点:被包含的文件同时会被翻译&编译。(先翻译,再包含)

  • 本质原理:当使用动态包含时,Tomcat会在生成的Servlet中加入如下代码:

    org.apache.jasper.runtime.JspRuntimeLibrary.include(request, response, "target.jsp", out, false);
    

3.说一说动态包含与静态包含的区别

@include指令 jsp:include标签
特点 静态包含 动态包含
语法的基本形式 <%@ include file=”…”%>
包含动作发生的时机 翻译期间 请求期间
是否生成java文件 不生成 生成
合并方式 代码复制 合并运行结果
包含的内容 文件实际内容 页面输出结果
代码冲突 有可能 不可能
编译次数 1 包含的文件 + 1
适用范围 适用包含纯静态内容(CSS,HTML,JS),或没有非常耗时操作。或大量java代码的jsp 包含需要传递参数。含有大量java代码,运算,耗时很长的操作。

  关于Jsp基本语法(常用指令、常用动作标签)的内容到这里就结束了,有什么问题一起交流哦。

你可能感兴趣的:(#,JavaWeb,jsp,jsp基本语法,jsp常用指令,jsp常用动作标签)