我知道你可以使用<jsp:useBean>标签实例中的JSP对象,而不诉诸scriptlet代码。但是我想初始化一个整数谁值是EL表达式的结果,是这样的:

<jsp:useBean id="total" class="java.lang.Integer">
    <jsp:setProperty name="amount" value="${param1 + param2}"/>
</jsp:useBean>

当然因为Integer对象没有做一个属性名为“量”,其值可以被设置的唯一方法是通过一个构造符参数,这将无法正常工作(即,整数对象是不可变)。是否有任何的方式来实例化这样的对象和设置它的值,而无需使用scriptlet代码?

谢谢, 唐

有帮助吗?

解决方案

<强> <c:set var="amount" value="${param1 + param2}" scope="page" />

其他提示

原始包装也没有默认的构造函数,所以你甚至不能初始化一个方式。

我不知道该EL应该以这种方式使用。它更多的是一种模板语言的。目前尚不清楚有哪些优势你正在尝试做拥有这样的:

<%
  Integer total = new Integer(param1 + param2);
%>

和然后只是用<(%)=总%>在需要的值被输出。你也可以这样做:

<%
  pageContext.setAttribute("total", new Integer(param1 + param2));
%>

如果你想要的值是在页面的范围,想useBean的就行了。

如果您有一颗豆,可你只是更新参数1和2中的豆?创建一个方法,setAmount(参数1,参数2),并将其设置使用getAmount(前),这是什么豆会调用。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top