MyBatis初探——MyBatis配置

MyBatis简介
MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis 。2013年11月迁移到Github。MyBatis 是支持普通 SQL查询,存储过程和高级映射的优秀持久层框架。MyBatis 消除了几乎所有的JDBC代码和参数的手工设置以及结果集的检索。MyBatis 使用简单的 XML或注解用于配置和原始映射,将接口和 Java 的POJOs(Plain Old Java Objects,普通的 Java对象)映射成数据库中的记录。
MyBatis版本
目前我所用的MyBatis版本为3.4.4。将核心包MyBatis-3.4.4.jar和mysql数据库连接包 mysql-connector-java-5.1.18-bin.jar一起倒入eclipse就可以了。
MyBatis配置
MyBatis其实就是对JDBC进行封装,所用MyBatis在使用的时候我们要对其进行基本配置。MyBatis的配置文件为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>
<!--配置日志。MyBatis本身已经写好了日志的方法。我们在项目中配好了日志。在这里进行配置就可以了 -->
  <settings>
    <setting name="logImpl" value="LOG4J2"/>
  </settings>
  <environments default="development">
    <environment id="development">
    <!--连接方式 -->
      <transactionManager type="JDBC">
        <property name="" value="" />
      </transactionManager>
      <dataSource type="UNPOOLED">
       <!--驱动设置,我用的mysql数据库 -->
        <property name="driver" value="com.mysql.jdbc.Driver" />
         <!--数据库地址 -->
        <property name="url" value="jdbc:mysql://127.0.0.1:3306/instant_message?useUnicode=true&amp;characterEncoding=utf8" />
         <!-- 数据库用户名-->
        <property name="username" value="root" />
         <!--数据库连接密码 -->
        <property name="password" value="123456"/>
      </dataSource>
    </environment>
  </environments>
</configuration>

MyBatis获取数据库连接
由于MyBatis的配置是xml文件。项目在运行的时候是不会进行解析的,所以我们要想将配置信息读取进项目中必须要自己写读取配置文件的方法。并且通过配置文件创建数据库连接。
创建一个java类。并在里面创建一个方法。方法采用静态方法。以防止重复读取配置文件

public static SqlSession getSqlSession(){
        Reader reader = null;
        try {
        //读取配置信息,com/lingjiu/config/Config.xml为配置文件名和文件所在项目的目录src下的目录
            reader = Resources.getResourceAsReader("com/lingjiu/config/Config.xml");
        } catch (IOException e) {
            logger.error("reading sql config xml is error");
            logger.error(e.getMessage());
        }
        //创建sql工厂
        SqlSessionFactory sqlSessionFactory  = new SqlSessionFactoryBuilder().build(reader);
        //创建一个会话
        SqlSession sqlSession = sqlSessionFactory.openSession();
        //返回一个数据库连接会话
        return sqlSession;
    }

猜你喜欢

转载自blog.csdn.net/u011456867/article/details/73504037