Mybatis
Mybatis
如何通过Mybatis进行crud?
1、创建mybatis配置文件:该文件的最重要的两个配置就是:
-
数据源
数据源配置在enviroments标签中配置,每个enviroments下可以配置多个environment,每个environment下必须配置transactionmanger(事务管理器)和datasource(数据源);
-
注册映射器
mappers标签下可以注册多个映射器,可以通过三种方式对映射器进行注册:
- 用文件路径引入:要求sql映射文件在类路径下,如果不是则要求写入路径名
<mappers> <mapper resource="EmployeeMapper.xml"/> <mapper resource="EmployeeMapperAnnotation.xml"></mapper> </mappers>
- 用包名引入:会扫描当前包下的所有sql映射文件,但是要求sql映射文件和映射接口要在同一个包下(不推荐)
<mappers> <package name="com.noah.crud.dao"/> </mappers>
- 用类注册引入:要求sql映射文件和接口在同一个包下(不推荐)
<mappers> <mapper class="com.noah.crud.dao.EmployeeMapperAnnotation"></mapper> </mappers>
-
不在mappers标签中引入,而是直接在接口对应的方法上加上注解
public interface EmployeeMapperAnnotation { @Select("select * from tbl_employee where id=#{id}") public Employee getEmpById(Integer id); }
-
创建sql映射文件
namespace:名称空间为映射接口的全类名
针对每一个sql映射,应为其指定一个唯一表示该sql语句的id,该sql语句接收的参数类型和返回的结果集类型,通常是一个javabean类的全类名或别名;sql语句中的参数使用
{参数名}的形式
<mapper namespace="com.noah.crud.dao.EmployeeMapper"> <select id="getEmpById" parameterType="int" resultType="com.noah.crud.bean.Employee"> select * from tbl_employee where id = #{id} </select> </mapper>
贵有恒,何必三更睡五更起最是无用。