JSP/Servlet
1 2 3 4 5 概念 语法 内置对象 Servlet JavaBean 组件
1 概念
JSP(JavaServer Pages)是一种在服务器端运行的页面脚本,它是由 Sun Microsystems 公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP 页面是由传统的 HTML 文件中加入 Java 程序片段 (Scriptlet)和 JSP 标记(Tag)构成。在 JSP 页面中,HTML 代码主 要负责描述信息的显示样式,而程序代码则用来描述处理逻辑,生成页面动态内容,它由语 言引擎(JVM)解释执行。 需要注意的是所有的 JSP 文件都会被编译成 Servlet, 即.class 文件, 然后由虚拟机 (JVM) 执行。
2 语法 2.1 基本语法
//Hello.jsp <%!String str="This is my first jsp!"; %>
<%=str%>
<% String msg = "Hello World!"; for(int i=0;i<3;i++) { out.println(msg); out.println("
"); } %>
(1)HTML 注释:在客户端显示一个注释,也就是可以在浏览器的“查看
源代码”中看到的 注释。 ?语法 (2)声明:声明你将要在 JSP 程序中用到的变量和方法。你可以一次性声明多个变量和方 法,只要以";"结尾就行,当然这些声明在 Java 中要是合法的。 ?JSP 语法 <%! declaration; [ declaration; ] ... %> (3)表达式:表达式元素是在
Java 语言中合法的表达式,在运行后被自动转化为字符串, 然后插入到这个表达式在 JSP 文件的位置显示。因为这个表达式的值已经被转化为字符串, 所以你能在一行文本中插入这个表达式。 ?JSP 语法 <% = expression %> (4)Scriptlet(程序段) :包含一个有效的
程序段,一个 scriptlet 能够包含多个 jsp 语 句,方法,变量,表达式。 ?JSP 语法 <% code fragment %>
2.2 Page 指令
// page.jsp <%@page language="java" import="java.util.*" contentType="text/html;charset=gb2312"%> <%!Date currentDate;%> <% currentDate=new Date(); currentDate.toLocaleString() ; out.println("当前时间是:"); out.println(currentDate); %> 定义 JSP 文件中的全局属性。
?JSP 语法 <%@ page [ language="java" ] [ import="{package.class | package.*}, ..." ] [ session="true | false" ] [ errorPage="relativeURL" ] [ contentType="mimeType [ ;charset=characterSet ]" ] [ isErrorPage="true | false" ] %> ?属性 language="java" 声明脚本语言的种类,暂时只能用"java" import="{package.class | package.* }, ..." 需要导入的 Java 包的
列表,这些包就作用于程序段,表达式,以及声明 session="true | false" 设定客户是否需要 HTTP Session.(学过 ASP 的人,应该对它不陌生)如果它为 true, 那么 Session 是有用的。 如果它有 false,那么你就不能使用 session 对象,以及定义了 scope=s
ession 的
xml:namespace prefix = jsp />
元素。缺省值是 true. errorPage="relativeURL" 设置处理异常事件的 JSP 文件。 isErrorPage="true | false" 设置此页是否为出错页,如果被设置为 true,你就能使用 exception 对象. contentType="mimeType [ ;charset=characterSet ]" 设置 MIME 类型 。缺省 MIME 类型是: text/html, 缺省字符集为 ISO-8859-1. ?描述 <%@ page %>指令作用于整个 JSP 页面,你可以在一个页面中用上多个<% @ page %>指 令,但是其中的属性只能用一次,不过也有个例外,那就是 import 属性。因为 import 属性和 Java 中的 import 语句差不多,所以你就能多用此属性几次了。无论你把<% @ page %>指令放在 JSP 的文件的哪个地方,它的作用范围都是整个 JSP 页面。不过,为 了 JSP 程序的可读性,以及好的编程习惯,最好还是把它放在 JSP 文件的顶部.
2.3 Include 指令
在 JSP 中包含一个静态的文件,同时解析这个文件中的 JSP 语句。 ?JSP 语法 <%@ include file="relativeURL" %> ?描述:
<%@include %>指令将会在 JSP 编译时插入一个包含文本或代码的文件,而且这个包含 的过程就当是静态的。 静态的包含就是指这个被包含的文件将会被插入到