java

关注公众号 jb51net

关闭
首页 > 软件编程 > java > mybatis查询数据库数据

一文教会你用mybatis查询数据库数据

作者:lichaohua!

MyBatis本身是一个数据库连接框架,可以认为是JDBC的升级版,下面这篇文章主要给大家介绍了关于mybatis查询数据库数据的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下

一、新建数据库和表

建一个数据库mybatis,建一个表person,然后填充一些数据(这里我是使用了图形化工具Navicat for MySQL,就不写原生的数据库代码了)

二、新建maven项目,添加mybatis依赖

新建一个maven项目,我以往文章有提到如何建一个maven项目,这里不多赘述:

Maven入门—如何在idea中配置Maven

添加依赖,在pom.xml文件上添加以下代码

<dependencies>
        <!--    数据库驱动 版本不能乱用5.1.47  -->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.47</version>
        </dependency>
        <!-- mybatis -->
        <dependency>
            <groupId>org.mybatis</groupId>
            <artifactId>mybatis</artifactId>
            <version>3.4.6</version>
        </dependency>
		<!-- 单元测试-->
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.13</version>
            <scope>test</scope>
        </dependency>

        <!-- lombok-->
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>1.18.10</version>
        </dependency>
</dependencies>

三、新建实体类、接口(Mapper)

Person实体类

package entity;

public class Person {
    private int id;
    private String name;
    private int age;

    public Person() {
    }

    public Person(int id, String name, int age) {
        this.id = id;
        this.name = name;
        this.age = age;
    }

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    @Override
    public String toString() {
        return "Person{" +
                "id=" + id +
                ", name='" + name + '\'' +
                ", age=" + age +
                '}';
    }
}

PersonMapper接口

import entity.Person;
import java.util.List;

public interface PersonMapper {
    //查询所有数据
    public List<Person> getPerson();
}

四、新建实现类(使用.xml映射文件)

在resources目录下新建一个PersonMapper.xml文件

<?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 : 和哪个接口有映射关系-->
<mapper namespace="mapper.PersonMapper">
    <!--
        select标签中的语句  需要和接口中哪个方法有映射关系
        id         : 接口中的方法名
        resultType:  方法的返回类型(写全类名)
     -->
    <select id="getPerson" resultType="entity.Person">
        select * from person
    </select>
</mapper>

五、新建全局配置文件(mybatis-config.xml)

在resources目录下新建一个mybatis-config.xml文件

数据库密码(password)写你自己的

<?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>
    <!-- environments  多环境配置
         environment   配置数据源
         transactionManager     事务管理器
         dataSource     数据源
     -->
    <environments default="p1">

        <environment id="p1">
            <transactionManager type="JDBC"/>
            <dataSource type="POOLED">
                <property name="driver" value="com.mysql.jdbc.Driver"/>
                <property name="url" value="jdbc:mysql://localhost:3306/mybatis"/>
                <property name="username" value="root"/>
                <property name="password" value="123456"/>
            </dataSource>
        </environment>
    </environments>

    <!-- 注册映射  -->
    <mappers>
        <mapper resource="PersonMapper.xml"/>
    </mappers>
</configuration>

六、编写demo类,进行测试查询数据库

1、读取配置文件

2、根据配置文件构建工厂

3、获取会话

4、获取Mapper对象

5、执行方法

6、关闭会话

public class demo {
	@Test
    public void test2() throws IOException {
        //读取配置文件
        InputStream resourceAsStream = Resources.getResourceAsStream("mybatis-config.xml");
        //根据配置文件构建工厂
        SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(resourceAsStream);
        //获取会话
        SqlSession sqlSession = sessionFactory.openSession();
        //获取Mapper对象
        PersonMapper personMapper = sqlSession.getMapper(PersonMapper.class);
        //执行方法
        List<Person> person = personMapper.getPerson();
        System.out.println(person);
        //关闭会话
        sqlSession.close();
    }
 }

输出结果

总结

到此这篇关于mybatis查询数据库数据的文章就介绍到这了,更多相关mybatis查询数据库数据内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文