连接池与mybatis

1.连接池

特点:创建一些固定的可重用的连接对象,重复利用。

           被某个持有的线程使用完毕之后,然后归还连接池中,保证线程安全。

2.mybatis

mybatis插入数据的时候,获取表中自增长主键id的值(最后一次插入数据值)

insert标签中子标签seletkey

(1)属性:

        keyProperty:实体类中的属性值(通过id字段要和表中id字段映射)

        keyColumn:表中的主键字段 id字段

        order:什么时候执行 sekectkey标签中的语句

                SELECT    LAST_INSERT_ID()

         AFTER:在执行插入之后,执行selectkey的语句,获取最后一次自增长主键的id值。

        BEFORE: 插入数据之后执行

        resultType: 获取到的自增长主键类型 int

(2)模糊查询

             mybaits固定属性 ‘%${value}%’

              ${} : 字符串拼接符号

               值和 % % 之间进行拼接

        id IN(3,6,9); 条件 使用mybatis提供的动态sql 

        foreach标签将里的数据遍历出来。

        collection:当前实体类中封装的集合属性名称

        QueryVo里面的集合属性就是 ids

        open:使用子查询 in(x,x,x) 以什么格式开始查询

              现在" id  in ("

           separator:分割符号  ,隔开

           close:以什么格式结束 ")"

           item:循环遍历过程中的变量名称

           foreach中间的内容  #{item里面指定的变量名称}

(3)动态的sql片段

         将重复性的sql抽去出来,在其他sql中引入这个sql片段即可

        refid:引入sql片段指定的id

      <include  refid="mySelectSql"/>

mybatis里面的占位符号 #{实体类的属性名称}

(4)当表中的字段和实体类属性名称不对应的情况下

                        方式1:在查询的时候不使用 *

                                      而且给出具体的字段名称,别名和实体类的属性名称一致即可

<select id="findALL" resultType="student">
         select
             s.id stuId,
             s.name stuName,
             s.age  stuAge ,
             s.address stuAddress,
             s.birthday stuBirthday
          from student s;
</select>

resultMap:

什么时候使用?

1)当实体类属性和字段一样

2)mybatis多表查询的时候可以用

使用方式

首先在映射文件中定义resultMap

然后在具体的增删改查语句讲resulMap引入

resultMap里面就是可以将每一个字段和实体类的属性一一映射

定义resultMap

id:resultMap它的标识id

配置主键字段:

表中键字段 id和实体类的属性id 一致

property:实体类的属性名称 stuId

column:表中字段列的名称 主键id

普通字段和实体类的其他属性名称一一对应

                                

                                                        

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值