首页 数据库 mysql教程 十二、脚本元素、指令和预定义变量_MySQL

十二、脚本元素、指令和预定义变量_MySQL

Jun 01, 2016 pm 02:07 PM
jsp 元素 变量 定义 指令 脚本

12.1 JSP脚本元素

   JSP脚本元素用来插入Java代码,这些Java代码将出现在由当前JSP页面生成的Servlet中。脚本元素有三种格式:

表达式格式<%= expression %>:计算表达式并输出其结果。
Scriptlet格式<% code %>:把代码插入到Servlet的service方法。
声明格式<%! code %>:把声明加入到Servlet类(在任何方法之外)。
   下面我们详细说明它们的用法。

   12.1.1 JSP表达式

   JSP表达式用来把Java数据直接插入到输出。其语法如下:
<%= Java Expression %>



   计算Java表达式得到的结果被转换成字符串,然后插入到页面。计算在运行时进行(页面被请求时),因此可以访问和请求有关的全部信息。例如,下面的代码显示页面被请求的日期/时间:
Current time: <%= new java.util.Date() %>




   为简化这些表达式,JSP预定义了一组可以直接使用的对象变量。后面我们将详细介绍这些隐含声明的对象,但对于JSP表达式来说,最重要的几个对象及其类型如下:

request:HttpServletRequest;
response:HttpServletResponse;
session:和request关联的HttpSession
out:PrintWriter(带缓冲的版本,JspWriter),用来把输出发送到客户端
   下面是一个例子:
Your hostname: <%= request.getRemoteHost() %>



   最后,如果使用XML的话,JSP表达式也可以写成下面这种形式:
<jsp:expression>
Java Expression
</jsp:expression>



   请记住XML元素和HTML不一样。XML是大小写敏感的,因此务必使用小写。有关XML语法的说明,请参见《XML教程 》

   12.1.2 JSP Scriptlet

   如果你要完成的任务比插入简单的表达式更加复杂,可以使用JSP Scriptlet。JSP Scriptlet允许你把任意的Java代码插入Servlet。JSP Scriptlet语法如下:
<% Java Code %>



   和JSP表达式一样,Scriptlet也可以访问所有预定义的变量。例如,如果你要向结果页面输出内容,可以使用out变量:
<%
String queryData = request.getQueryString();
out.println("Attached GET data: " + queryData);
%>



   注意Scriptlet中的代码将被照搬到Servlet内,而Scriptlet前面和后面的静态HTML(模板文本)将被转换成println语句。这就意味着,Scriptlet内的Java语句并非一定要是完整的,没有关闭的块将影响Scriptlet外的静态HTML。例如,下面的JSP片断混合了模板文本和Scriptlet:
<% if (Math.random() < 0.5) { %>
Have a <B>nice</B> day!
<% } else { %>
Have a <B>lousy</B> day!
<% } %>



   上述JSP代码将被转换成如下Servlet代码:
if (Math.random() < 0.5) {
  out.println("Have a <B>nice</B> day!");
} else {
  out.println("Have a <B>lousy</B> day!");
}



   如果要在Scriptlet内部使用字符“%>”,必须写成“%\>”。另外,请注意<% code %>的XML等价表达是:
<jsp:scriptlet>
Code
</jsp:scriptlet>

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
2 周前 By 尊渡假赌尊渡假赌尊渡假赌
仓库:如何复兴队友
4 周前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
3 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

泰拉瑞亚怎么用指令获得物品?-泰拉瑞亚怎么收藏物品? 泰拉瑞亚怎么用指令获得物品?-泰拉瑞亚怎么收藏物品? Mar 19, 2024 am 08:13 AM

泰拉瑞亚怎么用指令获得物品?-泰拉瑞亚怎么收藏物品?

剪映怎么制作脚本?剪映制作脚本的方法教程 剪映怎么制作脚本?剪映制作脚本的方法教程 Mar 13, 2024 pm 12:46 PM

剪映怎么制作脚本?剪映制作脚本的方法教程

如何在Linux系统中执行.sh文件? 如何在Linux系统中执行.sh文件? Mar 14, 2024 pm 06:42 PM

如何在Linux系统中执行.sh文件?

什么是Discuz?Discuz的定义和功能介绍 什么是Discuz?Discuz的定义和功能介绍 Mar 03, 2024 am 10:33 AM

什么是Discuz?Discuz的定义和功能介绍

面向初学者的Windows PowerShell脚本教程 面向初学者的Windows PowerShell脚本教程 Mar 13, 2024 pm 10:55 PM

面向初学者的Windows PowerShell脚本教程

什么是Java中的实例变量 什么是Java中的实例变量 Feb 19, 2024 pm 07:55 PM

什么是Java中的实例变量

如何使用Ajax从PHP方法中获取变量? 如何使用Ajax从PHP方法中获取变量? Mar 09, 2024 pm 05:36 PM

如何使用Ajax从PHP方法中获取变量?

Python 语法的思维导图:深入理解代码结构 Python 语法的思维导图:深入理解代码结构 Feb 21, 2024 am 09:00 AM

Python 语法的思维导图:深入理解代码结构

See all articles