一.本次主要介绍知识点
1.MyBatis中可以面向接口操作数据,要保证两个一致:
(1)mapper接口的全类名和映射文件的命名空间(namespace)保持一致
(2)mapper接口中方法的方法名和映射文件中编写SQL的标签的id属性保持一致
2.查询的标签select必须设置属性resultType或resultMap,用于设置实体类和数据库表的映射关系
(1)resultType:自动映射,用于属性名和表中字段名一致的情况
(2)resultMap:自定义映射,用于一对多或多对一或字段名和属性名不一致的情况
二.项目结构
三.项目地址:
gitee地址:gitee.com/kangwubin/s…
四.操作数据库接口方法的配置文件:UserMapper.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="xatu.mybatis.mapper.UserMapper">
<!-- MyBatis中可以面向接口操作数据,要保证两个一致:
1.mapper接口的全类名和映射文件的命名空间(namespace)保持一致
2.mapper接口中方法的方法名和映射文件中编写SQL的标签的id属性保持一致-->
<!--int insertUser();方法名与sql语句的id保持一致-->
<insert id="insertUser">
insert into t_user values(null,'admin','123456',23,'男','12345@qq.com')
</insert>
<!-- void updateUser -->
<update id="updateUser">
update t_user set username='root',password='123456' where id = 1
</update>
<!-- void deleteUser() -->
<delete id="deleteUser">
delete from t_user where id = 3;
</delete>
<!--User getUserById()-->
<!--查询的标签select必须设置属性resultType或resultMap,用于设置实体类和数据库表的映射关系
resultType:自动映射,用于属性名和表中字段名一致的情况
resultMap:自定义映射,用于一对多或多对一或字段名和属性名不一致的情况-->
<select id="getUserById" resultType="xatu.mybatis.pojo.User">
select * from t_user where id = 1
</select>
<!--List<User> getAllUser
resultType="User":User为别名,在核心配置文件的<typeAliases>标签下配置的别名
-->
<select id="getAllUser" resultType="User">
select * from t_user
</select>
</mapper>