Mybatis框架搭建和单元测试

1. 创建简单的 Java Project 工程,把 mybatis(mybatis-3.4.6.jar)和 mysql(mysql-connector-java-8.0.11.jar)放工程里

2. 创建一个资源文件夹(右键工程名-->找到Resource Folder)

3. 在资源文件夹中创建一个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>
        <!-- 配置数据连接环境:driver、url、username、password -->
        <environments default="mysql">
        <environment id="mysql">
        <!-- 配置事务 -->
        <transactionManager type="JDBC"></transactionManager>
        <!-- 配置数据源 -->
        <dataSource type="POOLED">
        <property name="driver" value="com.mysql.jdbc.Driver"/>
        <property name="url" value="jdbc:mysql:///test?serverTimezone=UTC"/>
        <property name="username" value="root"/>
        <property name="password" value="123456"/>
        </dataSource>
        </environment>
        </environments>
        
        <!-- 关联 Mapper.xml 配置文件 -->
        <mappers>
        <mapper resource="com/mapper/userMapper.xml"/>
        </mappers>
        

        </configuration>

4. 配置好 Mybatis 后我们就开始写测试代码,把包的目录结构创建好(dao、mapper、entity)

5. 实体和数据库里面的表字段依依对应(不对应的话需要做一个映射,不映射查询出来的数据为 null),写相应的 get、set、toString、构造方法。

6. 配置 Mapper 文件,具体内容如下,如果实体和数据库名称不一致也给出了映射的代码,参考<resultMap>标签:

<?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:命名空间,是某一个 dao 层的具体路径 -->
<mapper namespace="com.dao.getUser">
<resultMap type="com.entity.User" id="User">
<result property="userId" column="user_id"/>
<result property="userName" column="user_name"/>
<result property="userPassword" column="user_password"/>
<result property="userSex" column="user_sex"/>
</resultMap>

<select id="getUserAllEentity" resultType="com.entity.User" resultMap="User">
SELECT * FROM user
</select>

</mapper>

7. 在 dao 层中写一个测试类,方法名和 Mapper 中的 <SELECT> 标签ID必须一致。我的代码如下:

@Test
public void getUserAllEentity() throws IOException {
// 1. 启动 Mybatis 框架
SqlSessionFactoryBuilder sessionFactoryBuilder = new SqlSessionFactoryBuilder();
InputStream inputStream = Resources.getResourceAsStream("mybatis.xml");
SqlSessionFactory sessionFactory = sessionFactoryBuilder.build(inputStream);
SqlSession session = sessionFactory.openSession();

// 2. 调用局部配置文件中的 SQL 语句
List<User> userList = session.selectList("com.dao.getUser.getUserAllEentity");
for (User user : userList) {
System.out.println(user);
}

}

InputStream inputStream = Resources.getResourceAsStream("mybatis.xml");--读取资源文件中的 mybatis.xml 主配置文件,不是 Mapper 配置喔!

8. 执行单元测试代码,就可以在控制台输出你数据库中的数据了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值