MyBatis日常笔记记录02--新建xml文件及导入maven依赖

1.在resource路径下新建mybatis.xml文件,文件内容可以在mybatis中文参考文档获取,这里主要解释各个部分的详细信息

 

<?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>
    <!--
        环境配置:数据库的连接信息
            default:必须和某个environment的id值一样。
            告诉mybatis使用哪个数据库的连接信息,也就是访问哪个数据库
    -->
    <environments default="mydev">
        <!--
            environment:一个数据库信息的配置,环境
            id :一个唯一值,自定义,表示环境的名称
         -->
        <environment id="mydev">
            <!--
                transactionManager:mybatis的事务类型
                    type:JDBC(表示使用jdbc中的Connection对象的commit,rollback做事务处理)
            -->
            <transactionManager type="JDBC"/>
                <!--
                    dataSource:表示数据源,连接数据库的
                        type:表示数据源的类型,POOLED表示使用连接池
                -->
            <dataSource type="POOLED">
                <!--
                    driver,user,username,password 是固定的,不能自定义
                -->
                <!--数据库的驱动类名-->
                <property name="driver" value="com.mysql.jdbc.Driver"/>
                <!--连接数据库的url字符串-->
                <property name="url" value="jdbc:mysql://localhost:3306/springdb"/>
                <!--访问数据库的用户名-->
                <property name="username" value="root"/>
                <!--密码-->
                <property name="password" value="$root"/>
            </dataSource>
        </environment>
    </environments>
    <!--sql mapper(sql配置文件)的位置-->
    <mappers>
        <!--一个mapper标签指定一个文件的位置
            从类路径开始的路径信息。  target/classes类路径
         -->
        <mapper resource="org/mybatis/example/BlogMapper.xml"/>
    </mappers>
</configuration>

<!--mybatis的主配置文件:主要定义了数据库的配置信息,sql映射文件

    1.约束文件
    <!DOCTYPE configuration
        PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-config.dtd">

        mybatis-3-config.dtd :约束文件的名称

    2.configuration 根标签

-->

 

点击Maven --> 文件名 --> compile 进行编译,生成target文件(第一张图)

 

 

 可以看到target文件下dao包里面没有生成xml文件,需要在pom.xml下添加maven配置信息

  <build>
    <resources>
      <resource>
        <directory>src/main/java</directory>  <!--所在的目录-->
        <includes><!--包括目录下的.properties, .xml文件都会被扫描到-->
          <include>**/*.properties</include>
          <include>**/*.xml</include>
        </includes>
        <filtering>false</filtering>
      </resource>
    </resources>
  </build>

 

添加好配置信息后,刷新maven项目, 重新点击compile ,可以看到xml文件在target目录下生成了

 

2.测试连接,在org.example

package org.example;

import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import org.example.domain.Student;

import java.io.IOException;
import java.io.InputStream;
import java.util.List;

public class MyApp {
    public static void main(String[] args) throws IOException {
        //访问mybatis读取student数据
        //1.定义mybatis主配置文件的名称,从类路径的根开始
        String config = "mybatis.xml";

        //2.读取这个config表示的文件
        InputStream in = Resources.getResourceAsStream(config);

        //3.创建SqlSessionFactoryBuilder对象
        SqlSessionFactoryBuilder builder = new SqlSessionFactoryBuilder();

        //4.创建SqlSessionFactory对象
        SqlSessionFactory factory = builder.build(in);

        //5.【重要】获取SqlSession对象,从SqlSessionFactory中获取SqlSession
        SqlSession sqlSession = factory.openSession();

        //6.【重要】指定要执行的sql语句的标识。 sql映射文件中namespace + "." + 标签的id值
        String sqlId = "org.example.dao.StudentDao" + "." + "selectStudent";

        //7.执行sql语句,通过sqlId找到语句
        List<Student> studentList = sqlSession.selectList(sqlId);

        //8.输出结果
        // studentList.forEach(stu -> System.out.println(stu));
        for(Student stu : studentList){
            System.out.println("查询的学生="+stu);
        }

        //9.关闭SqlSession的对象
        sqlSession.close();
    }
}

  

posted @ 2021-07-04 13:24  Brack_Pearl  阅读(228)  评论(0编辑  收藏  举报