实际上JSP中的“价值”是什么意思?

时间:2011-05-12 08:27:44

标签: java jsp jstl el javabeans

我最近阅读了JSP,并对它使用的javabeans技术产生了疑问。让我们说下面的JavaBeans代码:

package mortgage;
public class Mortgage
{
    private double amount = -1.0;
    public void setAmount(double amount)
    {
         this.amount = amount;
    }
}

让我说我必须在我的JSP中使用这个JavaBeans,并从HTML表单或URL查询字符串和JSP代码中获取参数值,如下所示:

<jsp:useBean id="calc" class="mortgage.Mortgage" />
<p> Testing . . . 
  <c:set target="${calc}" property="amount"  value="${param.mortgageAmount}" />
   . . . . . 

这个例子在我的书中几乎没有修改过。我的问题是上面代码JSP中的value是做什么的? mortgageAmount来自哪里?(这是HTML表单元素的值吗?) 以及targetproperty的作用是什么?

由于我是新手,我不知道上面的代码到底发生了什么。如果我错了,请帮助我并纠正我?

2 个答案:

答案 0 :(得分:3)

value表示将设置为target

的表达式
  

mortgageAmount来自哪里?

它假设是在你的代码中使用param.mortgageAmount在你的代码中使用它来作为参数

yourapp/page.jsp?mortgageAmount=someVAlue

用Simlper的话

值是要评估的表达式,将被设置为 由target

表示的property对象属性

另见

答案 1 :(得分:1)

param是一个JSP隐式对象。这是一个地图,其条目是页面参数 - 所以任何东西都作为查询字符串中的参数,或者(我认为)通过表单发布。

Targetproperty管辖c:set所做的事情;它将命名目标对象上的命名属性设置为给定值。