_MyBatis入门配置

2023-11-21 00:54:11 浏览数 (1)

一、核心配置文件

        Mybatis核心配置文件在resources资源目录下(如下图),其中主要核心是连接数据库的参数配置

下面代码就是核心配置文件的.xml例子 

代码语言:javascript复制
<?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">
        <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:///mybatis"/>
                <property name="username" value="root"/>
                <property name="password" value="666666"/>
            </dataSource>
        </environment>
    </environments>
</configuration>

这四行其实就是JDBC建立连接时要用到的驱动,url,用户名和密码 <property name="driver" value="com.mysql.cj.jdbc.Driver"/> <property name="url" value="jdbc:mysql:///mybatis"/> <property name="username" value="root"/> <property name="password" value="666666"/>

二、Mybatis映射文件

        这个映射文件就和项目的持久层接口对应,一个持久层接口对应一个映射文件,注意:持久层接口所在的目录和映射文件所在的目录必须一致,如下图,否则将不能识别该映射文件。

下面代码是映射文件的一个 .xml例子

代码语言:javascript复制
<?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="com.mybatisstudy.mapper.UserMapper">
    
</mapper>

 这里我原来没注意,那个DOCTYPE 后面跟着那个单词就是改xml标签的根标签的意思

映射文件注意事项:

  • 映射文件要和接口名称相同。
  • 映射文件要和接口的目录结构相同。
  • 映射文件中namespace属性要写接口的全名。
  • 映射文件中标签的id属性是接口方法的方法名。
  • 映射文件中标签的resultType属性是接口方法的返回值类型。
  • 映射文件中标签的parameterType属性是接口方法的参数类型。
  • 映射文件中resultType、parameterType属性要写全类名,
  • 如果是集合类型,则写其泛型的全类名。

这里比如说一个根据id查询指定用户

持久层接口的方法是 User findById(int id);

那么在映射文件中最对应的写法就是

代码语言:javascript复制
<select id="findById" parameterType="int" resultType="com.mybatisstudy.pojo.User">
    select * from user where id = #{id}
</select>

#{}是获取里面参数的值,resultType属性是接口方法的返回值类型这里就相当于返回值类型为User,parameterType属性是接口方法的参数类型这里就当于参数类型为int类型

三、将映射文件配置到mybatis核心配置文件中

代码语言:javascript复制
<!-- 注册映射文件 -->
    <mappers>
        <mapper resource="com/mybatisstudy/mapper/UserMapper.xml"></mapper>
    </mappers>

0 人点赞