Spring4-整合MyBatis

IoC的典型应用

让容器创建对象,初始化属性值

应用:

  1. 管理三层中的核心类Controller,Service,Dao
  2. 框架整合:使用Spring框架管理其他框架的核心类,SSH,SSM

Spring整合MyBatis

MyBatis:

​ jar包

​ 主配置文件:实体类别名配置,四大参数,mapper映射文件

​ 映射文件:sql语句

​ MyBatisUtils:SqlSessionFactory,SqlSession

​ Dao接口

​ Mapper动态代理自动生成Dao接口的实现类

一、添加jar包

mybatis的jar包

image-20200917141913687

spring的jar包

新加三个包

image-20200917142126178

spring对mabatis的整合包(框架之间整合都需要整合包)

image-20200917142259326

其他jar包(连接池,单元测试,连接)

image-20200917142518216

不用框架使用到共同的第三方jar包,去掉重包,留下高版本,向下兼容(如logging和log4j,留下高版本的一对)

一共21个jar包,不要少(log4two和logbank可以不要,就17个)

image-20200917151822323

二、配置测试项目(spring整合mybatis)

2.1 mybatisconfig

image-20200917143509249

2.2 映射文件

和mybatis一样,该怎么写怎么写,namespace千万不要忘记写

image-20200917143641459

2.3 applicationContext

image-20200917144053769

2.3.1整合包中的类

配置的整合包中的核心类:sqlSessionFactoryBean

其中的需要配置的属性

image-20200917152148225

属性的set方法及其他方法

image-20200917152206883

image-20200917224033670

2.3.2 主配置文件

image-20200917144445369

2.3.3 配置c3p0数据源

image-20200917144851297

换个方法告诉jdbc.properties的位置,注意是$符号而不是#,别搞混了

image-20200917145235717

2.3.4 配置mapper

之前的image-20200917145324720

spring自动生成所有实现类(不用每次getMapper生成一个实现类,自动生成所有的实现类)

注意这里是String类型的name,是value而不是ref

这里的id名字随便起

image-20200917145811977

注意

mybatis中自动生成映射文件,正常来说首字母变小写,而前两个都是大写的时候是不变的,spring中bean生成也是这样的,不要像IStudentDao这么写

image-20200917171105123

2.4 dao测试

只要读到applicationContext,sqlSession和所有dao的映射文件就都有了,直接用

image-20200917150319446

三、项目service

service类似于上面的test,设置注入三层中的核心类

注解方法只能改下面这个,以后会用配置类来写

image-20200917153011371

service

image-20200918000814448

service测试

image-20200918000914844

四、注解

注解方法只能改下面这个,以后会用配置类来写

image-20200917153011371

4.1只能替换servicebean

当前包及其子包

image-20200918001853830

4.2

因为之前配置了bean的id叫studentService,而这里就要改成studentServiceImpl

image-20200918001932166

4.3

byType

image-20200918002017622

byName

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值