JSP脚本元素

1、在jsp中嵌入的服务端运行的小程序称为脚本、实质是java程序。
2、脚本元素可以分为三类:表达式、Scriptlet、声明。

表达式

计算java表达式的值,得到的结果转化为字符串,在jsp页面中显示相应的信息

语法格式:<%=java表达式%>
具体说明:
<%="和”%>是一个完整的符号,符号中间不能有空格。
表达式能够求值

例子:

<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>表达式</title>
</head>
<body>
<h3 align="center">JSP表达式的演示</h3>
<%=4+3 %><br><!-- <br>表示换行 -->
<%=8>4 %><br>
<%=Math.PI %><br>
<%=request.getParameter("userName") %>
</body>
</html>

Scriptlet

在jsp页面中嵌入一段有效的java程序段,可以是变量的声明也可以是方法的调用。
语法格式:
<%Java 代码%>
具体说明:
<%“和”%>是一个完整的符号,符号中间不能有空格.
<%%>中不能定义类和方法,不能引入外部的类
在Scriptlet定义的变量在当前整个页面有效,不会被其他的线程调用

实例:
1、输出一个直角三角形用数字

<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>以直角三角形的形式显示数字</title>
</head>
<body>
<h1 align="center">以直角三角形的形式显示数字</h1>
<%
for (int i = 0; i < 10; i++) {
for (int j = 1; j <= i; j++) {
%>
<%=j%>
<%
}
%>
<%="</br>"%>
<%
}
%>
</body>
</html>

实例2:显示九九乘法表的结果并且显示当前桌面的日期

<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ page import="java.util.*" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>输出九九乘法表</title>
</head>
<body>
<h1>输出九九乘法表</h1>
<%
for (int i = 1; i < 10; i++) {
for (int j = 1; j <= i; j++) {
%>
<%=(i * j)%>
<%
}
%>
<%="<br>"%>
<%
}
%> <h2>显示当前系统的时间</h2>
<%
Date now=new Date();
String name="xiaohong";
%>
<%=now.toLocaleString() %><!-- 输出内容到桌面 -->
<%=name %>
</body>
</html>

声明

在jsp页面中声明java方法或变量

语法格式:
<%!Java代码%>

具体说明:

  • 1、<%!“和”%>是一个完整的符号,符号中间不能有空格.
  • 2、声明的语法与在java语言中的声明变量和方法是一样的
  • 3、在页面中声明的变量和方法在整个页面中都有效,而且会被多个线程所共享。
    实例:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>声明</title>
</head>
<%!
int a=5;//声明变量 public String SayName(String name){ //声明方法
return "Welcome:"+name+"!";
} %>
<body>
<h1>声明</h1> <%=a %></br>
<%=SayName("小红") %>
</body>
</html>

实例2:

<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>金钱的转换</title>
</head>
<body>
<h1>金钱的转换,由整形转换为小数</h1> <%!final String POINT = ".";//声明常量 public String TransMony(String money) { //声明转换的方法
// 返回指定字符在字符串中第一次出现处的索引,
//如果此字符串中没有这样的字符,则返回 -1。
int index = money.indexOf(POINT);
String str = money;
if (index == -1) {
return money + ".00";
}
return str; }%>
<%
String money1 = TransMony("14");
String money2 = TransMony("19.00");
%> <%=money1%></br>
<%=money2%>
</body>
</html>

