JSP & EL表达式 & JSTL -2024/10/20

JSP

JSP(全称:Java Server Pages):Java 服务端页面。是一种动态的网页技术,其中既可以定义 HTML、JS、CSS等静态内容,还可以定义 Java代码的动态内容,也就是 JSP = HTML + Java
导入JSP依赖

<dependency>
    <groupId>javax.servlet.jsp</groupId>
    <artifactId>jsp-api</artifactId>
    <version>2.2</version>
    <scope>provided</scope>
</dependency>

事例

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>

<h>你好</h>

${users}

</body>
</html>

EL表达式

//将数据保存到request域中
        req.setAttribute("users",users);
        //转发
        req.getRequestDispatcher("/Jsp_Test.jsp").forward(req,resp);

通过${}就可以获取到request域中的内容

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>

<h>你好</h>

${users}

</body>
</html>

JSTL标签

jstl:jsp标准标签库,使用标签取代jsp上面的java代码

<c:if>标签,相当于if

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html>
<head>
    <title>我是个标题</title>
</head>
<body>

<c:if test = "${status == 1}">
    <h1>你好</h1>
</c:if>

<c:if test = "${status == 0}">
    <h1>FALSE!!!</h1>
</c:if>

</body>
</html>

<c:foreach>

<%--foreach演示--%>
<table border="1" cellspacing="0" width="800">
    <tr>
        <th>用户名</th>
        <th>密码</th>
    </tr>

    <c:forEach items="${users}" var="user">
        <tr>
            <td>${user.username}</td>
            <td>${user.password}</td>
        </tr>
    </c:forEach>


</table>

<c:foreach> 用法二

类似于 Java 中的普通for循环。涉及到的 <c:forEach> 中的属性如下

  • begin:开始数

  • end:结束数

  • step:步长

实例代码:

从0循环到10,变量名是 i ,每次自增1

<c:forEach begin="0" end="10" step="1" var="i">
    ${i}
</c:forEach>

posted @ 2024-10-20 22:19  XYu1230  阅读(6)  评论(0编辑  收藏  举报