#笔记#圣思园 JavaWeb 第12讲——JSP基础知识、语法、内置对象、表单、客户机交互

来源:互联网 发布:软件图标素材下载 编辑:程序博客网 时间:2024/05/17 22:52

1.Java Server Pages(Java服务器端页面)

所有的操作都在 服务器 端执行

JSP执行流程:

jsp parser:jsp解析器——是tomcat提供的,它把jsp转化为java文件,这个java文件是Servlet。

如果是修改或创建后第一次调用,那么jsp parser将其编译成servlet程序,在编译成class文件,然后执行class文件。如果不是第一次调用,则直接执行class文件

2.JSP代码中包含了JSP元素和Template(模板)data两类

JSP元素指:JSP引擎直接处理的部分,这部分必须符合Java语法

Template data指:JSP引擎不处理的部分,即标记<%   %>以外的部分

3.JSP语法分为三种不同类型:

编译器指令(Directive):<%@  page import = "java.io.* "  %>

脚本语法(Scripting):<%  Java代码  %>

动作语法(Action):<jsp:forward> , <jsp:getProperty> , <jsp:include>

4.脚本语法

脚本语法包括:

(1)HTML注释:<!--    注释     -->(查看页面源代码时,能看到这段注释,客户端能看到)

(2)JSP注释、隐藏注释:<%--     注释     --%>(查看页面源代码时,不能看到这段注释,JSP注释不会发送给客户端)

(3)声明:<%!     声明      %>

(4)表达式:<%=     %>

(5)脚本段:<%    Java代码     %>

声明和脚本段的差别:

原因在于:当服务器将JSP转化为Servlet时,会将JSP中的 声明 转化为类的成员变量;而将 脚本段 转化为方法中的局部变量

而Servlet又是单实例的,这样,成员变量的值只有一个,每个用户都会访问到它,而脚本段中的值则是局部变量,每个用户访问时,各有一份,互不影响

5.编译器指令<%@       %>

编译器指令包括:

(1)包含指令include:向当前页中插入一个静态文件的内容

格式:

<%@ include file = "relativeURL" %> 或 <%@ include file = ""%>

(2)页指令page:用于定义JSP文件中的全局属性,作用于整个JSP页面,包括静态的包含文件,但是不能作用于动态的包含文件,如“<jsp : include>”

注意import属性

(3)taglib指令:标签库指令,用于引入定制标签库

6.动作语法

(1)<jsp : forward>   

表示:当页面执行到<jsp : forward>指令时,会转到另外一个页面,起到转向的作用。在该指令后面的所有代码都没有机会执行了,因为页面的流程已经转向了另外一个页面

属性:page属性——用于说明将要定向的文件或URL

(2)<jsp : param>

表示:想一个动态文件发送一个或多个参数

属性:name、value

程序示例:

forward.jsp


forwardTo.jsp(目标页面)


运行结果:

(3)<jsp : include>

表示:包含一个静态或动态文件,可向被包含页面传递参数

0 0
原创粉丝点击