jsp jsp常用指令
jsp指令是为jsp引擎设计的,他们并不直接产生任何可见输出,而只是告诉引擎如何处理jsp页面中的其余部分。
jsp中的指令
page指令
include指令
taglib指令
jsp指令的基本语法 格式:<%@ 指令 属性名="值" %>
<%@page contextType="text/html;charset=gb2312" %> 如果指令中有多个属性,这多个属性可以写在一个指令中,也可以分开
<%@page contentType="text/html; charset=gb2312"%>
<%@page import="java.util.Date"%>
也可以这样写
<%@page contentType="text/html;charset=gb2312" import="java.util.Date"%>
page指令
page指令用于定义jsp页面中的各种属性,无论page指令出现在jsp页面中什么地方,它作用的都是整个jsp页面,最好还是放在jsp的起始位置
page指令的属性
<%@ page
[ language="java" ]
[ extends="package.class" ]
[ import="{package.class | package.*}, ..." ]
[ session="true | false" ]
[ buffer="none | 8kb | sizekb" ]
[ autoFlush="true | false" ]
[ isThreadSafe="true | false" ]
[ info="text" ]
[ errorPage="relative_url" ]
[ isErrorPage="true | false" ]
[ contentType="mimeType [ ;charset=characterSet ]" | "text/html ; charset=ISO-8859-1" ]
[ pageEncoding="characterSet | ISO-8859-1" ]
[ isELIgnored="true | false" ]
%>
import属性
jsp页面中会自动的导入下面的包 java.lang.*;javax.servlet.*;javax.servlet.jsp.*; javax.servlet.http.*;
可以在一条page指令中引入多个类或包,其中的每个包或类之间使用逗号(,)分割
<%@ page import="java.util.*,java.io.*"%>
也可以使用多条page指令的import属性来分别进入各个包或类
<%@ page import="java.io.*" %>
<%@ page import="java.sql.*"%>
errorPage属性
errorpage属性的设置值,必须使用相对路径,如果以"/"开头,表示相对于当前的web应用程序的根目录(注意不是站点目录)
否则表示相对于当前页面。
error-page 元素有3个子元素<error-code> <exception-type> <location>
error-code 子元素指定错误的状态码,例如<error-code> 404</error-code>
exception-type 子元素指定异常类的完全限定名<exception-type>java.lang.ArithmeticException</exception-type>
location 子元素指定以"/"开头的错误处理页面的路径<location>/ErrorPage/404.jsp</errorPage>
<%@page language="java" import="java.util.*" pageEncoding="utf-8" errorPage="/error/404.jsp"%>
<html>
<head>
<title>错误信息友好提示!</title>
</head>
<body>
对不起,出错了,请联系管理员解决!
</body>
</html>
在web.xml使用<error-page>标签为整个web应用设置错误处理页面
<web-app version="3.0"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
<display-name></display-name>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<!--针对404错误处理页面-->
<error-page>
<error-code>404</error-code>
<location>/error/404.jsp</location>
</error-page>
</web-app>
isErrorPage属性
该属性显示的声明页面是错误页面
如果某一个jsp页面作为系统错误处理页面,那么建议将page指令的isErrorPage属性(默认为false)设置为ture,来显示的声明这个jsp页面是一个错误处理页面
如果没有设置isErrorPage=true。那么jsp页面中就无法使用exception对象,因为在Servlet的_jspServlet方法中不会声明一个exception对象
<%@ page language="java" import="java.util.*" pageEncoding="utf-8" isErrorPage="true"%>
<html>
<body>
对不起出错了!
异常信息如下:<%= exception.getMessage()%>
<!--语句exception.getMessage()后面没有";"-->
</body>
</html>
include指令
include指令有两种形式:
@include指令
<jsp:include>指令
@inclide指令
@include可以包含任意文件,当然,只是把文件的内容包含进来。include指令用于引入其他jsp页面,如果include指令引入了其他的jsp页面,那么jsp引擎将把这两个JSP翻译成一个servlet.所以include指令引入通常也被称之为静态引入
include指令语法
<%@ include file="relativeURL"%> 其中file属性用于指定被引入文件的路径。路径"/"开头,表示代表当前web应用。
include 指令细节注意问题:
被引入的文件必须遵循jsp语法
被引入的文件可以使用任意扩展名。即使其扩展名是html,jsp引擎也会按照处理jsp页面的方式处理它里面的内容,为了见明知意,jsp规范建议使用jspf
由于使用include指令将会涉及2个jsp页面,并会把2个jsp翻译成一个servlet,所以这2个jsp页面的指令不能冲突。
include指令使用范例
head.jspf
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<h1 style="color:red;">网页头部</h1>
foot.jspf
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<h1 style="color:blue;">网页尾部</h1>
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>jsp的Include指令测试</title>
</head>
<body>
<%--使用include标签引入引入其它JSP页面--%>
<%@include file="/jspfragments/head.jspf" %>
<h1>网页主体内容</h1>
<%@include file="/jspfragments/foot.jspf" %>
</body>
</html>
@include指令
使用@include可以包含任意的内容,文件的后缀是什么都无所谓。这种把别的文件包含到自身页面的@include语句就叫做静态包含,作用只是把别的页面内容包含进来,属于静态包含。
jsp:include
jsp:include 指令为动态包含,如果被包含的页面是jsp,则先处理之后再将结果包含,而如果包含的是非*.jsp文件,则只是把文件内容静态包含进来。
jsp:taglib 指令
使用<%@ taglib uri="标签库的uri" prefix="标签的使用前缀"%>指令引入要使用的标签库。
jsp jsp常用指令的更多相关文章
- jsp的常用指令有哪些(编译指令/动作指令整理)
jsp的常用指令有哪些(编译指令/动作指令整理) JSP动作指令 JSP - JSP中的脚本.指令.动作和注释
- JSP的常用指令有哪些?
<% @ page %> <% @ include %> <% @ taglib %>
- 牛客网Java刷题知识点之什么是JSP的3大常用指令、JSP的6大哪些动作、JSP中include指令和include动作有什么区别
不多说,直接上干货! JSP的3大常用指令 包含指令(Include directive):用来包含文件和合并文件内容到当前的页面. 页面指令(Page directive):用来定义JSP页面中特定 ...
- jsp常用指令
Jsp包含三个编译指令和七个动作指令. 三个编译指令为:page.include.taglib. 七个动作指令为:jsp:forward.jsp:param.jsp:include.jsp:plugi ...
- 浅谈JSP中include指令与include动作标识的区别
JSP中主要包含三大指令,分别是page,include,taglib.本篇主要提及include指令. include指令使用格式:<%@ include file="文件的绝对路径 ...
- Jsp语法、指令及动作元素
一.JSP的语法 1.JSP的模板元素:(先写HTML) 就是JSP中的那些HTML标记 作用:页面布局和美化 2.JSP的Java脚本表达式: 作用:输出数据到页面上 语法:<%=表达式%&g ...
- jsp七大动作指令
jsp 七大动作指令 1) jsp:include 指令 用于在请求处理阶段包含来自一个Servlet或jsp页面的响应.和编译指令中的include不同,include只能用于包含静态页面,而jsp ...
- JSP JSP工作原理 JSP语法 JSP声明 JSP注释 JSP指令 jsp九大隐式/内置对象
1 什么是JSP 1)为什么说,Servlet是一个动态Web开发技术呢? Servlet是基于服务端的一种动态交互技术, HttpServletRequest表示客户端到服务端的 ...
- JSP中三大指令
JSP指令概述 JSP指令的格式:<%@指令名 attr1=”” attr2=”” %>,一般都会把JSP指令放到JSP文件的最上方,但这不是必须的. JSP中的指令共有三个:page. ...
随机推荐
- VC++ 进度条更新方案
在实际开发中,如果有耗时操作,一般会在工作线程处理数据,然后处理完成后把时间传递到UI线程进行显示,切记不要在工作线程对UI进行操作. 场景: 1. 很多程序需要根据处理业务的进度来更新进度条,进度条 ...
- Duilib初级控件扩展一例: 具有鼠标滚动消息的OptionUI
转载:http://www.cnblogs.com/memset/p/Duilib_MouseWheelOptionUI_Deprecated.html
- 奇怪的问题:改变了界面,生成的exe不起作用
现象:修改ui界面的控件,如改变text,生成exe没有改变,清理.重新创建也没有作用 原因:ui.h没有被更新,每次软件生成的时候都是调用的旧的文件 解决:先将debug和release文件夹删除, ...
- Go第十篇之反射
反射是指在程序运行期对程序本身进行访问和修改的能力.程序在编译时,变量被转换为内存地址,变量名不会被编译器写入到可执行部分.在运行程序时,程序无法获取自身的信息. 支持反射的语言可以在程序编译期将变量 ...
- vim的个性化配置- 再谈vim的折叠和展开 -- 彻底掌握vim 的展开和折叠!
http://www.wklken.me/posts/2016/02/03/some-vim-configs.html 一般把 设置成 逗号, 是比较好的, 因为逗号比默认的leader 要方便键入 ...
- C++ 实验2:函数重载、函数模板、简单类的定义和实现
1.函数重载编程 编写重载函数add(),实现对int型,double型,Complex型数据的加法.在main()函数中定义不同类型数据,调用测试. #include <iostream> ...
- MYSQL语句:创建、授权、查询、修改、统计分析等 一 用户的创建、权限设置、删除等
MYSQL语句:创建.授权.查询.修改.统计分析.. 一.用户的创建.权限设置.删除等 1.首先链接MySQL操作 连接格式:mysql -h 主机地址 -u 用户名 -p 用户密码 (注-u与roo ...
- faster-rcnn 论文讲解
Faster RCN已经将特征抽取(feature extraction),proposal提取,bounding box regression(rect refine),classification ...
- MySql 插入数据返回数据的Id值
insert into addeditemgroup(addeditemgroupname) value(') ; select @@IDENTITY as id; 返回最新的Id:
- Jmeter 之 ServerAgent 在性能测试的时候通过插件监听数据库状态
https://jmeter-plugins.org/downloads/old/ 下载几个jar包,导入到Jmeter对应到目录下/lib/ext文件夹下,注意只支持Jmeter3.2(不含)以下版 ...