问题:java.lang.NoSuchMethodException: com.tgb.model.GoodsInfo.()和jsp页面dagegrid表格数据缺失
一、构造方法缺失造成
**java.lang.NoSuchMethodException: com.tgb.model.GoodsInfo.<init>()**
at java.lang.Class.getConstructor0(Class.java:2902)
at java.lang.Class.getDeclaredConstructor(Class.java:2066)
at org.apache.ibatis.reflection.factory.DefaultObjectFactory.instantiateClass(DefaultObjectFactory.java:57)
at org.apache.ibatis.reflection.factory.DefaultObjectFactory.create(DefaultObjectFactory.java:45)
at org.apache.ibatis.reflection.factory.DefaultObjectFactory.create(DefaultObjectFactory.java:38)
at org.apache.ibatis.executor.resultset.FastResultSetHandler.createResultObject(FastResultSetHandler.java:387)
at
解决方法是加一个缺失的构造方法
//构造方法
public GoodsInfo() {
super();
}
二、Mapper中类属性要与easyui datagrid columns field 保持大小写高度一致。否则datagrid无法显示数据。
1、Map
private String gid; //商品ID
private String gname;//商品名称
private String gcid;//商品类别
private String gunit;//单位
private float gpin;//进价
private float gpout;//售价
private int gamount;//库存
private String gid; //商品ID
private String gname;//商品名称
private String gcid;//商品类别
private String gunit;//单位
private float gpin;//进价
private float gpout;//售价
private int gamount;//库存
2、jsp
columns:[[
{field:'gname',title:"商品名称",width:100},
{field:'gcid',title:"商品类别",width:100},
{field:'gunit',title:"单位",width:100},
{field:'gpin',title:"进价",width:100},
{field:'gpout',title:"售价",width:100},
{field:'gamount',title:"库存",width:100} ,
{field: "_operate", title: "操作", width: 160, formatter: function (value, row, index)
{return RenderTableButton(value, row, index);}
}
]],
columns:[[
{field:'gname',title:"商品名称",width:100},
{field:'gcid',title:"商品类别",width:100},
{field:'gunit',title:"单位",width:100},
{field:'gpin',title:"进价",width:100},
{field:'gpout',title:"售价",width:100},
{field:'gamount',title:"库存",width:100} ,
{field: "_operate", title: "操作", width: 160, formatter: function (value, row, index)
{return RenderTableButton(value, row, index);}
}
]],