JSP标准动作标记

在客户请求JSP页面时,JSP动作利用XML语法格式的标记来控制Servlet引擎的行为。利用JSP动作可以动态地插入文件、重用JavaBean组件、把用户重定向到另外的页面、为Java插件生成HTML代码。

动作标记使用XML语法格式,由一个开始标记(可带有属性)、动作体以及结束标记组成。

动作标记名和属性名都是大小写敏感的 。

其中常用的动作有以下7种:

    <jsp:include>、 <jsp:param>、 <jsp:forward>、 <jsp:plugin> 、 <jsp:useBean>、 <jsp:setProperty> 、<jsp:getProperty>。 

<jsp:include>动作介绍

动作用来把指定文件(文本、HTML、JSP)插入正在生成的页面中,还可以向被加载的JSP文件传递参数。

语法格式如下:
<jsp:include page=“relative URL” flush=“true” />
或者
<jsp:include page="fileName" flush=“true">
<jsp:param name="paramName value="paramValue"/>
</jsp:include> **属性介绍:** page属性:指定资源相对路径
【功能说明】page属性指定所包含的资源的相对路径,可以接受动态值。
flush属性:指定是否刷新缓冲区
【功能说明】flush属性指定在包含目标资源之前是否刷新输出缓冲区,默认值为false。flush属性不可以接受动态值。

<jsp:param>动作介绍

动作可以用于、< jsp:forward>和动作体中,为其它标签提供附加信息。

<jsp:param>动作的语法格式如下:
<jsp:param name="paramName" value="param Value"/> **属性介绍:**
name属性:指定参数名
【功能说明】name属性用于指定参数名称,不可以接受动态值。
value属性:指定参数值
【功能说明】value属性用于指定参数值,可以接受动态值。

下面是示范例子:

index.jsp(起始页面)

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<html>
<head>
<title>include动作实例演示</title>
</head>
<body>
<h1> include动作实例演示!</h1>
以下是hello1.jsp页面的内容:
<hr>
<jsp:include page=“hello1.jsp">
<jsp:param name="Name" value="QQ" />
</jsp:include>
</body>
</html>

注:设置传递参数的方式

hello1.jsp(添加页面)

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
</head>
<body>
<%=request.getParameter("Name")%>你好,欢迎你访问!%>
</body>
</html>

注:获取传来参数的方式 <%=request.getParameter(“Name”)%>

<jsp: forward> 动作

用于引导客户端的请求到另一个页面或者是另一个Servlet去。

<jsp:forward>语法格式如下:
<jsp:forward page="relativeURL" />
<jsp:param name="paramName1" value="paramValue1"/>
<jsp:param name="paramName2" value="paramValue2"/>
</jsp:forward> **<jsp:forward>动作可以包含一个或几个<jsp:param>子动作,用于向要引导进入的页面传递参数。**
需要注意,当<jsp:forward>动作发生的时候,如果已经有文本被写入输出流而且页面没有设置缓冲,那么将抛出异常。

下面是示范例子:

login.jsp

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<form method="get" action="checklogin.jsp">
<table>
<tr><td>输入用户名:</td>
<td><input type="text" name="name" value
=<%=request.getParameter("name")%>></td>
</tr>
<tr><td>输入密码:</td>
<td><input type="password" name="password"></td>
</tr>
<tr ><td><input type="submit" value="登录"></td></tr>
</table>
</form >

checklogin.jsp(登录验证页面)

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<body>
<%--登录验证--%>
<%
String name=request.getParameter("name");
String password=request.getParameter("password");
if(name.equals("qq")){
%>
<jsp:forward page="success.jsp">
<jsp:param name="user" value="<%=name%>"/>
</jsp:forward>
<%
}
else{
%>
<jsp:forward page="login.jsp">
<jsp:param name="user" value="<%=name%>"/>
</jsp:forward>
<%}%>
</body>

success.jsp(登录成功页面)

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<html>
<head>
<title>成功页面</title>
</head>
<body>
登陆成功
<br>
欢迎你,<%=request.getParameter("name")%>
</body>
</html>

<jsp:useBean> 动作

动作用来装载一个将在JSP页面中使用的JavaBean,创建实例供页面使用。这个功能非常有用,能够实现Java组件重用。

<jsp:useBean>语法格式如下:
<jsp:useBean id="beanInstanceName" scope="page | request | session | application"
class="package.class"
type=“package.class“ 说明是类本身,还是父类或接口
beanName="package.class"/>

<jsp:setProperty>动作元素

动作用来设置、修改已经实例化的Bean中的属性值。 常和一起使用。

<jsp: setProperty>语法格式如下  :
<jsp:setProperty name="beanInstanceName" property= "*" |property="propertyName" [ param="parameterName"| value="value"]/>

<jsp: getProperty> 动作

动作获取指定Bean属性的值,转换成字符串,然后输出。

<jsp:getProperty>语法格式如下:
<jsp:getProperty name="beanInstanceName" property="propertyName" />

下面是示范例子:

文件: TestBean.java

/* 文件: TestBean.java */
package action; public class TestBean {
private String message = "No message specified"; public String getMessage() {
return(message);
}
public void setMessage(String message) {
this.message = message;
}
}

index.jsp文件

 <html>
<head>
<title>Using JavaBeans in JSP</title>
</head>
<body>
<center>
<h2>Using JavaBeans in JSP</h2> <jsp:useBean id="test" class="action.TestBean" /> <jsp:setProperty name="test"
property="message"
value="Hello JSP..." /> <p>Got message....</p> <jsp:getProperty name="test" property="message" /> </center>
</body>
</html>

