老师,这个属性明明存在,怎么会,如下


package com.cl.domain;
public class Book {
private String id;
private String bookName;
private String catgorys;
private String description;
private float price;
public Book(String id, String bookName, String catgorys, float price, String description) {
this.id = id;
this.bookName = bookName;
this.catgorys = catgorys;
this.description = description;
this.price = price;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getBookName() {
return bookName;
}
public void setBookName(String bookName) {
this.bookName = bookName;
}
public String getCategory() {
return catgorys;
}
public void setCategory(String catgory) {
this.catgorys = catgory;
}
public String getDescription() {
return description;
}
public void setDescription(String description) {
this.description = description;
}
public float getPrice() {
return price;
}
public void setPrice(float price) {
this.price = price;
}
@Override
public String toString() {
return "User [id=" + id + ", bookName=" + bookName + ", catgory=" + catgorys + ", description=" + description
+ ", price=" + price + "]";
}
}
#showBooks.jsp显示的代码段
<tbody id="cont">
<c:forEach items="${applicationScope.bList}" var="book">
<tr>
<td>${book.id }</td>
<td>${book.bookName }</td>
<td>${book.catgorys }</td>//这个地方报错,可是当我把这个注释掉时,还是报同样的错误,
<td>${book.price }</td> //起初是一位存在同名或者输入有误,但排查了都不是
<td>${book.description }</td>
</tr>
</c:forEach>0
收起
正在回答
1回答
同学的get set 方法是自己手写的么?
这里少了一个s多了一个e,它对应不上就会报错了:

应该改成getCatgorys 和 setCatgorys。
建议同学重新把set get方法用自动生成的方法生成一下。尽量不要手写。
如果我的回答解决了你的疑惑,请采纳!祝学习愉快!
从网页搭建入门Java Web2018版
- 参与学习 人
- 提交作业 1088 份
- 解答问题 10204 个
如果你有Java语言基础,又想以后从事Java Web开发,那么本路径是你的不二选择!本路径从网页搭建开始入手,通过大量案例来学习Java Web基础。定能助你完成Java Web小白的蜕变!
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星