5

我有如下代码:

FriendsList = new ArrayList()
....   
ResultSet rs = st.executeQuery(Select);
while (rs.next()) {
   Member member = new Member(rs);
   FriendsList.add(member);
}

它成功获取结果并转到 Member 类的构造函数并向其添加数据。但是一旦我尝试使用我的 jsp 文件中的 FriendsList 属性访问其属性之一,我就会遇到以下错误:

 "Caused by: javax.el.PropertyNotFoundException: Property 'Name' not found on type   
 application.Member"

使用 Eclipse,我为 Member 类的每个属性生成了一个完整的 setter 和 getter 列表,如下所示:

    public String getName() {
    return Name;
}
public void setName(String name) {
    Name = name;
}
4

1 回答 1

10

关键是“属性名”到方法名的转换。通常,getter 名称是通过获取属性名称、将第一个字符大写并在前面加上“get”来获得的。

因此,如果您想调用 getName 方法,则属性是带有小写 n 的“名称”,而不是大写 N。

对于实际上以大写字母等开头的属性还有许多特殊情况,但是如果您将其设置为属性名称始终以小写字母开头,则生活会简单得多。

于 2012-09-15T04:32:49.817 回答