【翠花学MyBatis】每日打卡——MyBatis框架打卡1

MyBatis框架

MyBatis框架是一个基于ORM的优秀的持久化框架。但是,MyBatis框架不是一个完整的ORM实现,而是一种半自动化的ORM实现。

MyBatis框架的主要特点是SQL映射器机制。

MyBatis前身是iBatis,本身是Apache的一个开源项目。

官方网站:http://mybatis.org

持久化与ORM

持久化是程序数据在瞬时状态和持久状态之间转换的过程。

ORM是一种在关系型数据库和面向对象编程语言之间进行数据转换的编程技术。

实战演练

第一步:我们打开mysql数据库,建一张表

第二步:打开idea 2018 创建一个web项目

点击File --> new --> project -->Java Enterprise

按照如下步骤设置配置

输入项目名,设置项目所在位置,完成后点击finish

 

 finish之后出现的是如下界面

 

在web-inf目录下创建classes,lib文件夹

创建完成后,点击file --> project structure

按照如下步骤设置配置

设置完成后,点击apply,再点击OK,出现如下界面

 第三步:在lib目录下导入我们写项目时所需要的包,选中我们导入的包,右击,点击add as library

点击ok,我们导入的包如果可以展开即表示导包成功

第四步:设置mybatis配置文件和mapper映射文件

点击file -- > setting  按照如下步骤设置

设置完成之后在src根目录下右击 点击new, 点击 mybatis-config, 输入配置文件名称mybatis-config

出现如下页面,如果有报错的地方,在报错行末尾 alt + enter

点击第一个即可

在configuration标签里输入如下内容

property标签内的内容与你刚开始连接数据库的内容一一对应

设置完后同理,设置我们的mapper映射文件

设置完成后,在我们src根目录下创建包和实体类(一开始我们所创建的表)

在src根目录下,创建dao层的包,并右击创建mapper映射文件

 

完成后出现如下界面,如有报错,同上处理

 

 到这边的话,我们的大概框架就搭好了,然后我们要测试一下,测试的时候需要读取配置文件,而我们配置文件中还未注册我们刚刚所写的映射文件,所以我们要在配置文件中注册我们刚刚所写的映射文件

注册完之后,我们创建一个测试类测试一下

 

以上方法是第一种,但是这种方法在我们注册多个mapper映射文件的时候,里面的id容易出现同名情况,根据墨菲定律:一件事情的发生如果有坏的可能,那么随着时间的推移,就一定会出现这样一些问题;所以为了避免同名情况,我们讲一下第二种方法。

在mapper包下创建一个接口

然后我们在创建一个测试类,复制之前的测试类,按照如下改动一下

到这边其实就基本完成了,并且这份mapper映射文件是基于接口的方法写的,所以同名的情况为0,特别注意,在接口中我们不能使用方法的重载(方法名相同,参数列表不同),如果我们在接口类中写了使用方法的重载,那我们在mapper映射文件中的id将会报错。

仔细对比两个测试类,可以发现,在两个测试类中读取文件,创建SqlSessionFactory这些代码都重复了,并且他们只运行一次,通过这两步我们得到SqlSession对象并不断的调用它,所以我们可以简单地优化一下所写的代码

创建一个工具类,将重复代码放入工具类中

 好了,那我们到这边就基本结束了,本人新手小白,如有写错的地方还请各位大神指导!!!


版权声明:本文为m0_57082679原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。