mybatis入门的前期准备

使用步骤如下:

  1. 首先创建一个Maven工程,在pom.xml文件中引入mybatis的jar包坐标
<dependencies>
        <dependency>
            <groupId>org.mybatis</groupId>
            <artifactId>mybatis</artifactId>
            <version>3.4.5</version>  //版本号,自己指定
        </dependency>
        ...
</dependencies>
  1. 在src目录的resources资源目录下新建一个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>
    <!--引入外部配置文件,文件同样放在resources资源目录下-->  
    <properties resource="jdbcConfig.properties"></properties>
    <!--配置别名-->
    <typeAliases>
        <package name="XXX"></package>
    </typeAliases>
    <!--配置环境-->
    <environments default="mysql">
        <environment id="mysql">
            <transactionManager type="JDBC"></transactionManager>
            <dataSource type="POOLED">
                <property name="driver" value="${jdbc.driver}"></property>
                <property name="url" value="${jdbc.url}"></property>
                <property name="username" value="${jdbc.username}"></property>
                <property name="password" value="${jdbc.password}"></property>
            </dataSource>
        </environment>
    </environments>

    <!--指定带有注解的dao接口的所在位置-->
    <mappers>
        <package name="XXX"></package>
    </mappers>
</configuration>

附上测试类的代码:

public class MybatisAnnoTest {
    public static void main(String[] args) throws IOException {
        //获取字节输入流对象
        InputStream in = Resources.getResourceAsStream("SqlMapConfig.xml");
        //根据字节流对象构建SQLSessionFactory
        SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(in);
        //根据SQLSessionFactory生产一个SQLSession
        SqlSession session = factory.openSession();
        //使用SQLSession获取dao的代理对象
        UserDao userDao = session.getMapper(UserDao.class);
        //执行dao的方法
        List<User> users = userDao.findAll();
        for (User user : users) {
            System.out.println(user);
        }
        //释放资源
        session.close();
        in.close();
    }
}

猜你喜欢

转载自www.cnblogs.com/halo603/p/12376994.html