测试环境 IDEA2021
在打印班级平均分的时候,发现所有班级平均分都是0.0
先去检查了一遍SQL语句,确认没有错误
public List<ClassAvgScore> queryClassAvgScore(){ return scoreDAO.QueryMany("SELECT ClassRoom,AVG(score) AS score FROM Student GROUP BY ClassRoom ORDER BY ClassRoom ASC,AVG(score)DESC;",ClassAvgScore.class); }
数据库学生表
检查了好久才发现用于接收查询结果的model类属性名写错了。没有和数据库表的列名相同
private int ClassRoom; private double AvgScore; public double getAvgScore() { return AvgScore; } public void setAvgScore(double avgScore) { AvgScore = avgScore; } public int getClassRoom() { return ClassRoom; }
在model类里写的是AvgScore 而数据库表的列名是score 导致数据无法装进。
解决办法
把model类里面的属性名改为和和数据库表的列名一样就解决了
注意:我这条查寻语句把列名重命名了 as score ,所以model类属性名要改成重命名后的名字而不是表的列名