Mybatis入门实例过程记录

Mybatis的入门案例:

开发工具:IDEA

数据库服务器:Mysql 5.1

在过程中也出现了一些问题,经过面向百度和谷歌,终于解决了,得到了查询结果。

下面开始记录一下过程:

首先是整个工程的目录结构:

Mybatis入门实例过程记录_第1张图片

这个结构中需要说明的是,我将所有的配置文件,都放入了Maven管理下的resources目录,这样也为了防止出现IDEA找不到配置文件。

我的pom.xml:

xml version="1.0" encoding="UTF-8"?>
xmlns="http://maven.apache.org/POM/4.0.0"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  4.0.0

  jax.project.spring.jdbc
  Spring_JDBC
  1.0-SNAPSHOT
  
    
    
      org.mybatis
      mybatis
      3.4.1
    
    
    
      junit
      junit
      4.12
      test
    

    
    
      log4j
      log4j
      1.2.17
    
    
    
      mysql
      mysql-connector-java
      5.1.38
    
  




然后,从第一步开始说起:使用mybatis,我们需要先建立一个全局配置文件,这个文件的命名为:

其中内容为

Mybatis入门实例过程记录_第2张图片

接下来,就是db.properties中的内容:

Mybatis入门实例过程记录_第3张图片

这下,应该有了概念,这两个的联系是在哪里,应该就一清二楚了。

SqlMapConfig为全局配置文件,db.properties为数据库配置文件

我的数据表:

Mybatis入门实例过程记录_第4张图片

可以看到,在我的表中,是有id,userName,birthday,sex,address这些字段的,所以你需要在IDEA中创建实体类,我是放在mybatis.po包中的,名字为


Mybatis入门实例过程记录_第5张图片

记得要添加set()和get()方法,以及重写toString().

------------------------------------------------------------------------------------------------------------------------------

现在,我们就可以开始考虑来写接口了:(使用mapper代理的方式)

在mybatis下的mapper包下新建一个接口


然后在接口中写我们要用到的接口方法:

Mybatis入门实例过程记录_第6张图片

然后,我们要在resources文件下,创建我们的映射文件:


其中内容如下:








  
  


----------------------------------------------------------------------------------------------------------------------------------

这里完成之后呢,我们就要完成最后一个配置了,就是在全局配置文件SqlMapConfig.xml文件中去应用我们写的UserMapper.xml文件了,不然,不应用他,那么我们就无法得到结果。

Mybatis入门实例过程记录_第7张图片

这个标签是放在标签之间的哦!!

到此处,我们的配置工作就全部做完了,最后一步就是测试了,我们要写测试的代码。

----------------------------------------------------------测试部分如下----------------------------------------------------------

import java.io.IOException;
import java.io.InputStream;
import mybatis.mapper.UserMapper;
import mybatis.po.User;
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.junit.Before;
import org.junit.Test;

public class TestC {

  private SqlSessionFactory sqlSessionFactory;

  @Before
  public void SetUp() throws IOException {
    
    //定义resource,这个resource就是全局配置文件的名字,文件是放在resources包下的,
    //注意这里的resource和resources包是没啥联系的
    String resource = "SqlMapConfig.xml";
    
    //创建输入流,将全局配置文件变为一个输入流
    InputStream inputStream = Resources.getResourceAsStream(resource);
    //创建sqlSession工厂,通过工厂的build方法
    sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);


  }


  @Test
  public void findById() throws Exception {
    
    //通过工厂打开session
    SqlSession sqlSession = sqlSessionFactory.openSession();
    //通过sqlsession来获得映射文件
    UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
    //调用接口中的findUserById方法,输入参数为int类型的,所以这里写id值
    User user = userMapper.findUserById(1);
    //为了看到效果,我们将这个用户的信息打印出来
    System.out.println(user);


  }
}


结果的截图为:

Mybatis入门实例过程记录_第8张图片

你可能感兴趣的:(Mybatis入门实例过程记录)