在Spring+Spring MVC+Mybatis项目调试中,
// xml文件中获取数据代码如下
<select id="getAllPerson" resultType="com.myTest.entity.PerLoc">
select a.name as "name",b.Lname as "Lname"
from z_person a inner join z_location b on a.Lid=b.Lid
</select>
在前台用EL表达式获取mybatis返回的数据
<!-- 前台从controller获取Attribute中数据(把mybatis返回的数据转成list) -->
<c:forEach var="p" items="${personList }">
<tr>
<td>${p.name }</td> <!--人名-->
<td>${p.Lname }</td> <!--所在地名-->
<td><button>修改</button></td>
</tr>
</c:forEach>
时出现错误:Property ‘Lname’ not found on type com.myTest.entity.PerLoc
但是查询PerLoc.java实体类时,却有Lname这个属性
package com.myTest.entity;
public class PerLoc {
private String name;
private String Lname;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getLname() {
return Lname;
}
public void setLname(String lname) {
Lname = lname;
}
}
在debug模式下可以查看从Mybatis返回的数据:
Lname 已经被修改成 lname 了(另例:MyBoy->myBoy;MYBoy->myboy),所以修改前端代码
${p.Lname } 改为 ${p.lname }
即可。
注意返回时property大小写!!!