前面用注解配置了mybatis,非常的简单,但是在写动态sql语句的时候会非常的麻烦,所以这边我们用xml来重新配置一下
在resource目录下新建
SqlMapConfig.xml
主配置文件
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configurationPUBLIC "-//mybatis.org//DTD Config 3.0//EN""http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration><!-- 这里写配置内容 --><environments default="mysql"><environment id="mysql"><transactionManager type="JDBC"></transactionManager><dataSource type="POOLED"><property name="driver" value="com.mysql.cj.jdbc.Driver"/><property name="url" value="jdbc:mysql://119.23.53.78:3306/kejin?serverTimezone=CST"/><property name="username" value="kejin"/><property name="password" value="123456"/></dataSource></environment></environments><!-- 指定配置文件的位置--><mappers><mapper resource="com/k1998/mybatis/dao/IUserDao.xml"/></mappers></configuration>
在resource目录下新建同等级的配置文件
mapper配置文件
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapperPUBLIC "-//mybatis.org//DTD Mapper 3.0//EN""http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.k1998.mybatis.dao.IUserDao"><!-- SQL语句 --><select id="findAll">select * from user</select>
</mapper>
配置文件相关属性
id 对应dao层的方法
属性 | 值 |
---|---|
id | 对应dao层的方法 |
parameterType | 对应传入的参数属性类型 |
resultType | 对应返回的属性类型 |
案例
查询
只需要返回值的类型
<select id="findAll" resultType="com.k1998.mybatis.bean.User">select * from user</select>
新增
只需要传入值的类型
<select id="saveUser" parameterType="com.k1998.mybatis.bean.User">insert into user(username, password) values (#{username},#{password})</select>
删除
<select id="deleteUser" parameterType="com.k1998.mybatis.bean.User">DELETE FROM user WHERE id = #{id}</select>
修改
<select id="updateUser" parameterType="com.k1998.mybatis.bean.User">update user set username=#{username},password=#{password} where id=#{id}</select>
配置文件相关属性简化
可将resultType改为resultMap
上面添加
<resultMap id="userMap" type="com.k1998.mybatis.bean.User"><id property="id" column="id"></id><result property="username" column="username"></result><result property="password" column="password"></result></resultMap>
<select id="findUserByCondition" resultMap="userMap" parameterType="com.k1998.mybatis.bean.User">