1. 要查询表中多项记录时,xml文件中select正常写,但对应mapper中方法,要用ArrayList接收。
@Repository
public interface ProductMapper {
public String getProductNameById(@Param("id")Integer id);
public Product getProductById(@Param("id") Integer id);
public Integer getCount();
public ArrayList<Product> getAllProduct(); //此句为目标代码,要用ArrayList<Product>
}
public ArrayList<Product> getAllProduct();
要用ArrayList<Product>
<select id="getAllProduct" resultType="Product">
select * from mmall.product
</select>
2. 数据库表字段名与实体类属性名不一致
数据库字段名:
实体类属性名:
处理方法:
对应xml文件中,给数据库表字段名起别名,该别名与实体类属性名一致
<select id="getAllProduct" resultType="Product">
select *,
categorylevelone_id categoryleveloneId,
categoryleveltwo_id categoryleveltwoId,
categorylevelthree_id categorylevelthreeId,
file_name fileName
from mmall.product
</select>
3.Dao接口里的方法,是不能重载的,因为是全限名+方法名的保存和寻找策略。即,不能多个mapper层方法对应mapper.xml文件中同一个sql语句。