Java Web之JSP基本语法

之前我们已经成功的创建了一个Java Web项目并部署到Tomcat上运行。
从创建的项目结构来看,我们发现有个index.jsp文件。
那什么是JSP呢?


JSP(Java Server Pages) 简介

jsp由Html、css、js、Java代码以及jsp标签等组成,其后缀名为.jsp
jsp本质上就是一个Servlet(Servlet是http请求与响应的中间节点,主要用于处理Http请求与响应)

我们打开之前创建项目自动生成的index.jsp

这里写图片描述

可以看到index.jsp中包含有常见的html标签和下面这行代码

<%@ page contentType="text/html;charset=UTF-8" language="java" %>  jsp指令,主要用来提供jsp页面的相关信息,以及编码配置

简单来说,JSP就是在Html中嵌入Java代码。


JSP的执行过程

下图是简单的画了一个jsp的执行过程

这里写图片描述

大概的执行流程如下

  1. 用户向服务器发一个HTTP请求,例如请求index.jsp
  2. 服务器查找到index.jsp
  3. 将jsp文件转换成Servlet源文件,实际上就是java代码
  4. 编译转换后的java代码生成.class文件并执行
  5. 将执行结果返回给用户

导入相关jar包

我们想要使用某些API时需要先导入jar包,常用的比如jsp-api.jar、servlet-api.jar包等

在IDEA中如果不导入jar包可能无法使用相关的api。如果你发现某些api报错或者没有提示,很可能就是你没有导jar,注意检查一下。

我们先导入jsp-api.jar
jsp-api.jar和servlet-api.jar在我们Tomcat 安装或解压目录中的lib目录中就有,也可以去网上下载

这里写图片描述

可以看到lib目录中有很多jar包,其中就有jsp-api.jar

这里写图片描述

我们先在WEB-INF目录下创建一个lib文件夹,将jsp-api.jar文件粘贴到该目录,然后右键Add as Library 点击ok完成导入即可
这里写图片描述

以后导入别的jar包也是这么导。
右键Add as Library即可


JSP基本语法

1.JSP声明语法

语法

<%!      %>

代码示例:

<%!

    /*声明成员变量*/
    String name = "yzq";

    /*声明成员方法*/
    String getName() {
        return name;
    }

%>

注意:声明语法用来定义成员变量成员方法

2.JSP程序脚本

语法

<% 
  %>

代码写在<% %>之间,包括局部变量的声明,表达式,逻辑语句等
可以看做是java中的方法
程序脚本可以跟页面代码进行组合使用

代码示例


<%

    /*JSP程序脚本
     *可以声明局部变量,表达式,编写逻辑语句等
     *
     * */

    String name = "yuZhiQiang";//注意这里是局部变量
    int age = 25;//局部变量
    if (age > 25)
%>
你的名字是:
<%
    out.print(name);
    if (age > 30) {
%>
<h1>中年油腻大叔</h1>

<% 
    } else { 
%>
<h1>青年</h1>
<%
    }
%>

可以看到上面我们的html标签和程序脚本组合在一起了

我们来看看运行后的页面

这里写图片描述

注意,程序脚本中的变量是局部变量,和上面的成员变量的区别就在于局部变量只能在程序脚本代码块中使用,并且必须声明在前使用在后。
就相当于java中的普通方法

3.JSP注释脚本

语法格式 <%-- --%>

<%--<%  String msg="注释示例"; %>--%>

在程序脚本中,我们写的其实就是java代码,所以java原本的单行注释和多行注释都是可以使用的

JSP内容输出表达式

语法<%= %>

示例代码


<%!
    /*声明成员变量*/
    String name = "yzq";

    /*声明成员方法*/
    String getName() {
        return name;
    }
%>


<%=name //输出表达式不需要写分号%>
<%=getName()%>

包引入语法

语法:<%@ page import="要导入的包" %

示例代码:

<%@ page import="java.util.ArrayList" %>
<%@ page import="java.util.List" %>

在Idea中,当我们使用到需要导包的api时,会自动帮我们导包。了解一下即可

现在都是前后端分离的模式开发了,而且随着前端技术的发展,我们已经很少使用jsp去写页面了。所以,简单了解即可,不用话太多时间和精力去深入。

下一篇:

Java Web之JSP内置对象


如果你觉得本文对你有帮助,麻烦动动手指顶一下,可以帮助到更多的开发者,如果文中有什么错误的地方,还望指正,转载请注明转自喻志强的博客 ,谢谢!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

喻志强(Xeon)

码字不易,鼓励随意。

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值