JSP学习一

    xiaoxiao2021-03-26  18

    一、JSP页面组成

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

    例如:

    <%@ page language="java" contentType="text/html;charset=GB18030" pageEncoding="GB18030"%> <%@ page import="java.util.Date" %> <%@ page import="java.text.SimpleDateFormat" %> <html> <head> <meta http-equiv="Content-Type" content="text/html;charset=GB18030"> <title>我的第一个jsp页面</title> </head> <body> <% Date date=new Date(); SimpleDateFormat df=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); String today=df.format(date); %> 当前时间:<%=today %> <!-- 输出系统时间 --> </body> </html>

    二、指令标识

    指令标识主要用于设定整个JSP页面范围内都有效的相关信息,它是被服务器解释并执行的,不会产生任何内容输出到网页中,对客户端浏览器是不可见的,JSP指令标识的语法格式:<%@ 指令名 属性1="属性值1" 属性2="属性2的值"  ... %>

    说明:

    1.指令名:用于指定指令的名称,JSP包含3条指令:page,include,taglib

    2.各属性间可用逗号或空格分隔

    3. <%@ %>是完整的标记,不能添加空格

    2.1 page指令

    JSP页面中最常用的命令,用于定义整个JSP页面的相关属性,这些属性在JSP被服务器解析成Servlet时会转换为响应的Java程序代码。page指令的语法格式如下:

    <%@ page atr1="value1" att2="value2" ... %>

    page指令包含15个属性:language,extends,import,...

    2.2 include指令

    通过该指令可以在一个JSP页面中包含另一个JSP页面,不过该指令是静态包含(被包含文件中的所有内容会被原样包含到该JSP页面中,所以在被包含文件和包含文件中不能含有相同名称的变量),语法格式如下:

    <%@ include file="path"%>只有一个file属性,指定要包含的文件路径。

    例如:

    <%@ page language="java" contentType="text/html; charset=GB18030" pageEncoding="GB18030"%> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=GB18030"> <title>使用文件包含include指令</title> </head> <body style="margin:0px;"> <%@ include file="copyright.jsp" %> </body> </html>

    2.3 taglib指令

    声明该页面中所使用的标签库,同时引用标签库,并指定标签的前缀。在页面中引用标签库后,就可以通过前缀来引用标签库中的标签。指令语法格式如下:

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

    prefix:指定标签的前缀

    url:指定标签库文件的存放位置

    三、脚本标识

    脚本标识能够很方便、灵活的生成页面中的动态内容,包括3部分:JSP表达式,声明标识和脚本程序。

    3.1  JSP表达式

    用于向页面中输出信息,其语法格式为:

    <%= 表达式%>

    说明:

    1.%和=之间不可以有空格,=与其后边的表达式之间可以有空格

    2.表达式可以是任何java语言的完整表达式。该表达式的最终运算结果将被转换为字符串。

    例如:

    <%@ page language="java" contentType="text/html; charset=GB18030" pageEncoding="GB18030"%> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=GB18030"> <title>JSP表达式</title> </head> <body> <%String manager="mr"; %> 管理员:<%=manager %> <%="管理员:"+manager %> <%=5+6 %> <%String url="my.jpg"; %> <img src="imag/<%=url %>"> </body> </html>

    3.2 声明标识

    用于定义全局的变量或方法。语法格式如下:

    <%! 声明变量或方法的代码 %>

    <%@ page language="java" contentType="text/html; charset=GB18030" pageEncoding="GB18030"%> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=GB18030"> <title>JSP声明标识</title> </head> <body> <%! int number=0; int count(){ number++; return number; } %> 刷新次数:<%=count() %> </body> </html>

    3.3 代码片段

    在JSP页面中嵌入的Java代码或是脚本代码。语法格式:

    <% Java代码或是脚本代码 %>

    说明:

    声明标识声明周期:从创建开始到服务器关闭结束;

    代码片段声明周期:创建开始到页面关闭后;二者有效范围均为当前JSP页面

    例如:

    <%@ page language="java" contentType="text/html; charset=GB18030" pageEncoding="GB18030"%> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=GB18030"> <title>JSP代码片段</title> </head> <body> <% String str=""; for(int i=1;i<=9;i++){ for(int j=1;j<=i;j++){ str+=j+"*"+i+"="+j*i; str+=" "; } str+="<br>"; } %> <table > <tr> <td height="30" align="center">九九乘法表</td> </tr> <tr> <td style="padding:3pt"> <%=str %> </td> </tr> </table> </body> </html>

    3.4 JSP注释

    1. 单行注释://

    2. 多号注释:/*  */

    3.提示文档注释:/** */

    4. 隐藏注释:<%--  注释内容 --%>

    5. 动态注释:<!-- 动态注释 -->

    3.5 动作标识

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

    被包含的文件可以是动态文件,也可以是静态文件。语法格式如下:

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

    或:

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

    子动作标识<jsp:param> </jsp:include>

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

    将请求转发到其他web资源。语法格式如下:

    <jsp:forward page="url"  />

    或:

    <jsp:forward page="url"  >

    子动作标识<jsp:param>

    </jsp:forward>

    例如:

    <%@ page language="java" contentType="text/html; charset=GB18030" pageEncoding="GB18030"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=GB18030"> <title>中转页</title> </head> <body> <jsp:forward page="login.jsp" /> </body> </html>

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

    可作为其它标识的字标识,用于为其他标识传递参数。语法格式为:

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

    如下列代码实现在请求转发到modify.jsp页面的同时,传递了参数userId,其参数值为7:

    <jsp:forward page="modify.jsp"> <jsp:param name="userId" value="7" /> </jsp:forward>

    转载请注明原文地址: https://ju.6miu.com/read-658705.html

    最新回复(0)