JSTL出现直接输出${ }的错误

如图,我想通过JSTL在页面上输出数据库中的成员信息,但是却出现了直接输出${person.name}的错误,添加了以下测试信息发现可以正常输出"Ciallo~",所以错误不在引用JSTL的地方

<c:out value="Ciallo~"/>

如果不存在JSTL引用错误,直接输出${person.name},只可能是EL表达式内容被直接当成字符串输出

经过查阅资料提炼到以下信息

 isELIgnored="false"默认为真。

如果该语句为真,那么JSP中的表达式被当成字符串处理

需要添加这条语句让JSP中JSTL表达式正确显示,不被当成普通的字符串

所以只需要在引用JSTL的地方添加如下信息(第三行)

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ page isELIgnored="false"%>

 即可得到正确输出

 JSP源码如下

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ page isELIgnored="false"%>
<html>
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>phonebook</title>
</head>
<body>

<c:out value="Ciallo~"/>
<br>
<table border="1" width="80%">
    <tr align="center">
        <td>序号</td>
        <td>姓名</td>
        <td>地址</td>
        <td>性别</td>
        <td>年龄</td>
        <td>电话</td>
        <td>操作</td>
    </tr>
    <c:forEach items="${people}" var="person" varStatus="status">
        <tr align="center">
            <td><%=++num%></td>
            <td>${person.name}</td>
            <td>${person.address}</td>
            <td>${person.sex}</td>
            <td>${person.age}</td>
            <td>${person.telNum}</td>
            <td><a href="#">修改</a> <a href="#">删除</a></td>
        </tr>
    </c:forEach>

</table>
</body>
</html>

最后吐槽一下,我真是铸币啊,怎么这么菜啊.....

EL表达式没好好学了属于是QwQ

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

瑶湖女子师专王大珩

你的鼓励将是我创作的最大动力

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

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

打赏作者

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

抵扣说明:

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

余额充值