gpt4 book ai didi

java - JSP——表达式语言

转载 作者:行者123 更新时间:2023-12-01 22:43:17 24 4
gpt4 key购买 nike

我正在为 OCEWCD 做准备。下面的代码出现在jsp页面中

<jsp:useBean id="acct1" class="aaa.bbb.Account"/>

<jsp:useBean id="acct2" class="aaa.bbb.Account " />

<jsp:setProperty name="acct2" property="address" value="${acct1.address}" />

此代码尝试将“acct1”对象的“address”属性复制到“acct2”对象的“address”属性。

解释说,el表达式(value="${acct1.address}")带来了对acct1对象的address属性的引用。

但我的理解是,它将带来 acct1 对象的地址属性的字符串表示形式(如 acct1.getAddress().toString() )。

因为如果下面的代码出现在jsp页面中,

<%
Request.setAttribute(“A”, new A());
%>
${A}

输出可能类似于

org.apache.jsp.newjsp_jsp$1A@1bcdccc3.

解释一下。谢谢

最佳答案

仅当对象在输出中打印时才会转换为字符串:

<% Request.setAttribute(“A”, new A()); %>
${A} <%-- A.toString() is called here --%>

<jsp:setProperty name="acct2" property="address" value="${acct1.address}" />没有任何内容打印到输出中,因此不会发生字符串转换。实际上,这与 acct2.setAddress(acct1.getAddress()) 相同。

关于java - JSP——表达式语言,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25780733/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com