JSP脚本知识的更多相关文章

  1. JavaWeb学习----JSP脚本元素、指令元素、动作元素

    [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...

  2. Java学习-033-JavaWeb_002 -- 网页标记语言JSP基础知识

    JSP 是 Sun 公司提倡的一门网页技术标准.在 HTML 文件中,加入 Java 代码就构成了 JSP 网页,当 Web 服务器访问 JSP 请求的时候,首先执行其中的 Java 程序源码,然后以 ...

  3. JSP脚本元素上机手册

    L3 <JSP基础>上机手册 内容回顾 脚本元素<%! %> <%= %> <% %> 注释元素 JSP指令元素 JSP动作元素 上机目标 掌握脚本元素 ...

  4. JSP脚本元素、指令元素、动作元素

    [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...

  5. Oracle手边常用70则脚本知识汇总

    Oracle手边常用70则脚本知识汇总 作者:白宁超 时间:2016年3月4日13:58:36 摘要: 日常使用oracle数据库过程中,常用脚本命令莫不是用户和密码.表空间.多表联合.执行语句等常规 ...

  6. JSP脚本中的9个内置对象

    JSP脚本中包含9个内置对象,这9个内置对象都是Servlet API接口的实例,只是JSP规范对它们进行了默认初始化.也就是说它们已经是对象,可以直接使用. 我们随意打开一个由JSP页面生成的Ser ...

  7. jstl和jsp脚本变量相互访问

    1.jsp脚本访问jstl标准动作的变量,可以通过隐式的范围变量来获取,对于页面作用域的变量,可以通过pageContext.getAttribute()来获取,也可以通过动作来获取: <c:s ...

  8. JSP基本知识

    JSP基本原理: JSP本质是Servlet(一个特殊的Java类),当用户向指定Servlet发送请求时,Servlet利用输出流动态生成HTML页面.JSP通过在标准的HTML页面中嵌入Java代 ...

  9. JavaEE系列之(一)JSP基础知识详解

    一.JSP基础语法     1.JSP简介        JSP(Java Server Pages),其根本是一个简化的Servlet设计,它实现了在Java中使用HTML标签.JSP是一种动态网页 ...

随机推荐

  1. LuoguP1456 Monkey King (左偏树)

    struct LeftTree{ int l,r,val,dis; }t[N]; int fa[N]; inline int Find(int x){ return x == fa[x] ? x : ...

  2. java学习第三天常用类.day12

    String String 类是不可改变的,所以你一旦创建了 String 对象,那它的值就无法改变了 如果需要对字符串做很多修改,那么应该选择使用 StringBuffer & String ...

  3. Taurus.MVC 微服务框架 入门开发教程:项目集成:2、客户端:ASP.NET Core(C#)项目集成:应用中心。

    系列目录: 本系列分为项目集成.项目部署.架构演进三个方向,后续会根据情况调整文章目录. 本系列第一篇:Taurus.MVC V3.0.3 微服务开源框架发布:让.NET 架构在大并发的演进过程更简单 ...

  4. Vue3 发生错误:setup function returned a promise

    当你组件中有 Promise 对象时,即 Axios.Ajax 这类的请求,然后把数据渲染到模板中就会报如下图的错误: 在这个异步组件外包裹一个 <Suspense> 组件.比如 App. ...

  5. Lua环境搭建编译[Lua5.2+VS2010]

    这里是我编译的和一个测试Demo:http://download.csdn.net/detail/allh45601/6783653 大家如果看我下边说的不是很清楚,可以下载这个具体工程: 群:103 ...

  6. PerfView专题 (第十篇):洞察 C# 终结队列引发的内存泄漏

    一:背景 C# 程序内存泄漏的诱发因素有很多,但从顶层原理上来说,就是该销毁的 用户根 对象没有被销毁,从而导致内存中意料之外的对象无限堆积,导致内存暴涨,最终崩溃,这其中的一个用户根就是 终结器队列 ...

  7. python自学笔记10:while循环和for循环

    条件控制和循环控制是两种典型的流程控制方法,前面我们写了 if 条件控制,这节讲 for 循环和 while 循环. 循环是另一种控制流程的方式,一个循环体中的代码在程序中只需要编写一次,但可能会连续 ...

  8. django_day02

    django_day02 外键 表示一对多 多对一 class Book(models.Model): name = models.CharField(max_length=32) publisher ...

  9. KingbaseES V8R3集群管理维护案例之---集群迁移单实例架构

    案例说明: 在生产中,需要将KingbaseES V8R3集群转换为单实例架构,可以采用以下方式快速完成集群架构的迁移. 适用版本: KingbaseES V8R3 当前数据库版本: TEST=# s ...

  10. Java开发学习(三十二)----Maven多环境配置切换与跳过测试的三种方式

    一.多环境开发 我们平常都是在自己的开发环境进行开发, 当开发完成后,需要把开发的功能部署到测试环境供测试人员进行测试使用, 等测试人员测试通过后,我们会将项目部署到生成环境上线使用. 这个时候就有一 ...