目录
[1.2添加 mapper 接⼝](#1.2添加 mapper 接⼝)
前言
接下来我们会使用的数据表如下:
对应的实体类为:UserInfo
所有的准备工作都在如下文章。
1.准备工作
1.1⽂件配置
如果是application.yml⽂件, 配置内容如下:
mybatis:
mapper-locations: classpath:mybatis/**Mapper.xml
如果是application.properties⽂件, 配置内容如下:
mybatis.mapper-locations=classpath:mapper/**Mapper.xml
按照mybatis.mapper-locations设置文件
起名无所谓最后以Mapper.xml结尾就行
1.2添加 mapper 接⼝
数据持久层的接⼝定义:(接口名自已决定)
import com.wh.myBatis.model.UserInfo;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
@Mapper
public interface UserInfoXmlMapper {
List<UserInfo> selectAllUser();
}
1.3添加MyBatis 的固定 xml 格式
在mybatis.mapper-locations的路径下
加MyBatis 的固定 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="com.wh.myBatis.mapper.UserInfoXmlMapper">
</mapper>
路径一定要正确
2.增删改查操作
为了增加开发效率,我们可以使用插件。
2.1增(Insert)
UserInfoXmlMapper接口
Integer insert(UserInfo userInfo);
UserInfoXmlMapper.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="com.wh.myBatis.mapper.UserInfoXmlMapper">
<insert id="insert">
insert into userinfo (username, password, age, gender)
values (#{username},#{password},#{age},#{gender})
</insert>
</mapper>
如果使⽤@Param设置参数名称的话, 使⽤⽅法和注解类似
返回⾃增 id
接⼝定义不变, UserInfoXmlMapper.xml 实现 设置useGeneratedKeys 和keyProperty属性
<insert id="insert2" useGeneratedKeys="true" keyProperty="id">
insert into userinfo (username, password, age, gender)
values (#{username},#{password},#{age},#{gender})
</insert>
2.2删(Delete)
UserInfoXmlMapper接口
Integer delete(Integer id);
UserInfoXmlMapper.xml的实现
<delete id="delete">
delete from userinfo where id = #{id}
</delete>
2.3改(Update)
UserInfoXmlMapper接口
Integer update(UserInfo userInfo);
UserInfoXmlMapper.xml的实现
<update id="update">
update userinfo set username=#{username} where id=#{id}
</update>
2.4查(Select)
UserInfoXmlMapper接口
List<UserInfo> selectAllUser();
UserInfoXmlMapper.xml的实现
<select id="selectAllUser" resultType="com.wh.myBatis.model.UserInfo">
select * from userinfo
</select>
MyBatis 会获取结果中返回的列名并在 Java 类中查找相同名字的属性
小驼峰与蛇形的结果映射
UserInfoXmlMapper.xml的实现
<resultMap id="BaseMap" type="com.wh.myBatis.model.UserInfo">
<id column="id" property="id"></id>
<result column="delete_flag" property="deleteFlag"></result>
<result column="create_time" property="createTime"></result>
<result column="update_time" property="updateTime"></result>
</resultMap>
<select id="selectAllUser2" resultMap="BaseMap">
select * from userinfo
</select>
以上为我个人的小分享,如有问题,欢迎讨论!!!
都看到这了,不如关注一下,给个免费的赞