转载地址:

http://www.runoob.com/jsp/jsp-actions.html

JSP-标准动作标记的更多相关文章

  1. jsp标准动作

    JSP标准动作元素的使用格式为:<jsp:标记名>,它採用严格的xml标签语法来表示.这些jsp标签动作元素是在用户请求阶段运行的,这些标准动作元素是内置在jsp文件里的,所以能够直接使用 ...

  2. [04] JSP标准动作

    1.概述 JSP规范中定义了一系列的标准动作,Web容器按照规范进行了实现,可以解析并执行标准动作.而标准动作使用的是标准的xml语法,看上去也比较直观易懂,下面来看一个结构例子: <jsp:a ...

  3. Java Web程序设计笔记 • 【第4章 JavaBean和JSP标准动作】

    全部章节   >>>> 本章目录 4.1 JavaBean 4.1.1 JavaBean 概述 4.1.2 JavaBean的重要性 4.1.3 JavaBean的特点 4.1 ...

  4. jsp:useBean标准动作

    1.bean法则 JavaBean和企业JavaBean是完全不相干的两个东西.普通的非企业JavaBean需要满足一定的规范才能被JSP和servlet使用: 1)必须有一个无参数的公共构造函数: ...

  5. include指令和<jsp:include>标准动作

    利用JSP的包含机制,可以有效的避免重复,把可重用的部分独立出去,使用include把它们包含到当前文件.JSP有两种包含机制:include指令和<jsp:include>标准动作. 1 ...

  6. JSTL教程 [JSP 标准标记库]

    JSTL教程- - JSP 标准标记库(JSP Standard Tag Library,JSTL)是一个实现 Web 应用程序中常见的通用功能的定制标记库集,这些功能包括迭代和条件判断.数据管理格式 ...

  7. JSP 标准标签库(JSTL)

    JSP 标准标签库(JSTL) JSP标准标签库(JSTL)是一个JSP标签集合,它封装了JSP应用的通用核心功能. JSTL支持通用的.结构化的任务,比如迭代,条件判断,XML文档操作,国际化标签, ...

  8. include动作标记和include指令标记学习笔记

    我的jsp学习参考书是耿祥义,张跃平编著的jsp大学使用教程这本书,我也向大家推荐这本书,我觉得这本书适合我的学习方式,知识的讲解透彻易懂. include指令标记                   ...

  9. JSTL(JSP Standard Tag Library ,JSP标准标签库)

    JSTL标签之核心标签   JSTL(JSP Standard Tag Library ,JSP标准标签库)是一个实现 Web应用程序中常见的通用功能的定制标记库集,这些功能包括迭代和条件判断.数据管 ...

随机推荐

  1. C语言笔记(二维数组与数值指针)

    一.关于二维数组和二维数组区别 (1)一维数组在内存中是连续分布存储的,同样,二维数组也是在内存连续存储的.所以从内存的角度来分析,一维数组和二维数组其实没有本质区别. (2) 二维数组可以使用一维数 ...

  2. 简单学C——第四天

    数组 在学数组之前,有必要把前面的知识复习一遍,当然我的复习,仅仅只是提一下,而对于你,则应该认真的看一下前面的知识点,不懂可以百度,哈哈. 前面我们大致学了 1.定义变量,2.数据的输入与输出,3. ...

  3. windows“画图”工具用法

    图片编辑工具不少,photoshop功能强大,但是并不是那么容易掌握.而且,倘若一个简单的图片处理问题就使用这么强大的工具,有点“杀鸡焉用牛刀”的意思,要知道只打开photoshop就需要一段等待时间 ...

  4. theano中的logisticregression代码学习

    1 class LogisticRegression (object): 2 def __int__(self,...): 3 4 #定义一些与逻辑回归相关的各种函数 5 6 def method1( ...

  5. C连接MySQL数据库开发之Windows环境配置及测试

    一.开发环境 Win8.1 64位.VS2013.MySQL5.5.3764位 MySQL安装目录为:C:\Program Files\MySQL\MySQL Server 5.5 二.配置工程环境 ...

  6. [BZOJ 1081] [SCOI2005] 超级格雷码 【找规律】

    题目链接:BZOJ - 1081 备注:此题BZOJ上貌似没有 spj ,要把一般顺序的每个格雷码倒着输出...比如 0102 输出为 2010 题目分析 就是按照 Gray 码的生成方法写前几个出来 ...

  7. Eclipse 项目有红感叹号、小红叉

    红感叹号: 问题原因]:工程中classpath中指向的包路径错误 [解决办法]:右键项目名称 BuildPath ---> Configure Build Paht...中,然后上面有几个选项 ...

  8. SQLserver 数据库

    1.数据库: 结构化查询语言(Structured Query Language)简称SQL: 数据库管理系统(Database Management System)简称DBMS: 数据库管理员(Da ...

  9. 【转】在ubuntu环境下搭建svn server遇到的一些问题

    原文网址:http://www.cnblogs.com/pcchinadreamfly/archive/2012/11/24/2786046.html 前段时间在ubuntu 12.04lts上倒腾了 ...

  10. JS原型函数相关基础知识

    函数对象和普通对象 //普通对象 var oo1 = {}, oo2 = new Object(), oo3 = []; console.log(typeof oo1 + ',' + typeof o ...