mybatis2

一般我们使用resulttype指定对应xml方法中的返回值时直接指定实体类的全类名即可,但是如果数据库中的字段与实体类的属性不同时我们就可以使用resultmap来指定字段名和属性的对应关系,如下
在这里插入图片描述
property代表实体类的属性值,column代表数据库的字段.这样即使数据库的字段名与属性名不一致,也可以建立起映射关系,只是,这样在执行时会多一些解析的过程,效率会略低.
动态sql的拼接
在这里插入图片描述
注意: MySQL的sql语句内的字段在Windows系统下是不区分大小写的,但是有关Java的属性要严格区分大小写.

mybatis的多表查询
表与表之间分为一对一,一对多,多对一和多对多
mybatis可以将多对一分成多个一对一,可以将多对多分为多个一对多.
一对一:
以user和account为例,一个用户可以有多个账号,多个账号可以对应一个用户,所以账号和用户之间是多对一的关系,但是单看一个账号只属于一个用户,因此可以看成是多个一对一,账号是从表内容,用户是主表内容,所以账号实体类里面可以封装一个用户类,关于配置文件如下
在这里插入图片描述
association关键字的作用就是将用户封装到账号内,这样在查询账号时即可带着用户的信息一起.
一对多:
反过来,查询用户是若想要带着账号则需要配置一对多的设置,如下图
在这里插入图片描述
主表实体内带有从表实体的集合.
多对多:
以角色和用户举例,一个用户可以有多个角色,一个角色也可以赋予给多个用户,所以,用户和角色之间是多对多的关系因此在mybatis配置中相当于配置两个一对多,角色和用户互为一对多,配置就像配置一对多一样,不过写sql语句时注意中间表,靠它进行两个表之间的连接.

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值