大数据学习笔记

大数据学习

第13节

前期准备

集合,IO,多线程,

第14节

第1节MyBatis–1

1.定义

MyBatis是一个一流的持久性框架,支持定制SQL、存储过程和高级映射。MyBatis消除了几乎所有的JDBC代码以及参数的手动设置和结果检索。MyBatis可以使用简单的XML或注释进行配置,并将原语、映射接口和Java pojo (Plain Old Java Objects)映射到数据库记录。

(1)存储过程

意味着数据库里存储了可执行程序,如果只是和数据打交道是可以的,但如果是为了满足某种业务逻辑,按照某种功能即上面的应用程序该做的事情则把它放入数据库中。

(2)映射

由上层应用的对象到数据库的对应关系

二.相关过程

1.XML的配置

想用MyBatis去做持久化,去操作数据库,首先需要创建一个sqlsession,也就是和数据库建立一个会话,基于这个链接做sql语句的传输或数据的操作,这个过程称为会话。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Q7ZMN5hV-1633352539134)(C:\Users\ASUS\AppData\Roaming\Typora\typora-user-images\image-20210821132929955.png)]

设计模式里的工厂模式

SqlSessionFactory

2.工厂模式

(1)数据库是系统级软件,对于用户自己写的聊天程序,是不应该保存至数据库里的

(2)对于存储这件事不同的场景会存在在不同的介质当中,可能是文件系统,可能是数据库系统

a 那用户开发出来的系统有一部分存到文件里,一部分存到数据库里,那这两种对象,本来是分成两个类的,如果在代码里直接用某个类型的new出来的话,则对它会产生绝对性的依赖。

b 如果在相同的这段代码想使用数据库的话,那只能修改源代码,这是不行的。因为JAVA里有多态,声明的是接口,具体创建的是可配置式的,在配置文件里写一个标签(此部分程序存入文件系统,此部分程序存入数据库系统),所以创建具体的会话这件事应该要由工厂来完成,而不是直接用new来完成,工厂模式由此而来。

(3)我们想去和数据库建立通信链路之前,要建立sqlsession,想拿到session需要先有factory

3.使用流程

(1)每个MyBatis应用程序都以一个SqISessionFactory实例为中心。SqISessionFactory实例可以通过使用sqlessionfactorybuilder获得。SqISessionFactoryBuilder可以从XML配置文件或configuration类的自定义准备实例构建一个SqlSessionFactory实例。从XML文件构建sqlessionfactory实例非常简单。建议您为这个配置使用类路径资源,但是您可以使用任何InputStream实例,包括从文字文件路径或文件:// URL创建的实例。mvatis包括一个实用程序类,称为Resources。它包含许多方法,使从类路径和其他位置加载资源变得更简单。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-bBXzuhvV-1633352539137)(C:\Users\ASUS\AppData\Roaming\Typora\typora-user-images\image-20210822083256458.png)]

(2)使用MaBatis时,先要通过SqlSessionFactoryBuilder来读取配置文件mybatis-config.xml,来创建一个sqlSessionFactory,有了sqlSessionFactory后才可以使用sqlSession

三.项目实战

1.创建Maven projectproject

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-KS1sj4ro-1633352539139)(C:\Users\ASUS\AppData\Roaming\Typora\typora-user-images\image-20210822111246929.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-A5GThABg-1633352539142)(C:\Users\ASUS\AppData\Roaming\Typora\typora-user-images\image-20210822111316833.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-MBTS7xWa-1633352539143)(C:\Users\ASUS\AppData\Roaming\Typora\typora-user-images\image-20210822111329753.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9XYoMLVy-1633352539144)(C:\Users\ASUS\AppData\Roaming\Typora\typora-user-images\image-20210822111448942.png)]

创建完毕

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-QpwncTJT-1633352539145)(C:\Users\ASUS\AppData\Roaming\Typora\typora-user-images\image-20210822111918298.png)]

2.关于创建项目时加载缓慢的原因

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2si4Wn36-1633352539146)(C:\Users\ASUS\AppData\Roaming\Typora\typora-user-images\image-20210822112220297.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-SEtFJpdY-1633352539147)(C:\Users\ASUS\AppData\Roaming\Typora\typora-user-images\image-20210822112846773.png)]

以下 因为下载的jar包是从国外的镜像网站下载,所以会慢

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-QPqkEmBp-1633352539148)(C:\Users\ASUS\AppData\Roaming\Typora\typora-user-images\image-20210822113111109.png)]

2.准备工作

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ay3JH5UF-1633352539149)(C:\Users\ASUS\AppData\Roaming\Typora\typora-user-images\image-20210822141110458.png)]

1.手动添加方法

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nMMF6Lqv-1633352539150)(C:\Users\ASUS\AppData\Roaming\Typora\typora-user-images\image-20210822141632800.png)]

mybatis的数据就叫mapper,就不叫dao了

创建mybatis-config.xml文件

复制以下代码

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-LVzJ24J6-1633352539151)(C:\Users\ASUS\AppData\Roaming\Typora\typora-user-images\image-20210823115016921.png)]

]

mybatis的数据就叫mapper,就不叫dao了

创建mybatis-config.xml文件

复制以下代码

[外链图片转存中…(img-LVzJ24J6-1633352539151)]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值