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
猜你喜欢
- Feign调用服务Headers传参在使用springcloud中经常会出现个服务调用,一般情况下会在Headers加上token的验证,那
- 前言复习一下spring实现IOC的源码流程准备工作:强烈建议大家从git上拉取spring源码来学习Spring源码。因为里面相较于IDE
- 写在前面关于数据结构,Java官方其实已经帮我们写好并封装起来了,在真正需要使用的时候直接调用即可,但为了更好的理解数据结构,我会按照源码的
- 1.Maven依赖<!-- Kettle --><dependency> <grou
- 如下所示:String.valueOf((char)10)在导出excel 的时候,如果原始文字中含有 \n 字符, 如果把 \n 替换为&
- 四大函数式接口新时代的程序员:lambda 表达式,链式编程,函数式接口,Stream 流式计算函数式接口: 只有一个方法的接口@Funct
- 第一种方法:string s=abcdeabcdeabcde;string[] sArray=s.Split(c) ;foreach(str
- 在Spring 5 Webflux中,配置CORS,可以通过自定义WebFilter实现:注:此种写法需真实跨域访问,监控header中才会
- 实现Java多态性的时候,关于方法调用的优先级:我们这样假设下,super(超类)、this(当前类对象)、show(方法)、object(
- 前言在产品发布前夕,经常因为编写各类设计文档感到心碎,倒不是难,而是比较繁琐,举例来说,像编写数据库文档这种操作来说,对于新手,甚至很多有一
- 线程安全当多个线程访问某个类时,不管运行时环境采用何种调度方式或者这些进程将如何交替执行,并且在主调代码中不需要任何额外的同步或协调,这个类
- 本章节内容很丰富,主要有基本的表单操作,数据的格式化,数据的校验,以及提示信息的国际化等实用技能。首先看效果图项目结构图接下来用代码重点学习
- 悲观锁、乐观锁简介: 悲观锁:同步操作。即用户A在操作某条数据时,为其上锁,限制其他用户操作,用户A操作完成提交事务后其他用户方可
- main方法调用spring的service将业务层类配置到Spring中:<bean id="customerServic
- 死锁在多线程的情况下,会出现数据不同步情况, 而为了避免这种情况,之前也说了:界区实现方法有两种,一种是用synchronized,一种是用
- 前言Springboot应用在启动的时候分为两步:首先生成 SpringApplication 对象 ,运行 SpringApplicati
- springboot对压缩请求的处理最近对接银联需求,为了节省带宽,需要对报文进行压缩处理。但是使用springboot自带的压缩设置不起作
- 前言记一次为了节省代码没有在方法体中声明HttpServletRequest,而用autowire直接注入所钻的坑结论:给心急的人。 直接在
- 接口回调是指:可以把使用某一接口的类创建的对象的引用赋给该接口声明的接口变量,那么该接口变量就可以调用被类实现的接口的方法。实际上,当接口变
- 由于公司的开发团队偏向于使用Java技术,而且公司倡导学习开源技术,所以我选择用Java语言来进行Selenium WebDriver的自动