JSP脚本元素包括声明、表达式、脚本

声明(declaration):用于在JSP页面中声明合法的变量和方法。以“<%!”开始,以“%>”结束。

在JSP页面中,一个声明可以出现在任何地方,并且一个页面可以有多个声明。

<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<%@ page import="java.util.Date"%> <!DOCTYPE html>
<%-- 声明一个方法 --%>
<%!
public String getTodaysDate() {
return (new Date()).toString();
}
%>
<html>
<head>
<meta charset="utf-8">
<title>Declarations</title>
</head>
<body>
Today is <%=getTodaysDate() %>
</body>
</html>

表达式(expression):计算表达式的值,并使用隐式对象out将结果以字符串的形式输出。以“<%=”开始,以“%>”结束。

表达式不需要分号结尾。

Today is <%=java.util.Calendar.getInstance().getTime() %>

JSP容器首先执行java.util.Calendar.getInstance().getTime(),然后将结算结果传递给内置对象out输出,即

Today is
<%
out.println(java.util.Calendar.getInstance().getTime());
%>

脚本(scripts):合法的Java代码。以“<%”开始,以“%>”结束。

定义在一个脚本程序中的变量可以被其后续的脚本程序使用。

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<%@ page import="java.util.Enumeration" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Scriptlet example</title>
</head>
<body>
<b>Http headers:</b>
<br />
<%-- 第一个脚本 --%>
<%
for(Enumeration<String> e = request.getHeaderNames(); e.hasMoreElements();){
String header = e.nextElement();
out.println(header + ": " + request.getHeader(header) + "<br />");
}
String message = "Thank you.";
%>
<br />
<%-- 第二个脚本 --%>
<%
out.println(message);
%>
</body>
</html>

禁用脚本元素

在部署描述符中(web.xml)定义<scripting-invalid>元素

下面将一个应用程序中的所有JSP页面的脚本都关闭了

注意在部署描述符中只能有一个<jsp-config>元素

<jsp-config>
<jsp-property-group>
<url-pattern> *.jsp</url-pattern>
<scripting-invalid>true</scripting-invalid>
</jsp-property-group>
</jsp-config>

JSP脚本元素(声明 %! 表达式 %= 脚本 %)的更多相关文章

  1. JSP运行过程 JSP脚本 静态动态包含 jsp指令 jsp内置对象jsp四大作用域 jsp动作元素 EL表达式 JSTL 设计模式 JSP开发模式 EL内置对象

    Day38 JSP JSP的运行过程具体如下: (1)客户端发出请求,请求访问JSP文件. (2)JSP容器先将JSP文件转换成一个Java源文件(Java Servlet源程序),在转换过程中,如果 ...

  2. JSP-注释,脚本元素,指令

    jsp中的注释 jsp隐藏注释 完全对客户机隐藏,不会将注释内容发送给客户机. 其语法格式为:<%-- comment --%> comment为要添加的文本注释内容. HTML注释 不完 ...

  3. JSP中的EL 表达式

    JSP中的EL 表达式 什么是 EL 表达式,EL 表达式的作用? EL 表达式的全称是:Expression Language.是表达式语言. EL 表达式的什么作用:EL 表达式主要是代替 jsp ...

  4. JSP 指令 脚本元素 表达式 声明

    一.page指令 1. 可以使用page指令来控制JSP转换器转换当前JSP页 面的某些方面.例如,可以告诉JSP用于转换隐式对象 out的缓冲器的大小.内容类型,以及需要导入的Java 类型,等等. ...

  5. JSP中脚本、声明和表达式的本质区别

     JSP脚本元素 使用JSP脚本元素可以将Java代码嵌入到JSP页面里,这些Java代码将出现在由当前JSP页面生成的Servlet中,使JSP将静态内容与动态内容分离出来.脚本元素包含:  1. ...

  6. JSP——JavaServer Page中的隐式对象(implicit object)、指令(directive)、脚本元素(scripting element)、动作(action)、EL表达式

    目录 1.JSP概述 2.注释(comment) 2.1.JSP注释 2.2.HTML注释 3.隐式对象(implicit object) 3.1.隐式对象清单 3.2.request对象 3.3.o ...

  7. JSP基础总结(运行机制、脚本元素、指令元素、动作元素)

    JSP的运行机制: 1.转译阶段:JSP页面转换成Servlet类: 2.请求阶段:Servlet类执行,将相应结果发送至客户端. 流程解释: 1.用户访问某个JSP页面 2.服务器找到相应的JSP页 ...

  8. jsp脚本元素

    在JSP页面中有三种脚本元素(Scripting Elements):声明.小脚本和表达式. 声明(declaration)用来在JSP页面中声明变量和定义方法.声明是以<%!开头,以%> ...

  9. JSP基础总结 脚本元素

    JSP脚本元素 1.  JSP声明语句 JSP声明语句以<%!开始,以%>结束,其语法格式为:<%! 声明语句 %> 使用声明语句的变量为全局变量,也就是说,当有多个用户在执行 ...

随机推荐

  1. python 删除模块

    import systry:    import librabbitmqexcept Exception:    passelse:    version = getattr(librabbitmq, ...

  2. php数组按值的大小排序

    array_multisort(array_column($nima,'zongfen'),SORT_DESC,$nima);

  3. depth: working copy\infinity\immediates\files\empty

    depth: working copy\infinity\immediates\files\empty 有时间,需要整理下,svn 合并深度这四项:具体的意思.

  4. Light Probe Proxy Volume

    [Light Probe Proxy Volume] The Light Probe Proxy Volume (LPPV) component allows you to use more ligh ...

  5. ssm 连接两个数据库

    <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.sp ...

  6. Linux yum安装MySQL5.7

    一.安装配置MySQL的yum源 # 安装MySQL的yum源,下面是RHEL6系列的下载地址 rpm -Uvh http://dev.mysql.com/get/mysql-community-re ...

  7. sql数据库之多库查询

    连接到数据库服务器gwsps07上,打开查询分析器,如何获取gwrenshi数据库中的数据? 查询语句如下: select * from GWRENSHI.CGC.dbo.PERempms(serve ...

  8. metadata信息的采集

    exiftool可以查看图片的信息.可以获得照片的相关信息,甚至是GPS定位信息.

  9. 整理一些好用的css, javascript资源网站等

    CSS: CSS3信息:http://www.css3.info/ css3生成器:http://css3generator.com/ css3 cross brower生成器:http://css3 ...

  10. mycat配置实现mysql读写分离

    需要先把mysql的主从复制配置好,然后才可以开始mycat的配置 m ysql主从复制配置:https://www.cnblogs.com/renjianjun/p/9093062.html myc ...