有图有真相,手把手教你第一次运行mybatis

第一步引入依赖

首先创建一个maven项目 pox.xml引入依赖,这一步要去仓库(Maven Repository: Search/Browse/Explore)看版本号,选择自己要用到版本号,这里我选择3.5.16版本。

<!-- https://mvnrepository.com/artifact/org.mybatis/mybatis -->
<dependency>
    <groupId>org.mybatis</groupId>
    <artifactId>mybatis</artifactId>
    <version>3.5.16</version>
</dependency>

新建maven项目
在这里插入图片描述
在这里插入图片描述

​​​在这里插入图片描述

在这里插入图片描述

第二部定义核心配置文件(了解)

在创建的src/main目录下新建一个resources文件存放配置文件mybatis-config.xml,然后在文档(https://mybatis.net.cn/getting-started.html)中复制以下代码复制到新建好的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>
  <environments default="development">
    <environment id="development">
      <transactionManager type="JDBC"/>
      <dataSource type="POOLED">
        <property name="driver" value="${driver}"/>
        <property name="url" value="${url}"/>
        <property name="username" value="${username}"/>
        <property name="password" value="${password}"/>
      </dataSource>
    </environment>
  </environments>
  <mappers>
    <mapper resource="org/mybatis/example/BlogMapper.xml"/>
  </mappers>
</configuration>

下面是对上面进行解释

<?xml version="1.0" encoding="UTF-8" ?>
<!--?xml 此为xml声明任何文件都有 version="1.0"版本号   encoding="UTF-8"编码方式-->
<!--DOCTYPE文档类型  configuration根元素 所有元素都在这里面配置-->
<!DOCTYPE configuration
        PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<!--  环境配置, 里面包含多个,允许配置多个数据源(很少用) default="development"是下面某个环境变量的id 指的是某个默认的环境变量 -->
    <environments default="development">
        <environment id="development">
<!--            jdbc 事务管理器-->
            <transactionManager type="JDBC"/>
<!--            数据源  POOLED 连接池-->
            <dataSource type="POOLED">
<!--                数据库驱动 driver-->
                <property name="driver" value="com.mysql.cj.jdbc.Driver"/>
<!--                连接字符串-->
                <property name="url" value="jdbc:mysql://localhost:3306/student"/>
<!--                数据库的用户名密码-->
                <property name="username" value="root"/>
                <property name="password" value="root"/>
            </dataSource>
        </environment>
    </environments>
<!--    映射器  告诉mybatis 映射文件的位置-->
    <mappers>
        <mapper resource="com/by/mapper/UserMapper.xml"/>
    </mappers>
</configuration>

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

引入数据库驱动

再来仓库(https://mvnrepository.com/search?q=mysql)找数据库驱动,

<!--数据库依赖 -->
<dependency>
    <groupId>com.mysql</groupId>
    <artifactId>mysql-connector-j</artifactId>
    <version>9.1.0</version>
</dependency>

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

完善核心配置文件

将核心配置文件完善一部分,账号密码是你数据库自己设置的用户密码,并创建数据库shop,设计一个s_user表,操作表需要借助映射器说白了就是接口,mybatis在操作的时候根据这个接口生成一个动态代理类(在操作的时候每一张表对应一个接口) 。现在在java.com.jy中创建mapper文件并建立UserMapper接口。
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

映射器文件

默认放在resources中与对应的mapper放在同一目录中,也就是说需要在resources中建立com/jy/mapper/UserMapper.xml,文件内容在文档中(https://mybatis.net.cn/getting-started.html)

<?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">
  <!--命名空间  映射器文件对应映射器接口-->
<mapper namespace="com.jy.mapper.UserMapper">
  <select id="selectBlog" resultType="Blog">
    select * from Blog where id = #{id}
  </select>
</mapper>

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

做一个简单的查询

mybatis通常将结果封装成JavaBean,定义简单的 JavaBean,在UserMapper接口中进行定义,对应表中的字段,在src/main中新建一个包src/main/java/com/jy/bean,在包中新建类User,对应字段我就没写全省事,引入lombox插件来定义set()、get()方法,在UserMapper接口中定义查询抽象方法,在UserMapper.xml中查询,id的值对应映射器接口中的方法名,resultType返回结果集就是我们定义的Javabean的类型的结果集填写路径即可,并写出查询语句。回到核心配置文件中告诉mybatis 映射文件的位置。mybatis在运行时会先读取核心配置文件,核心配置文件当中有数据源和映射文件路径,映射文件有接口方法就可以进行操作数据库了。现在工作昨晚开始简单查询。

  <!-- lombox插件-->
    <dependency>
      <groupId>org.projectlombok</groupId>
      <artifactId>lombok</artifactId>
      <version>1.18.36</version>
    </dependency>

在这里插入图片描述在这里插入图片描述在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

<?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 default="development">
        <environment id="development">
            <transactionManager type="JDBC"/>
            <dataSource type="POOLED">
                <property name="driver" value="com.mysql.cj.jdbc.Driver"/>
                <property name="url" value="jdbc:mysql://localhost:3306:/shop"/>
                <property name="username" value="root"/>
                <property name="password" value="root"/>
            </dataSource>
        </environment>
    </environments>
    <mappers>
        <mapper resource="com/jy/mapper/UserMapper.xml"/>
    </mappers>
</configuration>

在这里插入图片描述

查询

先给数据库中添加一条数据,然后在去testapp中用MyBatis 提供的一个SqlSessionFactoryBuilder构建器类,用于创建 SqlSessionFactory 实例。它的作用是从 MyBatis 的配置文件(通常是 mybatis-config.xml)中读取配置信息,并将这些配置信息封装到 SqlSessionFactory 对象中,最终返回一个可以创建 SqlSession 的工厂。这种方法比较笨这里直接先用来尝试了,所以了解即可。可以在我debug的地方打然后debug运行就可以看到数据了

public class AppTest 
    extends TestCase
{
    public void testHello(){
//      1.创建SqlSessionFactoryBulider
        SqlSessionFactoryBuilder builder=new SqlSessionFactoryBuilder();
//        指定mybatis核心配置文件  读取到流中
        InputStream is=getClass().getClassLoader().getResourceAsStream("mybatis-config.xml");
//      2.创建SqlSessionFactory
        SqlSessionFactory factory= builder.build(is);
//      3.创建SqlSession
        SqlSession session= factory.openSession();
//        执行查询
//        通过绑定的 语句 查询(老的 不推荐)  参数一:命名空间加方法名  参数二:id
        User user=session.selectOne("com.jy.mapper.UserMapper.queryUser",1);
        System.out.println("-------------");
//      关闭会话
        session.close();
    }
}

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值