<%! int count = 0%>
<%! 声明变量或方法 %>
声明全局变量,服务器执行JSP页面时,会先将JSP页面转换为Servlet类,在声明标识中声明的变量会成为该类的数据域和实例方法.
如:
主要代码:
<%!
int number = 0;
int count() {
number++;
return number;
}
%>
完整代码:(查看多次刷新的效果)
%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>jsp</title>
</head>
<body>
<%! int count = 0; %>
<% count++; %>
Welcome! You are visitor number
<%= count %>
</body>
</html>
<%= 表达式 %>
用于向页面输出信息
表达式可以是任何合法的Java语言表达式,该表达式的运算结果转换为字符串。
JSP表达式不仅可以插入到页面文本,还可以插入HTML标记,用于动态设置属性值。
page指令:设置当前JSP页面的属性
语法:<%@ page 属性1=“属性值1” 属性2=“属性值2” … %>
常用属性
pageEncoding,设置当前页面的文本编码格式,如:gbk,utf-8等
import,导入页面使用的Java类或类包
不常用属性
language,页面使用的编程语言,当前只支持Java,且为默认值
extends,指定页面继承的父类,有默认值,通常不修改
contextType,指定JSP页面使用的MINE类型和编码
session,决定页面是否使用session,值为true(默认)/false
buffer,设置out对象使用的缓冲区大小,默认8K
autoFlush,缓冲区满时是否自动输出到客户端,值为true(默认)/false
isErrorPage,errorPage,配合指定异常处理页面,少使用
include指令:静态方式将被包含的文本文件的内容导入到当前页面
语法:<%@ include file=“文件名” %>