动力节点王鹤MyBatis框架『第二章』MyBatis入门实例

最近因为项目需要,又重新学习了一下MyBatis,发现好多以前学的都忘得差不多了,而且以前的笔记也没有了,所以自己去网上找资料学习。并且整理下来发到这里,大家一起学习。

视频看的动力节点王鹤老师讲的MyBatis框架,堪称史上最细,老师条理很清晰,讲的真心不错,观看链接点下边

https://www.bilibili.com/video/BV185411s7Ry

第二章 MyBatis入门

2.1 第一个例子

实现步骤:

0.创建student表(id,name,email,age)

1.新建maven项目

2.修改pom.xml

1)加入依赖 mybatis依赖, mysql驱动, junit

2)在加入资源插件

3.创建实体类Student。定义属性, 属性名和列名保持一致

4.创建Dao接口, 定义操作数据库的方法。

5.创建xml文件(mapper文件), 写sql语句。

mybatis框架推荐是把sql语句和java代码分开

mapper文件:定义和dao接口在同一目录, 一个表一个mapper文件。

6.创建mybatis的主配置文件(xml文件):有一个, 放在resources目录下

1)定义创建连接实例的数据源(DataSource)对象

2 ) 指定其他mapper文件的位置

7.创建测试的内容。

使用main方法,测试mybatis访问数据库

也可以使用junit 访问数据库

2.2 概念

1.自动提交:当你的 sql语句执行完毕后, 提交事务。 数据库更新操作之间保存到数据

2.手动(手工)提交事务:在你需要提交事务的位置, 执行方法,提交事务或者回顾事务。

2.3 MyBatis的一些重要对象

1) Resources : mybatis框架中的对象, 一个作用读取 主配置信息。

InputStream inputStream = Resources.getResourceAsStream("mybatis.xml");

2)SqlSessionFactoryBuilder:负责创建SqlSessionFactory对象

SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(inputStream);

3)SqlSessionFactory: 重要对象

SqlSessionFactory是重量级对象:创建此对象需要使用更多的资源和时间。 在项目中有一个就可以了。

SqlSessionFactory接口:作用是SqlSession的工厂, 就是创建SqlSession对象。

DefaultSqlSessionFactory实现类

public class DefaultSqlSessionFactory implements SqlSessionFactory { } 

SqlSessionFactory接口中的方法

openSession(): 获取一个默认的SqlSession对象, 默认是需要手工提交事务的。

openSession(boolean): boolean参数表示是否自动提交事务。

  • true: 创建一个自动提交事务的SqlSession
  • false: 等同于没有参数的openSession

4 ) SqlSession对象

SqlSession对象是通过SqlSessionFactory获取的。 SqlSession本身是接口

DefaultSqlSession: 实现类

public class DefaultSqlSession implements SqlSession { }

SqlSession作用是提供了大量的执行sql语句的方法:

selectOne:执行sql语句,最多得到一行记录,多余1行是错误。
selectList:执行sql语句,返回多行数据
selectMap:执行sql语句的,得到一个Map结果
insert:执行insert语句
update:执行update语句
delete:执行delete语句
commit:提交事务
rollback:回顾事务

注意SqlSession对象不是线程安全的, 使用的步骤:

①:在方法的内部,执行sql语句之前,先获取SqlSession对象

②:调用SqlSession的方法,执行sql语句

③:关闭SqlSession对象,执行SqlSession.close()

2.4 使用工具类和模版

1)创建模版,mapper文件模版和mybatis主配置文件模版

创建模版的步骤:
在这里插入图片描述
创建模版文件:
在这里插入图片描述

创建文件选择使用的模版:
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值