jsp中<% =表达式 %>报错,而<% out.print(表达式); %>不报错

<%@ page language="java" import="java.util.*,java.sql.*" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<%@ page import="beans.User" %>
<%@ page import="dao.UserForDB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>用户</title>
</head>
<body>
    <%
        UserForDB userForDB=new UserForDB();
        ArrayList<User> users=userForDB.queryUsers();
    %>
    <table>
        <tr>
            <td>用户名</td>
            <td>密码</td>
        </tr>
        <%
         for(int i=0;i<users.size();i++){
             User user=(User)users.get(i);
        %>
        <tr>
            <td>
                <% out.println(user.getUsername());%>
            </td>
            <td>
                <% out.println(user.getPassword()); %>
                <% =user.getPassword() %>
             </td>
        </tr>
        <%
         }
        %>
    </table>
</body>
</html>

图片描述

为什么会出错呢?两者不应该是等同的吗?搞不懂这错误为什么这么诡异。

阅读 9k
1 个回答
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进