配置MyBatis流程

配置MyBatis流程

  1. 下载并安装IDEA,准备写第一个项目

  2. 下载MyBatis

    进入MyBatis官网下载MyBatis最新版本 入门 -->安装 -->点击mybatis-x.x.x.jar下载MyBatis

    官网地址:https://mybatis.org/mybatis-3/zh/index.html

  3. 将下载好的jar文件导入IDEA项目中

    • 在IDEA中新建一个项目(Text) 新建目录 lib

    • 移入lib中的jar:

      1、OJDBC连接器(如果没有,在MySQL官网下载:https://downloads.mysql.com/archives/c-odbc/下载对应版本)

      2、解压下载好的mybatis-x.x.x,将改目录下的mybatis-x.x.x.jar和lib中的jar文件全部导入Test项目中的lib目录下

      3、将lib中的所有jar文件右键导入库

  4. 使用XML文件来配置项目

    在src目录下新建mybatis.xml文件,在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>
      <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>
    

这里配置以上核心配置文件的参数

  • configuration

    配置文件的根元素,所有的其他元素都要在这个标签下使用(dtd

    文件规定)

  • environments default=“development”

    由于管理所有环境,可以指定默认使用哪个环境,通过default属性指定

  • environments

    用来配置环境,id属性用于唯一标识当前环境

  • transactionManager type=“JDBC”

    用户配置事务管理器

    ​ type属性

    ​ 用来指定MyBatis使用哪种方式管理事务

    ​ JDBC:表示采用与原生JDBC一致方式管理事务

    ​ Manager:表示事务管理交给其他容器进行,Spring

  • dataSource type=“POOLED”

    用于配置数据源,设置Myabtis是否使用连接池技术,并且配置数据库的四个连接参数

    type属性:

    POOLED:装示采用连接池技术

    UNPOOLED:表示每次都会开启和关闭连接,不采用连接池技术

    JNDI:使用其他容器提供数据源

  • 需要修改的参数:property

    用于配置数据库连接参数(driver,url,username,password)

    本项目使用的driver:org.gjt.mm.mysql.Driver

    url为jdbc:mysql://47.95.216.50/bookdb04

    username:root password:abc123456

    <dataSource type="POOLED">
        <property name="driver" value="org.gjt.mm.mysql.Driver"/>
        <property name="url" value="jdbc:mysql://47.95.216.50/bookdb04"/>
        <property name="username" value="root"/>
        <property name="password" value="abc123456"/>
    </dataSource>
    
  • 需要修改的参数mappers:

    <mappers>
        <mapper resource="org/mybatis/example/BlogMapper.xml"/>
    </mappers>
    

    BlogMapper.xml映射文件用于执行SQL查询,需要新建xml文件配置SQL查询语句

    在MyBatis官网下–入门中找到探究已映射的 SQL 语句

    有如下代码

    <?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="org.mybatis.example.BlogMapper">
      <select id="selectBlog" resultType="Blog">
        select * from Blog where id = #{id}
      </select>
    </mapper>
    

在src中创建新的xml文件Dept1.xml(文件名自定义)作为BlogMapperxml执行

将以上代码黏贴在Dept1.xml上

namespace命名空间 名称可自定义 必填

select :定义查询语句

id:是当前命名空间下的sql语句的唯一标识,当前命名空间不能重复

resultType:结果类型:数据类型int、double、String·······也可以是自定义类型

这里示范一个实例:

在src目录下新建包com.xxxx.mapper

右键新建Dept1.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">
<mapper namespace="com.xxxx.mapper.Dept1">
    <select id="c8" resultType="String">
        select 图书名称 from c8
    </select>
</mapper>

修改mybatis中的mappers标签:

<mappers>
    <mapper resource="com/xxxx/mapper/Dept1.xml"/>
</mappers>

继续在该包下新建java文件Test.java

package com.xxxx.mapper;
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 java.io.IOException;
import java.io.InputStream;
import java.util.List;

public class Test {
    public static void main(String[] args) throws IOException {
        InputStream is = Resources.getResourceAsStream("mybatis.xml");
        SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(is);
        SqlSession session=factory.openSession();
        List<String>list =session.selectList("com.xxxx.mapper.Dept1.c8");
        list.forEach(System.out::println);
        session.close();
    }
}

成功查询出c8表中的所有图书名称
c8表中的数据

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值