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. MySQL 常见索引类型介绍

    GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源. MySQL 主要索引类型有如下几种: 1.主键索引 2.唯一索引 3.普通索引 4.空间索引 5.全文索引 假设有如下一张 ...

  2. 使用Python的selenium库制作脚本,支持后台运行

    本文介绍如何使用Python的selenium库制作脚本.概念:       Selenium是一个用于测试网站的自动化测试工具,支持各种浏览器包括Chrome.Firefox.Safari等主流界面 ...

  3. elasticsearch设置密码及Java密码连接

    目录 1. 安装 2. 修改elasticsearch-8.2.2\config\elasticsearch.yml文件里面xpack.security.enabled: false为 3. 重新启动 ...

  4. ERROR: column "xxxxxx" does not exist解决办法

    今天在写PostgreSQL语句时候发现运行这个代码 SELECT t1.equipid, t2.equipname, t1.bigtype, t1.smalltype FROM pdw_gh_pro ...

  5. SUSE Linux Enterprise Server 12 使用二进制文件安装docker

    Docker-CE in SUSE 虽然使用zypper添加源也能安装,不过我在SLES 12sp5 上安装时发现好多命令还需要自己手动软连接,干脆网上找了找文档,再自己小改下,用二进制部署,也是可以 ...

  6. GB/T 28181联网系统通信协议结构和技术实现

    技术回顾 在本文开头,我们先一起回顾下GB/T28181联网系统通信协议结构: 联网系统在进行视音频传输及控制时应建立两个传输通道:会话通道和媒体流通道. 会话通道用于在设备之间建立会话并传输系统控制 ...

  7. Ubuntu系统apt添加第三方PPA源

    一.前言 1.1目的 在使用Ubuntu时往往apt源会自带很多常用软件,但是大部分都是比较老的版本,本文主要是为了实现以下两个目的: 通过添加第三方的PPA源解决软件版本过低或者没有安装包的情况: ...

  8. KingbaseES R3集群备库执行sys_backup.sh物理备份案例

    案例说明: KingbaseES R3的后期版本支持通过sys_backup.sh执行sys_rman的物理备份,实际上是调用了sys_rman_v6的工具做物理备份.本案例是在备库上执行集群的备份, ...

  9. Yarn上运行spark-shell和spark-sql命令行

    spark-shell On Yarn spark-shell \ --master yarn-client \ --executor-memory 1G \ --num-executors 10 s ...

  10. git rebase合并多个commit总结

    git rebase 合并多个commit 方法 在开发过程中,有时一个任务会分几次commit提交,这样可能对于有些分支要cherry pick时会比较麻烦,这是我们可以通过git rebase 将 ...