博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
mybatis的环境搭建
阅读量:2430 次
发布时间:2019-05-10

本文共 2316 字,大约阅读时间需要 7 分钟。

mybatis的环境搭建

1、创建maven工程并导入坐标

创建mybatis需要的依赖有下面几个:

org.mybatis
mybatis
3.4.5

首先是mybatis,这里用的是3.4.5版本的

mysql
mysql-connector-java
8.0.13

接着是mysql的相关jar包,注意:对与高版本的mysql(如mysql8.0版本及其以上),需要用的mysql-connector-java最好是在8.0以上版本,不然会出现错误提示

log4j
log4j
1.2.12
junit
junit
4.10

接着是日志jar包和junit(一个用于单元测试的包)

2、创建实体类和到接口

在这里插入图片描述

在上面的例子中,我在main中的java创建了一个dao包,里面存放着dao的接口,然后在同级目录下创建了实体类。

dao接口:

在这里插入图片描述
实体类:
在这里插入图片描述
实体类中的字段是关于数据库中某个表的列的字段的映射,一般我们取名和数据库中的列名一致

补充:在mybatis中把持久层的操作接口名称和映射文件也叫做Mapper,所以IUserDao和IUserMapper是相同含义的

3、创建mybatis的主配置文件

mybatis的主配置文件放在resource文件中:

在这里插入图片描述
一般主配置文件命名为SqlConfig,它是一个xml文件,主配置文件SqlConfig.xml包含的头文件为:

接着就是配置主配置信息,主配置信息存放在configuration元素中,如下:

配置主配置文件大概是以下步骤:

  • 头文件
  • configuration
    • environments default=“ ”
      • environment id=“ ”
      • transactionManager type=“ ”
      • dataSource type=“ ”
        • 配置数据库的四个信息

4、创建映射配置文件

映射配置文件放在resource文件夹下,头文件为:

在这里插入图片描述

补充:

mybatis环境搭建的注意事项:

  1. 创建IUserDao.xml和IUserDao.java时时为了和我们之前的知识保持一致。在mybatis中他把持久层的操作接口名称和映射文件也叫做:Mapper,所以IUserDao和IUserMapper是一样的

  2. 在IDEA中创建目录的时候,他和包是不一样的,包在创建时:com.liaobinyu.dao,它是三级结构,目录在创建时:com.liaobinyu.dao是一级目

  3. mybatis的映射配置文件位置必须和dao接口的包结构相同

  4. 映射配置文件的mapper标签namespace属性的取值必须是dao接口的全限定类名

    如下图:
    在这里插入图片描述

  5. 映射配置文件的操作配置(select),id属性的取值必须是dao接口的方法名

当我们遵从了第三,第四,第五点之后,我们在开发后就无需再写dao的实现类

mybatis入门案列

在这里插入图片描述

上述的有以下几个步骤:

  1. 读取主配置文件:

    在这里插入图片描述

    • 使用类加载器,它只能读取类路径(项目下的src,或者maven项目下的java下和resource下)的配置文件
    • 使用ServletContext对象的getRealPath()
  2. 创建SqlSessionFactory工厂

    在这里插入图片描述
    创建mybatis使用了构建者模式,优势就是把对象的创建细节隐藏,使使用者直接调用方法即可拿到对象
    在上面的例子中,builder就相当于一个构建者,我们创建一个构建者,然后给构建者提供所需要的配置文件,使其帮我们创建一个工厂factory

  3. 创建SqlSession

    在这里插入图片描述

  4. 创建Dao接口的代理对象

    在这里插入图片描述
    这里需要注意的是:要想实现能够创建Dao接口的代理对象,则必须满足:
    (1)mybatis的映射配置文件位置必须和dao接口的包结构相同
    (2)即映射配置文件的mapper标签namespace属性的取值必须是dao接口的全限定类名

  5. 执行Dao接口中的方法

    在这里插入图片描述

  6. 释放资源

    在这里插入图片描述

转载地址:http://oojmb.baihongyu.com/

你可能感兴趣的文章
这届AI程序员厉害了,还没出校门就被预定?
查看>>
良心帖!看完这篇,你的Python入门基础就差不多了!
查看>>
人工智能还会火多久?
查看>>
安装pygame和pip的问题以及过程
查看>>
想做高薪AI工程师!有这么难吗?
查看>>
天呀!人工智能会像Android和iOS一样,归于平淡吗?
查看>>
小程序后台开发的那些事-CSDN公开课-专题视频课程
查看>>
使用AWS轻松构建PB级企业BI解决方案-CSDN公开课-专题视频课程
查看>>
从0到1 区块链的概念到实践-CSDN公开课-专题视频课程
查看>>
基于深度学习实现语义识别和问答判断模型及算法优化-制造业-CSDN公开课-专题视频课程...
查看>>
AWS 在线公开课(大数据及分析):Amazon Kinesis和Spark流式处理-CSDN公开课-专题视频课程...
查看>>
引领微服务创新-IBM Microservice Builder 新技术首播!-CSDN公开课-专题视频课程
查看>>
移动平台增强现实体验编辑器 PTC ThingWorx Studio入门-CSDN公开课-专题视频课程
查看>>
深度学习入门及如何转型AI领域-CSDN公开课-专题视频课程
查看>>
基于骁龙 VR SDK的VR图形优化-CSDN公开课-专题视频课程
查看>>
让机器读懂你的意图——人体行为预测入门-CSDN公开课-专题视频课程
查看>>
应用Bluemix实现商业价值-CSDN公开课-专题视频课程
查看>>
传统IT环境与PaaS环境下的应用开发模式-CSDN公开课-专题视频课程
查看>>
SDCC 2017之大数据技术实战线上峰会-CSDN公开课-专题视频课程
查看>>
一个CloudCC生态软件包的诞生:带你体验CloudCC生态-CSDN公开课-专题视频课程
查看>>