欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

JSP 基础知识

程序员文章站 2022-06-01 22:21:35
...
<!-- 以下为指令标识区域 -->
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ page import="java.util.Date"%>
<%@ page import="java.text.SimpleDateFormat" %>
<%@ page import="java.util.Scanner" %>
<!-- 以下为HTML代码 -->
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
	<title>模拟服务器与浏览器的一次简单交互</title>
</head>
<body>
	<!--  以下为嵌入的java语句 -->
	<%
		Date date = new Date(); // 获取当前时间戳
		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); // 时间日期格式
		String today = sdf.format(date);
		Scanner input = new Scanner(System.in);
		System.out.println("浏览器需要你的名字:");
		String name = input.nextLine();
		System.out.println("浏览器需要你的性别:");
		String sex = input.nextLine();
		System.out.println("浏览器需要你的年龄:");
		int age = input.nextInt();
		input.close();
	%>
	当日时间:<%= today%>
	<br>
	服务器的名字:<%= name %>
	<br>
	服务器的性别:<%= sex %>
	<br>
	服务器的年龄:<%= age %>
</body>
</html>

JSP 基础知识
JSP指令标识的语法如下:

<%@ 指令名 属性 1="属性值 1" 属性 2="属性值 2"...%>
指令名:用于指定指令名称。
属性:用于指定属性名称,不同的指令包含不同的属性。
属性值:用于指定属性值。

指令标识

page指令

<%@ page attr1="value1" attr2="value2" ...%>

常用属性有15个:

language属性

设置JSP页面语言属性

<!-- 例如设置为java语言 -->
<%@ page language="java"%>
extends属性

该属性设置JSP页面继承的Java类

import属性

在JSP中导入类包

<!-- 导入Scanner包 -->
<%@ page import="java.util.Scanner"%>
pageEccoding属性

定义JSP页面的编码格式,即指定文件编码

<!-- 指定为UTF-8编码格式 -->
<%@ page pageEccoding="UTF-8"%>
contentType属性

用于设置JSP页面的MIME类型和字符编码

<!-- 设置JSP页面的MIME类型和字符编码为UTF-8 -->
<%@ page contentType="text/html; charset=UTF-8"%>
session属性

指定JSP页面是否使用HTTP的的session会话对象

<!-- 设置JSP页面不使用HTTP会话对象 -->
<%@ page session="false"%>
buffer属性

用于设置JSP的out输出对象使用的缓存区的大小,默认大小为8kb,且单位只使用kb。

<!-- 设置JSP页面out输出对象的使用缓冲大小为128kb -->
<%@ page buffer="128kb"%>
autoFlush属性

用于设置当JSP页面缓存满时,是否自动刷新缓存,默认值为true

<!-- 设置JSP页面取消自动刷新缓存 -->
<%@ page autoFlush="false"%>
isErrorPage属性

该属性可以将当前的JSP页面设置成错误处理页面来处理另一个JSP页面的错误

<!-- 设置当前JSP页面为错误处理页面 -->
<%@ page autoFlush="true"%>
errorPage属性

用于指定处理当前JSP页面异常错误的另一个JSP页面,指定的JSP错误处理页面必须设置isErrorPage属性为true

<!-- 设置处理JSP页面异常错误的页面 -->
<%@ page errorPage="error/aErrorPage.jsp"%>

include指令

该指令可以在一个JSP页面中包含另一个JSP页面,但是该指令是静态包含,即相当于一个JSP页面嵌入另一个JSP页面中,因此不能有相同名称的变量。

其语法如下:

<%@ include file="path/test.jsp"%>

taglib指令

声明该页面中所使用的标签库,同时引用标签库,并指定标签的前缀

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

脚本标识

JSP表达式

JSP表达式用于向页面中输出信息,其不仅可以插入网页的文本中,用于输出内容,也可以插入HTML标签中设置属性值

<%= 表达式%>

声明标识

用于在JSP页面中定义全局的变量或方法

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

举例:

<%! 
   int number = 0;
   int getSum(){
   	number++;
   	return number;
   }
%>
<!-- <%= getSum()>每次刷新页面都会使number+1 -->

代码片段

所谓代码片段就是JSP页面中嵌入的Java代码或者脚本代码

<% 嵌入的java代码或者脚本代码 %>

举例:

<!-- 以下为指令标识区域 -->
<%@ page language="java" contentType="text/html; charset=UTF-8"
   pageEncoding="UTF-8"%>
<!-- 以下为HTML代码 -->
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
   <title>九九乘法表</title>
</head>
<body>
   <!--  以下为嵌入的java语句 -->
   <%! 
   	String getTable(){
   		String str = "";
   		for(int i = 1 ; i<10; i ++){
   			for(int j = 1  ; j<=i ; j++){
   				str += j+"*"+i+"=" +i*j;
   				str += "&nbsp;";
   			}
   			str += "<br>";
   		}
   		return str;
   }
   %>
   <table border="1" style=“font:9px”>
   	<tr><td height = "30" align="center">九九乘法表</td></tr>
   	<tr><td><%= getTable() %></td></tr>
   </table>
</body>
</html>

JSP 基础知识

JSP注释

HTML 注释

<!-- 这里为注释内容 -->

带有JSP表达式的注释

//单行注释内容

/*
   多行注释内容
*/

/**
* 文档注释
*/

隐藏注释

浏览器中通过源码也无法显示的注释

<%-- 注释内容 -->

动作标识

包含文件标识<jsp:include>

JSP的动作标识<jsp:include>用于向当前页面中包含其它文件,被包含的文件可以是静态文件或者动态文件

<jsp:include page="url" flush="false|true"/>
或者
<jsp:include page="url" flush="false|true">
   子动作标识符<jsp:param>
</jsp:include>

请求转发标识<jsp:forward>

可以将请求转发到其它的Web资源,可以是另一个JSP文件、HTML页面、Serlet等

<jsp:forward page="url">
或者
<jsp:forward page="url">
   <jsp:param>
</jsp:forward>

请求转发标识<jsp:param>

作为其它标识符的子标识符,用于为其它标识传递参数

<jsp:param name="参数名" value="参数值">
相关标签: jsp