重新学习JSP之二

一.JSP表达式

表达式语法如下:

<%= 变量/返回值/表达式 %>

举个例子:
expression.jsp

<%@ page language = "java" pageEncoding = "gb2312" %>
<html>
  <head>
    <title>expression</title>
     </head>
  
  <body>
          <%
             String name = "Jack";
             String msg = "欢迎您来到教务管理系统!";
          %>
          <br>
          <%= name + "," + msg %>
  </body>
</html>

在浏览器输入http://localhost:8080/Prj02/expression.jsp ,如下图:
在这里插入图片描述
总结:
1.<%= msg %>等价于<% out.println(msg); %>
2.JSP表达式不能用“;”结束
3.在JSP中不能出现多条语句
4.JSP表达式里面的内容一定是out.println能够支持的类型,或者通过toString函数转换成字符串的形式。

二.JSP程序段

2.1什么是JSP程序段

JSP程序段就是插入到JSP程序的Java代码段。语法如下:

<% Java代码段 %>

2.2编写JSP程序段

coursenames.jsp

<html>
  <head>
    <title>coursenames</title>
  </head>
  
  <body>
         <%
            String[] coursenames = {"Java", "C++", "大学物理"};
            out.println("课程数量:" + coursenames.length);
          %>
          <hr><!-- 这是一条横线的HTML标签 -->
          <%
             for(int i = 0; i < coursenames.length; i++){
                 out.println(coursenames[i]);
                 out.println("<br>");
             }
           %>
  </body>
</html>

在浏览器输入**http://localhost:8080/Prj02/coursenames.jsp **,如下图:
在这里插入图片描述

2.3程序段中的变量作用范围

scriptlet_error.jsp

<html>
  <head>![在这里插入图片描述](https://img-blog.csdnimg.cn/20190225210923870.PNG?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQwNjM0ODQ2,size_16,color_FFFFFF,t_70)
    <title>scriptlet_error</title>
  </head>
  
  <body>
        <%
           out.println(name + "," + msg);
         %>
         <%
           String name = "Jack";
           String msg = "欢迎您来到教务管理系统";
          %>
  </body>
</html>

在浏览器输入http://localhost:8080/Prj02/scriptlet_error.jsp ,如下图:
在这里插入图片描述
总结: 500错误是指程序不能通过编译,编译失败。因此变量msg,name在没有定义以前是不允许被使用的。

三.JSP声明

3.1什么是JSP声明

JSP声明中可以定义网页中的全局变量。而且不存在需要先声明后使用的规则。即使用JSP声明可以在任何地方定义变量,实际开发中,还可以在JSP声明中定义方法、类的声明。语法如下:

<%! 代码 %>

3.2编写JSP声明

declaration1.jsp

<%@ page language = "java" pageEncoding = "gb2312" %>
<html>
  <head>
    <title>declaration1</title>
  </head>
  
  <body>
        <%
           out.println(name + "," + msg);
         %>
         <%!
           String name = "Jack";
           String msg = "欢迎您来到教务管理系统";
          %>
  </body>
</html>

在浏览器输入http://localhost:8080/Prj02/declaration1.jsp , 如下图:
在这里插入图片描述
declaration2.jsp

<%@ page language = "java" pageEncoding = "gb2312" %>
<html>
  <head>
    <title>declaration2</title>
  </head>
  
  <body>
       <%!
           //方法定义
           private String showMsg(String name, int score){
              String msg = ",你的考试成绩是:";
              return name + msg + score;
           }
         %>
         <%
           String tempStr = showMsg("Jack", 85);
           out.println(tempStr);
          %>
  </body>
</html>

在浏览器输入http://localhost:8080/Prj02/declaration2.jsp ,如下图:
在这里插入图片描述
注意: 在JSP声明中只能作定义,但不能实现控制逻辑。例如,不能在其中使用out.println

摘自《Java Web 开发与应用》,主编郭克华,副主编宋虹,清华大学出版社

欢迎小伙伴来评论啊~~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值