Mybatis框架初识【一】

Mybatis框架导入

在Maven项目中导入Mybatis框架依赖

        <dependency>
            <groupId>org.mybatis</groupId>
            <artifactId>mybatis</artifactId>
            <version>3.5.5</version>
        </dependency>

编写Mybatis配置文件

将文件名为:mybatis-config.xml(命名随意,我这里见名知意)

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
  PUBLIC "-//mabatis.org//DTD Config 3.0//EN"
  "http://mybatis.org/dtd/mybatis-3-config.dtd">

<configuration>

 
   <environments default="development">
        <environment id="development">
       <!-- 这里事务管理  我们使用JDBC-->
            <transactionManager type="JDBC"></transactionManager>

<!--            配置数据库连接池信息    这里用的是mybatis内部实现的连接池POOLED-->
            <dataSource type="POOLED">
                <property name="driver" value="com.mysql.jdbc.Driver"/>
                <property name="url" value="jdbc:mysql:///employees"/>
                <property name="username" value="root"/>
                <property name="password" value="123456"/>
            </dataSource>

        </environment>

    </environments>

</configuration>


将mybatis-config.xml放到资源文件下:
在这里插入图片描述

编写SQL映射文件

如果要在真正使用Mybatis框架,还得配置SQL映射文件,文件一般命名为
你要操作的表名+Mapper.xml。

例如我要操作Student表,那么我创建的SQL映射文件为:
StudentMapper.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">


<!--需要注意的是 实体类字段名称 必须跟数据库表中字段一致
否则,无法SQL的结果无法映射到实体类
-->

<!-- namespace 命名空间-->
<mapper namespace="test">

<!--在这里简单写个查询语句-->
<!--Student是我创建的实体类-->
    <select id="selectAll" resultType="Student">
        select *
        from tb_student;
    </select>

</mapper>

Student实体类:

public class Student {
    private Integer stuId;
    private String stuName;
    private String stuSex;
    private Integer stuYear;
    private Integer school;

    public Integer getStuId() {
        return stuId;
    }

    public void setStuId(Integer stuId) {
        this.stuId = stuId;
    }

    public String getStuName() {
        return stuName;
    }

    public void setStuName(String stuName) {
        this.stuName = stuName;
    }

    public String getStuSex() {
        return stuSex;
    }

    public void setStuSex(String stuSex) {
        this.stuSex = stuSex;
    }

    public Integer getStuYear() {
        return stuYear;
    }

    public void setStuYear(Integer stuYear) {
        this.stuYear = stuYear;
    }

    public Integer getSchool() {
        return school;
    }

    public void setSchool(Integer school) {
        this.school = school;
    }

    @Override
    public String toString() {
        return "Student{" +
                "stuId=" + stuId +
                ", stuName='" + stuName + '\'' +
                ", stuSex='" + stuSex + '\'' +
                ", stuYear=" + stuYear +
                ", school=" + school +
                '}';
    }
}

编写了映射文件后,还得在刚刚的mybatis-config.xml中声明此映射文件
把下面代码添加到mybatis-config.xml文件的 标签内即可。

    <mappers> 
   <!--   加载sql映射文件-->
   <mapper resource="你映射文件的路径"/>
    </mappers>

测试


/**
 * mybatis框架初步使用
 */
public class MyBatisDemo01 {
    public static void main(String[] args) throws Exception {
        //加载mybatis核心配置文件,获取SqlSessionFactory对象
        //文件在maven结构的main的resources文件夹下,用Resources类读取
        InputStream in = Resources.getResourceAsStream("mybatis-config.xml");

        SqlSessionFactory ssf = new SqlSessionFactoryBuilder().build(in);

        //获取SqlSession对象
        SqlSession session = ssf.openSession();


        //调用selectList 返回一个集合
        //参数写入 命名空间.SQL语句的id  这在你刚刚的映射文件可以看到  
        //执行Mybatis会在内部对其进行映射,然后执行SQL语句
        List<Student> objects = session.selectList("test.selectAll");

        //输出
        System.out.println(objects);
      

        //释放资源
        session.close();


    }
}

执行结果输出:
在这里插入图片描述
成功使用Mybatis框架执行SQL语句。

小记

以上只是我对Mybatis框架的简单配置和使用,Mybatis框架的功能绝不仅仅于此,Mybatis框架是十分强大的,要了解更多功能还得后面深入了解,大家可以一起努力,循序渐进。

想要对Mybatis框架有基本了解还得查看官方文档:https://mybatis.org/mybatis-3/zh/index.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值