SQL映射文件

1.使用MyBatis实现条件查询

1.SQL映射文件

mapper:映射文件的根元素节点,只有namespace(命名空间),其作用如下:
◆ 用于区分不同的mapper全局唯一
◆ 绑定DAO接口,即面向接口编程。.
cache: 配置给定命名空间缓存。
cache-ref:从其他命名空间大的引入缓存配置
result Map:用来描述数据库结果集和对象的对应关系。
sql:可以重用的SQL块,也可以被其他语句引用。
insert:映射插入语句。
update:映射更新语句
delete:映射删除语句
select:映射查询语句。

2.使用select完成单条件查询

                     别名于java类型映射

别名 映射的类型 别名 映射的类型
String String Double Double
Byte Byte Float Float
Long Long Boolean· Boolean
Int Integer Map Map
Integer Integer Heshmap Heshmap
Short Short Date Date
ArrayList ArrayList List List

3.使用result Map完成查询结果的展现

ResultMap元素的属性和子节点:

id属性:唯一标识,此id值用于select元素resultMap属性的引用。
type属性:表示resultmap的映射结果类型。
result子节点:用于标识一下简单属性,其中column属性表示从数据库中查询的字符段名。

1.resultType

resultType直接表示返回类型 ,包括基础数据类型和复杂数据类型。

2.result Map

result Map则是对外部resultmap定义的引用,对应外部resultMap的id,表示返回结果映射到哪一个resultMap上。

3.resultType和resultMap关联

在 MyBatis进行查询映射的时候,其实查询出来的每个字段值都放在一个对应的Map里面,其中键是字段名,值则是其对应的值。当 select元素提供的返回类型属性 result Type的时候, MyBatis 会将Map里面的键值对取出赋给 result Type所指定的对象对应的属性(即调用对应的对象里的属性的setter方法进行填充)。正因为如此,当使用 resultType的时候,直接在后合就能接收到其相应的对象属性值。由此可看出,其实 MyBatis的每个查询映射的返回类型都是resultMap,只是当我们提供的返回类型属性是 result Type的时候,MyBatis会自动把对应的值赋给 result Type所指定对象的属性而当我们提供的返回类型是 resultMap的时候,因为Map不能很好地表示领域模型,我们就需要通过 进一步的定义把它转化为对应的实体对象当返回类型是 resultMap时,也是非常有用的,这主要用在进行复杂联合查询上,当然在进行简单查询时是没有什么必要的,使用result Type足以

2.使用MyBatis实现增删改操作

1.使用inert完成增加操作

Insert元素的属性

id:与select元素的id一样,是命名空间中唯一的标识符,可以被用来引用这条语句。

2.使用update完成修改操作

要修改的user对象作为入参,返回值为int类型,即可返回执行SQL影响的行数。

3.使用delete完成删除操作

参数:delid(用户id),使用@param注释来指定参数名为id,返回值为int类型,即可回执行SQL影响的行数。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值