jsp 的三种语法
发布日期:2021-07-27 05:23:44 浏览次数:5 分类:技术文章

本文共 3371 字,大约阅读时间需要 11 分钟。

a)jsp 头部的 page 指令

jsp 的 page 指令可以修改 jsp 页面中一些重要的属性,或者行为。

<%@ page import="java.util.*" %><%@ page contentType="text/html;charset=UTF-8"         pageEncoding="UTF-8"         autoFlush="true"         buffer="8kb"         language="java" %>

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

error500.jsp文件:

<%@ page contentType="text/html;charset=UTF-8" language="java" %>    error500很抱歉,您访问的页面服务器出现错误,程序猿小哥正在努力为您抢修!!!

page.jsp文件:

<%@ page import="java.util.*" %><%@ page contentType="text/html;charset=UTF-8"         pageEncoding="UTF-8"         autoFlush="true"         buffer="8kb"         errorPage="error500.jsp"         language="java" %>
page.jsp<% int a = 10 / 0;%>

在浏览器输入http://localhost:8080/09_JSP/page.jsp

在这里插入图片描述
在这里插入图片描述
isErrorPage=“true”
设置为true后,源代码会增加这行代码
在这里插入图片描述
在这里插入图片描述

b)jsp 中的常用脚本

i. 声明脚本(极少使用)

声明脚本的格式是:<%! 声明 java 代码 %>

作用:可以给 jsp 翻译出来的 java 类定义属性和方法甚至是静态代码块。内部类等。

在声明脚本块中,我们可以干 4 件事情

  • 1.我们可以定义全局变量。
  • 2.定义 static 静态代码块
  • 3.定义方法
  • 4.定义内部类 几乎可以写在类的内部写的代码,都可以通过声明脚本来实

代码示例:

<%@ page contentType="text/html;charset=UTF-8" language="java" %>    声明脚本<%--1、声明类属性 --%><%!    private Integer id;    private String username;    private static Map
map;%><%--2、声明 static 静态代码块 --%><%! static{ map = new HashMap
(); map.put("key1","value1"); map.put("key2","value2"); map.put("key3","value3"); }%><%--3、声明类方法 --%><%! public int sum(){ return 2 + 3; }%><%--4、声明内部类--%><%! public static class A{ private Integer id = 12; private String abc = "abc"; }%>

在这里插入图片描述

ii. 表达式脚本(常用)

表达式脚本的格式是:<%=表达式%>

表达式脚本的作用是: 用于向页面输出内容。 表达式脚本 翻译到 Servlet 程序的 service 方法中 以 out.print() 打印输出 out 是 jsp 的一个内置对象,用于生成 html 的源代码

注意:表达式不要以分号结尾,否则会报错

表达式脚本可以输出任意类型。

表达式脚本的特点:

  • 1、所有的表达式脚本都会被翻译到_jspService() 方法中
  • 2、表达式脚本都会被翻译成为 out.print()输出到页面上
  • 3、由于表达式脚本翻译的内容都在_jspService() 方法中,所以_jspService()方法中的对象都可以直接使用。
  • 4、表达式脚本中的表达式不能以分号结束

代码示例:

<%@ page contentType="text/html;charset=UTF-8" language="java" %>    表达脚本<%!    private Map map = new HashMap
();%><%--1. 输出整型 --%><%= 12%>
<%--2. 输出浮点型 --%><%=12.2%>
<%--3. 输出字符串 --%><%="我是字符串"%>
<%--4. 输出对象--%><%=map%>
<%=request.getParameter("username")%>

在浏览器输入:http://localhost:8080/09_JSP/expressScript.jsp?username=zhangsan

在这里插入图片描述

翻译对照:

在这里插入图片描述

iii. 代码脚本

代码脚本的格式是: <% java 语句 %>

代码脚本的作用是:可以在 jsp 页面中,编写我们自己需要的功能(写的是 java 语句)。

代码脚本的特点是:

  • 1、代码脚本翻译之后都在_jspService 方法中
  • 2、代码脚本由于翻译到_jspService()方法中,所以在_jspService()方法中的现有对象都可以直接使用。
  • 3、还可以由多个代码脚本块组合完成一个完整的 java 语句。
  • 4、代码脚本还可以和表达式脚本一起组合使用,在 jsp 页面上输出数据

代码示例:

<%@ page contentType="text/html;charset=UTF-8" language="java" %>    代码脚本<%--1. 代码脚本----if 语句--%><%    int i = 13;    if (i == 12) {        System.out.println("i = " + i);    } else {        System.out.println("i = " + i);    }%><%    int t = 13;    if (t == 12) {%>    <%="t = " + t%><% } else {%>    <%="t = " + t%><% }%>
<%--2. 代码脚本----for 循环语句--%><% for (int j = 0; j < 10; j++) { System.out.println("j = " + j); }%>
<%for (int j = 0; j < 10; j++) {%>
<% }%>
第 <%=j + 1%> 行
<%--3. 翻译后 java 文件中_jspService 方法内的代码都可以写--%><% String username = request.getParameter("username"); System.out.println("用户名的请求参数值是:" + username);%>

结果输出到控制台

在这里插入图片描述

代码翻译:

在这里插入图片描述

c)jsp 中的三种注释

i. html 注释

html 注释会被翻译到 java 源代码中。在_jspService 方法里,以 out.writer 输出到客户端。

在这里插入图片描述

ii. java注释

<%//    单行java注释    /*多行注释*/%>

java 注释会被翻译到 java 源代码中。

在这里插入图片描述

iii. jsp 注释

<%--这是jsp注释--%>

jsp 注释可以注掉,jsp 页面中所有代码,且不会出现在java源码中

转载地址:https://blog.csdn.net/qq_45554909/article/details/111828278 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:jsp 九大内置对象和四大域对象
下一篇:.properties 文件,.yml 文件 ,yaml文件语法学习

发表评论

最新留言

关注你微信了!
[***.104.42.241]2024年09月24日 23时41分48秒