关于数据库和mybatis的mapper关系

这里说明一下关于数据库,数据库对应实体各种复杂情况关系映射。
最基本的实体:
比如:(这里面不涉及复杂map,list,set等)

@Data
@Getter
@Setter
@Component
public class TestUser {

private Integer testUserNo;

private String testUserName;

private String testUserSex;
}

数据库:
在这里插入图片描述
resultMap最终将数据库查出的结果,映射到pojo(实体)上
type是指定映射到哪一个实体;id是相对应的resultMap的id

这里有两种属性,主键属性和普通属性
1,主键属性方式(是主键)
user_no是主键:

	<id property="testUserNo" column="user_no"/> 

2,普通属性(即不是主键)
user_name不是主键

<result property="testUserName" column="user_name"/>

完整的mapper.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://www.mybatis.org/dtd/mybatis-3-mapper.dtd">
<!-- namespace是对应的定义方法mapper,会去拿到对应的geTestUsers方法。这样才建立起了输入,返回的对应的关系 -->
<mapper namespace="com.cun.mapper.TestUserMapper">
<resultMap type="com.cun.entity.TestUser" id="TestUser">
<!-- property是对应的实体属性,column是对应的数据库column项-->
	<id property="testUserNo" column="user_no"/> 
	<result property="testUserName" column="user_name"/>
	<result property="testUserSex" column="user_sex"/>
</resultMap>

<select id="geTestUsers" resultMap="TestUser">
    select * from test_user
</select>
</mapper>

在我们深入更加复杂情况前,我们需要了解mapper3.0下常用的标签。我们从mapper开始讲起。
mapper: 是总标签,所有标签都包含在内。
namespace:命名空间。如果采用的是Mapper接口代理的方式开发,Mapper的映射文件中namespace必须为接口的全名,比如这里namespace=“com.cun.mapper.TestUserMapper”。
在这里插入图片描述
最常见的增删改查select,insert,update,delete。

<?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="Mapper.EmpMapper">
	/
  • 2
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值