JSP语法

JSP是基于Java语言的动态网页技术。当浏览器向Web应用服务器请求一个JSP页面时,Web应用服务器将其转换为一个Servlet文件(即一个.java文件),然后将这个Java文件编译成一个字节码文件(即一个.class文件),最后Web应用服务器加载转换后的Servlet实例,处理客户端的请求,并返回HTML格式的页面给客户端浏览器。

JSP中包含了page、include、taglib 3个指令标示。

page指令提供了language、contentType、pageEncoding、import、autoFlush、buffer、errorPage、extends、info、isELIgnored、isErrorPage、isThreadSafe和session共13个属性。通常情况下,pageEncoding属性和contentType属性会同事存在。pageEndoding属性的作用是指定JSP页面的编码格式,如果将他的值设置为ISO-8859-1,那么该页面中不能编写中文信息,否则会出现乱码。而contentType属性的作用是指定服务器处理请求完成后,回应给浏览器的内容类型,比如其值设置为text/html; charset=UTF-8,就说明回应的页面时HTML文档或文本内容,其字符集为UTF-8。 

下面给出page指令的属性使用示例:

<%@ page language="java"%>
<%@ page contentType="text/html; charset=UTF-8"%>
<%@ page pageEncoding="UTF-8"%>
<%@ page import="java.util.Date"%>
<%@ page buffer="16kb"%>默认是8kb
<%@ page autoFlush="false"%>默认是true
<%@ page isErrorPage="true"%>默认是false,当JSP页面指定了该属性的时候,通过<%exception.getMessage()%>即可输出errorPage页面传递过来的异常信息。
<%@ page errorPage="error.jsp"%>定义某个出错的页面。

include指令是静态包含,也就是说被包含文件中所有内容会被原样包含到该JSP页面中。即使被包含的文件中有JSP代码,在包含时也不会被编译执行而是将两个页面组合成一个页面后,再进行编译处理,最后返回结果页面,使用该标签的地方一般是在页面顶部和页面底部。下面给出include指令的属性使用示例:

<%@ include file="includeFile.jsp"%>

taglib指令标识用于声明一个标签的引用,在JSP页面之中声明了哪个标签库的引用,就可以在JSP页面中调用哪个标签。taglib指令的语法格式如下:

<%@ taglib prefix="c" uri="htp://java.sun.com/jsp/jstl/core" %>

JSP脚本:包括JSP中应用的代码片段<% %>,JSP表达式<%=%>,声明标识的使用<%! %>。注:由于使用声明标识声明的变量是全局的,所以在多个用户并发访问的时候会产生线程安全的问题,此种方式应用很少。

HTML注释用<!--   HTML代码   -->,JSP注释用<%--  JSP标签代码  --%> ,<%%>java代码片段的注释用// 、  /***/

常用的JSP动作标识<jsp:include>

<jsp:include>动作标识用于包含其他页面,被包含的页面可以是动态页面,也可以是静态页面。包含的原理是将被包含的页面先编译处理后,再将其结果包含在页面中。该动作标识的语法格式如下:

<jsp:include page="url" flush="true"></jsp:include> 其中flush属性默认是false

<%@ include file="url"%>和<jsp:include>的区别:

<%@ include file="url"%>指令通过file属性指定被包含的文件,并且file属性不支持任何的表达式;<jsp:include>动作标识通过page属性指定被包含的文件,而且page属性支持JSP表达式。<%@ include file="url"%>指令只能先包含再编译,会有父子页面变量名字冲突的可能性。<jsp:include>动作标识则是先编译后包含,就算父子页面存在同名的变量也不会受到影响。


动作标识<jsp:forward>,用于将当前请求转发到其他的web资源(HTML、JSP页面、Servlet等)。在执行转发之后,当前页面将不会再被执行,而是去执行该标识指定的目标页面。语法格式如下:

<jsp:forward page="url"></jsp:forward>

动作标识<jsp:param>,用于作为其他标识的子标识,用于为其他标识传递参数。语法格式如下:

<jsp:param name="" value="" />其功能与文件名后面直接加“?参数名=参数值”相同。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值