Day09-07.Mybatis-基础操作-查询(根据ID查询)
1.查询(根据ID查询)
1.SQL语句:select * from emp where id = 16;
2.接口方法:
@Select("select * from emp where id = #{id}")
public Emp getById(Integer id);
Emp(id=15, username=yulianzhou, password=123456, name=俞莲舟, gender=1, image=15.jpg, job=2,
entrydate=2011-05-01, deptId=null, createTime=null, updateTime=null)
2.数据封装
1.实体类属性名和数据库表查询返回的字段名一致,mybatis会自动封装。
2.如果实体类属性名和数据库查询返回的字段名不一致,不能自动封装。
3.解决方式:
1.起别名:在SQL语句中,对不一样的列名起别名,别名和实体类属性名一样。
@Select("Select id, username, password, name, gender, image, job, entrydate, dept_id deptId, create_time createTime, update_time updateTime from emp where id = #{id}")
public Emp getById(Integer id);
2.手动结果映射:通过@Results和@Result进行手动结果映射。
*@Results({
@Result(column = "dept_id", property = "deptId"),
@Result(column = "create_time", property = "createTime"),
@Result(column = "update_time", property = "updateTime")
})
@Select("Select * from emp where id = #{id}")
public Emp getById(Integer id);
3.开启驼峰命名:如果字段名与属性名符合驼峰命名规则,mybatis会自动通过驼峰命名规则映射。
在mybatis的application.properties配置文件中配置下面的东西就行了(相当于一个全局开关)
mybatis.configuration.map-underscore-to-camel-case=true