Mybatis环境搭建及文件配置过程解析
作者:七月在野,八月在宇 发布时间:2021-07-04 22:37:03
mybatis的环境搭建:
1、创建maven工程并且导入坐标:即我们需要在pop.xml文件中添加我们需要的依赖
具体方法:搜索maven中央仓库,搜索你需要的依赖jar包,比如我搜索mybatis
点击第一个,选择需要的版本再点击,比如我选择的是3.4.6版本
将里面的代码粘贴到pop.xml文件中注意需要在两个depenencies之间,然后等待一会,maven会自动下载需要的jar包
这些做好之后我们就继续配置mybatis环境了:
我们使用mabatis需要保证我们对数据库中的《列名》封装成的对象和我们创建的对象名一样,我的数据库有五个列名,所以我创建一个类来封装这些列名
然后我们创建一个接口比如我创建的是IUserDao接口,用来查询数据库的所有信息(select * from stu这是我的数据库中的表)在里面添加了一个抽象方法FindAll()
现在我们需要对配置文件进行配置:创建一个SqlMapConfig.xml文件在里面填入配置信息:
<?xml version="1.0" encoding="UTF-8"?>
<!--头部信息-->
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<!--配置环境-->
<environments default="mysql">
<!--mysql的配置-->
<environment id="mysql">
<transactionManager type="JDBC"></transactionManager>
<!--配置数据库连接池-->
<dataSource type="POOLED">
<!--配置数据库连接池基本信息-->
<property name="driver" value="com.mysql.cj.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/student"/>
<property name="username" value="root"/>
<property name="password" value="123456"/>
</dataSource>
</environment>
<!--配置映射文件位置 映射文件的配置位置是每一个dao独立的配置文件-->
</environments>
<mappers>
<!--需要和我们写的方法对应位置-->
<mapper resource="july.wild.dao.IUserDao.xml"/>
</mappers>
</configuration>
我们需要注意的是头部信息是固定的
这个是数据库连接池的配置信息
<property name="driver" value="com.mysql.cj.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/student"/>
<property name="username" value="root"/>
<property name="password" value="123456"/>
这个是我自己的数据库对于第一个com.mysql.cj.jdbc.Driver,因为我的MySQL是13版本,所以是这个有的mysql是com.mysql.jdbc.Driver,这个随情况而定
我们将信息配置完之后需要加上我们的接口的配置文件注意名称目录一致
在mybatis中,我们将持久层的操作接口和他的映射文件叫做mapper
<mappers>
<!--需要和我们写的方法对应位置-->
<mapper resource="july.wild.dao.IUserDao.xml"/>
</mappers>
这个july.wild.dao.IUserDao.xml是我的配置文件目录,和我的IUserDao接口位置对应,你们在进行配置的时候也需要注意前后一致
然后就可以在IUserDao.xml文件中添加配置信息了
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="july.wild.dao.IUserDao">
<!--配置查询所有-->
<select id="FindAll" resultType="july.wild.domain.User">
select * from stu
</select>
</mapper>
注意事项:映射文件(接口的配置文件)必须和接口的包目录结构一致,记住包,包,包!!!
namespace必须是我们接口的全类名,我们需要注意全类名是我们导的包,看右边的图,我们的包是从july开始的,
java和上面的main是目录,
操作的id属性必须是我们的方法名
如果遵从上面的三个字注意事项,我们就不需要写包dao中的实现方法了,mabatis自动给我们实现了
来源:https://www.cnblogs.com/guosai1500581464/p/12953880.html


猜你喜欢
- 本文实例为大家分享了Java实现多线程在线聊天的具体代码,供大家参考,具体内容如下上一篇博客通过UDP实现了聊天,但只能单方面发送消息,这次
- FormClosing事件在窗体关闭时,FormClosing事件发生。此事件会得到处理。从而释放与窗体相关的所有资源。如果取消此事件,则窗
- 前言:Zygote 是 Android 的核心,每打开一个 app,Zygote 就会 fork 一个虚拟机实例来运行 app,基于Xpos
- java控制台输入有如下几个方法1、JDK 1.4 及以下版本读取的方法JDK 1.4 及以下的版本中要想从控制台中输入数据只有一种办法,即
- 本文实例讲述了C#实现的SQL备份与还原功能。分享给大家供大家参考,具体如下://记得加 folderBrowserDialog1 open
- 前言这两天面试了一个物联网公司高级研发,面试题是下面这样子公司领导,部门主管,小组组长,组成员4级,假如有个 疫情预警,先通知组人员(对个人
- 以下是SpringBoot项目中的常用配置类、jar包坐标等通用配置pom文件<!-- --><!-- 自定义配置文件
- 前言本章内容主要研究一下java高级特性-反射、android注解、和 * 的使用,通过了解这些技术,可以为了以后实现组件化或者Api h
- LinearLayout<?xml version="1.0" encoding="utf-8"
- 一、LockSupport类的属性private static final sun.misc.Unsafe UNSAFE; &
- 前言上一篇做了一个滑动折叠的Header控件,主要就是练习了一下滑动事件冲突的问题,控件和文章写的都不怎么样。本来想通过这篇文章的控件,整合
- 使用BufferedReader(缓存读取流)可以每次读取文件的一行。对于文件内容如果是按行为单位排列的话,则使用BufferedReade
- json好久没用了,今天在用到json的时候,发现对字符串做解析的时候总是多出双引号。代码如下:string jsonText = &quo
- 当我们打开app的时候是不是会有一瞬间的白屏然后再进入主活动,虽然这并不会造成什么不好的后果,但是感觉用户体验就不是很好。像网易云音乐等等
- Redisson分布式锁之前的基于注解的锁有一种锁是基本redis的分布式锁,锁的实现我是基于redisson组件提供的RLock,这篇来看
- 本文实例为大家分享了Java Web实现简易图书管理系统的具体代码,供大家参考,具体内容如下前言首先实现的是用户的登录注册,注册成功后自动跳
- 1.3扫描线种子填充算法1.1和1.2节介绍的两种种子填充算法的优点是非常简单,缺点是使用了递归算法,这不但需要大量栈空间来存储相邻的点,而
- 任务,基于线程池。其使我们对并行编程变得更简单,且不用关心底层是怎么实现的。System.Threading.Tasks.Task类是Tas
- 什么是RecyclerView关于RecyclerView,是一个主要用于展示和回收View的有一个控件,在官用了一句话来概括Recycle
- 具体代码如下所示:public class Parent { public static int a = parentStati