Jsp页面元素构成
静态内容 指令 表达式 小脚本 声明 注释
Jsp指令
page指令 通常位于jsp页面的顶端,同一个页面可以有多个page指令
include指令 将一个外部文件嵌入到当前JSP文件中,同时解析这个页面中的JSP语句
taglib指令 使用标签库定义新的自定义标签,在JSP页面中启用定制行为
page指令语法:
<%@ page 属性1=“属性值” 属性2=“属性值” 属性3=“属性值” 属性4=“属性值”%>
属性 描述 默认值
language 指定JSP页面使用的脚本语言 Java
import 通过该属性来饮用脚本语言中使用到的类文件 无
contentType 用来指定JSP页面所采用的编码方式 text/html ISO-8859-1
Jsp注释
在JSP页面的主食
html的注释 <!--html注释--> //客户端可见
JSP的注释 <%--html注释--%> //客户端不可见
JSP脚本注释 // /**/ //客户算不可见
Jsp脚本
在JSP页面中执行的Java代码。
语法:
<% %>
Jsp表达式
在Jsp页面中执行的表达式
语法:
<%=表达式 %> //注意:表达式不以分号结束
Jsp页面生命周期
jspService()方法被调用来处理客户端的 请求。对每一个请求,jsp引擎创建一个新的线程来处理该请求。如果有多个客户端同时请求该Jsp文件,则jsp引擎会创建多个线程。
每个客户端请求对应一个线程。以多线程方式执行可以大大降低对系统的资源需求,提高系统的并发量及响应时间。但也要注意多线程的编程带来的同步问题,由于该Servlet始终驻于内存,所以相应是非常快的。
实例
1.使用表达式打印九九乘法表
<%@ 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.text.*" %>
<!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=UTF-8">
<title>Insert title here</title>
</head>
<body>
<%!
String mul()
{
String s="";
for(int i=1;i<=9;i++)
{
for(int j=1;j<=i;j++)
{
s+=i+"*"+j+"="+(i*j)+" ";
}
s+="<br>";
}
return s;
}
%>
<h1>九九乘法表</h1>
<hr>
<%=mul() %>
</body>
</html>
2.使用脚本方式打印九九乘法表
<%@ 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.text.*" %>
<!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=UTF-8">
<title>Insert title here</title>
</head>
<body>
<%!
//Jsp 内置out对象,使用脚本方式调用,打印九九乘法表
void mul1(JspWriter out) throws Exception
{
for(int i=1;i<=9;i++)
{
for(int j=1;j<=i;j++)
{
out.println(i+"*"+j+"="+(i*j)+" ");
}
out.println("<br>");
}
}
%>
<h1>九九乘法表</h1>
<hr>
<% mul1(out);%>
</body>
</html>