1.注解模式(了解)
可以在注解中完成sql的编写,适合单表操作
public interface TeacherDao {
@Select(value = "select * from tbl_teacher where id=#{id}")
public Teacher getById(int id);
@Insert(value = "insert into tbl_teacher(name,age,salary) values(#{name},#{age},#{salary})")
public int add(Teacher teacher);
@Select(value = "select * from tbl_teacher")
public List<Teacher> selectAll();
public int delete(int id);
}
2.mybatis的优化
2.1添加mybatis的sql日志
帮在控制台显示sql执行语句, 查看sql是否写错。
①引入log4j依赖
<!--log4j-->
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
②日志文件
该文件名必须为log4j.properties,必须放在resources下。
2.2为实体类起别名
2.3将数据源信息提取到属性文件中
3.mybatis处理多个参数
4.xml出现特殊字符
1.第一种使用转义符: <[<] >[>] &[&]等
2.第二种使用CDATA标签:<![CDATA[sql]]>
5.获得主键递增的值
useGeneratedKeys:是否使用生成的主键值
keyProperty:把生成的主键值赋给哪个属性
6.模糊查询
7.解决列名和属性名不一致的问题
第一种: 查询时为列起别名---让别名和属性名一样。
第二种: 使用resultmap标签