搭建Mybatis核心配置文件和mapper接口和映射文件

  核心配置文件

              习惯上命名为mybatis-config.xml,这个文件名仅仅只是建议,并非强制要求。

             将来整合Spring 之后,这个配置文件可以省略,所以大家操作时可以直接复制、粘贴。

              核心配置文件主要用于配置连接数据库的环境以及MyBatis的全局配置信息

              核心配置文件存放的位置是src/main/resources目录下

核心配置文件的内容,去官方文档可以找到相关的内容复制。

<?xml version="1.0" encoding="UTF-8" ?>
<!--xml约束规定当前配置文件中使用哪些标签-->
<!DOCTYPE configuration
        PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-config.dtd">

<configuration>
<!-- 配置连接数据库的环境   -->
    <environments default="development">
        <environment id="development">
<!--         事务管理器 -->
            <transactionManager type="JDBC"/>

<!--    数据源:管理数据库连接        -->
            <dataSource type="POOLED">
                <property name="driver" value="com.mysql.cj.jdbc.Driver"/>
                <property name="url" value="jdbc:mysql://localhost:3306/ssm?serverTimezon=UTC"/>
                <property name="username" value="root"/>
                <property name="password" value="123456"/>
            </dataSource>
        </environment>
    </environments>

<!--  通过读取核心配置文件,获取操作数据库对象,就可以直接执行sql,sql语句在映射文件中,
      所以一定要把当前映射文件配置到核心配置文件中,才可以加载核心配置文件找到相对应映射文件中的sql去执行,所以要引入mybatis的映射文件。
  -->
    <mappers>
        <mapper resource="映射文件"/>
    </mappers>
</configuration>

创建mapper接口

 MyBatis中的mapper接口相当于以前的dao。

但是区别在于,mapper仅仅是接口,不需要 提供实现类,

可以通过mybatis一些功能为它创建代理式实现类,当我们去调用接口中的方法,

就可以直接帮助我们对应一个sql语句来执行这个sql语句。       

接口起名:例如:一个表名t_user,当前对应实体类叫做User类,mapper接口叫做UserMapper。

创建MyBatis的映射文件

     一个mapper接口对应一个映射文件中的sql语句 

      映射文件命名规则:和mapper接口最好同名。

   mybatis一些对应关系:一张表对应一个实体类对应当前mapper接口对应映射文件。

                                         mapper接口的方法对应的是映射文件中的sql语句。

   映射文件的内容,去官方文档可以找到相关的内容复制。

      如何执行一个sql语句:

             保证两个一致:①映射文件的namespace要和mapper接口全类名保持一致

                                     ②mapper接口中的方法名要和映射文件中的sql的id保持一致

         注意:mybatis面向接口编程,调用接口中的方法,

                    就可以对应sql语句执行,前提一定要保证两个一致​​​​​​​

<?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">

<!--namespace的内容要和mapper接口全类名保持一致-->
<mapper namespace="......">
<!--    这里面写的就是查sql语句-->

<!-- id和接口中的方法名一致   -->
    <insert id="..."></insert>
   ....

</mapper>

当我们去调用mapper接口中的方法,就会跟据Mapper接口的全类名来找到映射文件,

在根据当前调用的接口方法名找到当前sql语句,获取标签中的sql,执行这个sql语句。

(每次调用mapper接口中的方法,就可以直接找到映射文件中的sql语句执行)。

如果创建了映射文件,一定要把映射文件引入到当前的核心配置文件中(在核心配置文件中引入)。