JSP 语法基础知识(二)

 1. 指令<%@ %>

(1)page 指令

 通过设置内部的多个属性来定义整个页面的属性
 语法:<%@ page 属性1="属性值" 属性2="属性值1,属性值2"… 属性n="属性值n"%>

           page 指令常用属性 :

技术分享

例如:<%@ page language="java" contentType="text/html;charset=GBK"%>


(2) include 指令

 包含操作可以将一些重复的代码包含进来继续使用。此种包含称作“静态包含”。
 语法:<%@include file="要包含的文件路径"%>
例如:
<h1>静态包含操作</h1>
<%@ include file=include1.jsp"%>
            <jsp:include/>


2.JSP 标准动作

(1)<jsp:include/>

 可以把其他文件包含进来,此种包含为动态包含
 语法:
不传递参数:<jsp:include page="{要包含的文件路径}"/>
传递参数
<jsp:include page="{要包含的文件路径}">
<jsp:param name = "参数名称 1" value = "参数内容 1"/>
<jsp:param name = "参数名称 2" value = "参数内容 2"/>
...可以向被包含页面中传递多个参数
</jsp:include>


(2)静态包含与动态包含区别

 静态包含:

include1.jsp页面

<span style="font-size:18px;"><%
int x = 10 ;
%>
<h1>被包含页面:include1.jsp--<%=x%></h1></span>

include2.jsp页面

<span style="font-size:18px;"><%@ page contentType="text/html" pageEncoding="GBK"%>
<html>
<head><title>静态包含</title></head>
<body>
<%
int x = 100 ; // 变量重复
%>
<h1>include2.jsp -- <%=x%></h1>
<%@include file="include1.jsp"%>
</body>
</html></span>
程序运行时出现 500 的 HTTP 状态码,属于服务器错误,x 被重复定义了。在观察 JSP
引擎编译得到的 Java 文件:只生成了一个 java 文件。所以,静态包含采用先包含后处
理的形式。

 动态包含:

<span style="font-size:18px;"><%@ page contentType="text/html" pageEncoding="GBK"%>
<html>
<head><title>动态包含</title></head>
<body>
<%
int x = 100 ; // 变量重复
%>
<h1>include3.jsp -- <%=x%></h1>
<jsp:include page="include1.jsp"/>
</body>
</html></span>
程序运行没有错误,动态包含如果包含的是动态页面,采用先处理后包含形式。

3. <jsp:forward/>

 从当前页面跳转到指定页面,跳转操作属于服务器端跳转,跳转之后的页面路径不
改变
 语法:
 不传递参数
<jsp:forward page = "要包含的文件路径">
 传递参数
<jsp:forward page = "要包含的文件路径">
<jsp:param name = "参数名称" value = "参数内容"/>
...可以向被包含页面中传递多个参数
</jsp:forward>
例如:
forward2.jsp 为跳转后的页面

<span style="font-size:18px;"><%@ page contentType="text/html" pageEncoding="GBK"%>
<h1>这是跳转之后的页面</h1>
<h2>参数一:<%=request.getParameter("name")%></h2>
<h2>参数二:<%=request.getParameter("info")%></h2></span>

forward1.jsp 发生跳转的页面

<pre name="code" class="html"><span style="font-size:18px;"><html>
<head><title>跳转动作</title></head>
<body>
<%
String username = "lcx" ;
%>
<jsp:forward page="forward2.jsp">
<jsp:param name="name" value="<%=username%>"/>
<jsp:param name="info" value="teacher"/>
</jsp:forward>
</body>
</html></span>
















郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。