JSP指令与动作
JSP基本指令
jsp命令指令用来设置与整个jsp页面相关的属性,它并不直接产生任何可见的输出,而只是告诉引擎如何处理其余JSP页面。其一般语法形式为: <%@ 指令名称 属性=“值”%>
三种命令指令分别是page、include、taglib。
一、page指令
功能:设定整个JSP网页的静态属性。
语法:<%@ page 标签元素=“值”%>,比如 <%@ page language=“java”%>
标签元素:language、import、contentType、session、errorPage、isErrorPage等等。
1、language
language="language" 指定JSP Container要用什么语言来编译JSP网页。目前只可以使用Java语言,不过不排除增加其它语言。默认值为Java。比如 <%@ page language=“java”%>
2、import
import="importList" 定义此JSP页面可以使用哪些Java API。用逗号分隔列出一个或多个全质类名。此列表用于在生成的java servlet中创建相应的导入语句。以下包是自动包含的,不必被指出:java.lang.*;java.servlet.*;java.servlet.jsp.*;java.servlet.htt.* 比如<%@ page import="java.util.*"%>
3、contentType
contentType="ctinfo" 表示将在生成servlet中使用的MIME类型和可选字符解码。比如<%@ pagecontentType="text/html;charset=GBK"%>
4、session
session="true|false" 指明JSP页面是否需要一个HTTP会话,如果为true,那么产生的servlet将包含创建一个HTTP会话(或访问一个HTTP会话)的代码,缺省为true。
5、errorPage
errorPage="error_url" 表示如果发生异常错误,网页会被重新指向一个URL页面。错误页面必须在其page指令元素中指定isErrorPage="true"
6、isErrorPage
isErrorPage="true|false" 如果此页面被用作处理异常错误的页面,则为true。在这种情况下,页面可被指定为另一页面page指令元素中errorPage属性的取值。指定此属性为true将使exception隐含变量对此页面可用。缺省值为false。
×××××实例1,显示当前系统设计××××
1、在记事本中输入如下代码:
<%@ page language="java" contentType="text/html;charset=GBK"%>
<%@ page import="java.util.*"%>
<%
Date dnow = new Date();
int dhours = dnow.getHours();
int dminutes = dnow.getMinutes();
int dseconds = dnow.getSeconds();
out.print("服务器时间:" + dhours + ":" + dminutes + ":" + dseconds);
%>
<SCRIPT LANGUAGE="JavaScript">
var dnow = new Date();
dhours = dnow.getHours();
dminutes = dnow.getMinutes();
dseconds = dnow.getSeconds();
document.write("<br>浏览器时间:" + dhours + ":" + dminutes + ":" + dseconds);
</SCRIPT>
2、保存为page.jsp,在tomcat安装目录的webapps目录下新建02文件夹,再在02下新建1文件夹,
把page.jsp放在1文件夹下。
3、在记事本中输入如下代码:
<?xml version="1.0" encoding="UTF-8"?>
<web-app id="WebApp_9" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-
app_2_4.xsd">
</web-app>
4、保存为web.xml,在02文件夹下新建WEB-INF文件夹,把web.xml放在WEB-INF文件夹下。
5、在浏览器中输入输入http://localhost:8989/02/1/page.jsp就可以打开page.jsp页面了。
6、<SCRIPT LANGUAGE="JavaScript">...</SCRIPT>这段代码,是前台脚本代码,用来比较前、后台代码的
不需要、需要引擎编译的运行情况。其实可以删掉<SCRIPT LANGUAGE="JavaScript">...</SCRIPT>这段代码的。
二、include指令
功能:include指令用来向当前页面插入一个静态文件的内容。这个文件可以是JSP、HTML、文本或是Java程序。
语法:<%@ include file=“filename” %> 比如 <%@ include file=“111.txt” %>
标签元素:file
注意:include指令元素和行为元素主要有两个方面的不同点。
1.include指令是静态包含,执行时间是在编译阶段执行,引入的内容为静态文要,在编译成servlet时就和包含者融合到一起。所以file不能是一个变量,也不能在file后接任何参数。
2.include行为是动态包含,执行时间是在请求阶段执行,引入的内容在执行页面时被请求时动态生成再包含到页面中。
3、<%@ include file=“filename” %>如果直接以文件名开头,指的是正在使用的JSP文件所在的路径,
如果以/开头,指的是正在使用的JSP文件上下的路径关系.
×××××实例2,静态包含外部资源文件××××
1、在111.txt输入如下代码:
include file start here.<br>
<%! String str="Here is include's context!";%>
<% out.println(str+"<br>");%>
其实在111.txt输入如下代码,显示的效果是一样的,但是中文会出现乱码
include file start here.<br>
Here is include's context!<br>
2、把111.txt保存在webapps\02\2目录下。
3、编写native.jsp文件
<html>
<body>
native file start here.<br>
<%@ include file="111.txt"%>
native file end here.<br>
</body>
</html>
4、把native.jsp保存在webapps\02\2目录下。
在浏览器中输入输入http://localhost:8989/02/2/native.jsp就可以了
三、taglib指令
功能:使用标签库定义新的自定义标签,在JSP页面中启用定制行为。
当页面引用了用户自定义标签时,taglib指令用于引用自定义标签库,并指定标签的前缀。
语法:<%@ taglib uri="URIToTagLibrary" prefix="tagPrefix" %>
如<%@ taglib uri="http://www.jspcentral.com/tags" prefix="JAXP" %>
标签元素:uri、Prefixpage指令元素的属性
uri="tagLibraryURI" 标签库描述器的URI,主要是说是tagLibrary的存放位置。
prefix="tagPrefix" 用于标识在页面后面部分使用定制标签的唯一前缀。
前缀在标签的名字前面使用,例如,在中public在loop前面。空的前缀将被忽略。如果你正在开发或使用自定义的标签的话,你不能使用标签前缀:jsp,jspx,java,javax,servlet,sun和sunw等,因为他们已经被Sun的系统的所使用。
JSP基本动作
JSP中的动作元素包括:include、forward、useBean、getProperty、setProperty、plugin、param。
1.include动作
<jsp:include>标签用来包含一个静态或者动态的文件。
2.forward动作
<jsp:forward>标签用来重定向一个静态HTML文件、JSP文件或者是一个程序段。
3.useBean动作
<jsp:useBean>标签用来在JSP页面中创建一个Bean实例,并指定其名称和作用范围。
4.getProperty动作
<jsp:getProperty>标签用来获取Bean的属性值(在此之前必须用<jsp:useBean>创建它),并将之转化为一个字符串,然后将其插入到输出的页面中。
5.setProperty动作
<jsp:setProperty>标签表示用来设置Bean中的属性值。
6.plugin动作
<jsp:plugin> 标签用于在浏览器中播放或显示一个对象(典型为applet和Bean),这种显示需要在浏览器上安装Java插件。当JSP文件被编译后送往浏览器时,<jsp:plugin>元素将会根据浏览器的版本替换成<object>或者<embed>元素。
7.param动作
<jsp:param>标签用来传递参数,必须与forward、include及plugin动作配合使用。
JSP指令与动作的更多相关文章
- JSP指令与动作元素
include指令 语法:<%@ include file="URL" %> 其中,URL表示一个要包含的页面. include动作(是一个动作标签) 语法:<j ...
- Java遇见HTML——JSP篇之JSP指令与动作元素
一.include指令(如:<%@include file="..."%> ) 示例: Date.jsp <%@page import="java.te ...
- JSP学习笔记(1)——Jsp指令、动作元素和内置对象
简单来说,javaweb技术就是让服务器端能够执行Java代码,之后返回数据给客户端(浏览器)让客户端显示数据 jsp页面中可以嵌套java代码(java小脚本)和嵌套Web前端(html,css,j ...
- JavaWeb【八、JSP指令与动作元素】
include指令(页面嵌套) <%@ include file="URL"%> include动作 <jsp:include page="URL&qu ...
- JAVA遇见HTML——JSP篇(JSP指令与动作元素)
- Jsp语法、指令及动作元素
一.JSP的语法 1.JSP的模板元素:(先写HTML) 就是JSP中的那些HTML标记 作用:页面布局和美化 2.JSP的Java脚本表达式: 作用:输出数据到页面上 语法:<%=表达式%&g ...
- include指令和<jsp:include>标准动作
利用JSP的包含机制,可以有效的避免重复,把可重用的部分独立出去,使用include把它们包含到当前文件.JSP有两种包含机制:include指令和<jsp:include>标准动作. 1 ...
- JSP6(JSP 指令与JSP 动作元素)
一.JSP指令用来设置整个JSP页面相关的属性 指令可以有很多个属性,它们以键值对的形式存在,并用逗号隔开. JSP中的三种指令标签: Page指令 Page指令为容器提供当前页面的使用说明.一个JS ...
- JSP中的编译指令和动作指令的区别
JSP中的编译指令和动作指令的区别 1.编译指令是通知Servlet引擎的处理消息,而动作指令只是运行时的脚本动作 2.编译指令是在将JSP编译成Servlet时起作用,而动作指令可替换成JSP脚本, ...
随机推荐
- Cocos2D iOS之旅:如何写一个敲地鼠游戏(八):为动画建立属性列表
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 免责申明:本博客提供的所有翻译文章原稿均来自互联网,仅供学习交流 ...
- Hadoop:Hadoop基本命令
http://blog.csdn.net/pipisorry/article/details/51223877 常用命令 启用hadoop start-dfs.sh start-hbase.sh 停止 ...
- Handler,MessageQueue Loop 和Message的原理解析
先介绍和handler一起工作的几个组件 Handler的方法介绍 代码示例 package liu.peng.weather; import java.util.Timer; import java ...
- Web Service进阶(一)运行原理
利用清明小假期,温习了一遍Web Service的相关内容,对其工作原理进行了简要总结.以供有需求的朋友和自己日后参考.文章若有不当之处,敬请朋友们提出宝贵建议,以求共勉. Web服务中,我们应该首先 ...
- PHP与JavaScript在处理数组方面的不同之处
数组在编程的时候是经常被使用到的一种数据结构,然而在不同的编程语言中是引用方法大同小异,下面来看一看数组元素在PHP与JavaScript中有什么不同吧. 以遍历数组元素为例: 1.在PHP中, // ...
- (NO.00003)iOS游戏简单的机器人投射游戏成形记(十)
打开Arm.h,在其接口中添加一个新方法: -(void)armShoot; 接下来在Arm.m中实现该方法: -(void)armShoot{ CGPoint startPoint = [self ...
- android 签名
(1)Android Studio菜单Build->Generate Signed APK (2)弹出窗口 (3)创建密钥库及密钥,创建后会自动选择刚创建的密钥库和密钥(已拥有密钥库跳过) ...
- java程序的加载过程
昨天笔试阿里有个求java程序加载过程的题目很是复杂,回来研究了好久才有点明白,整理一下.原题代码如下,判断输出: public class StaticTest { public static in ...
- python的IndentationError: unexpected indent python
都知道python是对格式要求很严格的,写了一些python但是也没发现他严格在哪里,今天遇到了IndentationError: unexpected indent错误我才知道他是多么的严格. ...
- 集群通信组件Tribes之整体介绍
接下来一系列文章会对集群通信框架tribes进行源码级别的分析,欢迎讨论. 把若干机器组合成一个集群,集群为了能协同工作,成员之间的通信是必不可少的,当然可以说这也是集群实现中重点需要解决的核心问题, ...
转载▼