mybatis快速使用

mybatis快速使用

  • 1.新建maven工程,pom.xml
<dependencies>
    <dependency>
        <groupId>org.mybatis</groupId>
        <artifactId>mybatis</artifactId>
        <version>3.5.7</version>
    </dependency>
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>8.0.26</version>
    </dependency>
    <dependency>
        <groupId>org.projectlombok</groupId>
        <artifactId>lombok</artifactId>
        <version>1.18.20</version>
    </dependency>

</dependencies>
 <build>
     <resources>
         <directory>sc/main/java</directory>
         <includes>
             <include>**/*.xml</include>
         </includes>
     </resources>

 </build>
  • 2.新建数据表
  • 3.新建数据表对应的实体类Account
package com.southwind.entity;

import lombok.Data;

import javax.swing.*;

/**
 * @author 已黑化的小白
 * @date 2021/9/14 19:44
 */
@Data
public class Account {
    private long  id;
    private  String username;
    private String password;
    private int age;
}
  • 创建mybatis的配置文件config.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">
<configration>
    <!--配置mybatis运行环境-->
    <environments default="development">
        <environment id="development">
            <!-- 配置JDBC的事务管理-->
            <transactionMannager type="JDBC">

            </transactionMannager>
            <!--POOLED配置JDBC数据源连接池-->
            <dataSource type="POOLED">
                <property name="driver" value="com.mysql.cj.jdbc.Driver"></property>
                <property name="url" value="jdbc:mysql//localhost:3306/test?useUnicode=ture&amp;characterEncoding=UTF-8"></property>

                <property name="username" value="root"></property>
                <property name="password" value="123456"></property>
            </dataSource>

        </environment>
        <environment id="b">
            <transactionMannager type="">

            </transactionMannager>
            <dataSource type=""></dataSource>
        </environment>
    </environments>
</configration>

使用原生接口

mybatis 框架需要开发者自定义SQL语句,写在Mapper.xml文件中,在实际开发中,会为每一个实体类创建对应的Mapper.xml,定义管理该对象数据的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="com.southwind.mapper.AccountMapper">
    <insert id="save" parameterType="com.southwind.entity.Account">
    insert into t_account(username,password,age)values(#{username},#{password},#{age})
    </insert>
</mapper>
  • namespace通常设置为文件所在包+文件名的形式

  • insert 标签表示执行添加操作

  • select标签表示执行查询操作

  • update标签表示执行修改操作

  • delete标签标识执行删除操作

  • id是实际调用mybatis方法时需要用到的参数

  • parameterType是调用对应方法时参数的数据类型

2、在全局配置文件config.xml中注册AccountMapper.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>
    <!--配置mybatis运行环境-->
    <environments default="development">

        <environment id="development">
            <!-- 配置JDBC的事务管理-->
            <transactionMannager type="JDBC"></transactionMannager>
            <!--POOLED配置JDBC数据源连接池-->
            <dataSource type="POOLED">
                <property name="driver" value="com.mysql.cj.jdbc.Driver"></property>
                <property name="url" value="jdbc:mysql//localhost:3306/test?useUnicode=ture&amp;characterEncoding=UTF-8"></property>
                <property name="username" value="root"></property>
                <property name="password" value="123456"></property>
            </dataSource>

        </environment>

    </environments>
    <!--注册AccountMapper.xml-->
    <mappers>
        <mapper resource="com/southwind/mapper/AccountMapper.xml"></mapper>
    </mappers>
</configuration>

3.调用mybatis的原生接口执行添加操作。

public class Test {
    public static void main(String[] args){
        //加载mybatis配置文件
        InputStream inputStream=Test.class.getClassLoader().getResourceAsStream(name:"config.xml");
        SqlSessionFactoryBuilder sqlSessionFactoryBuilder=new SqlSessionFactoryBuilder();
        SqlSessionFactory sqlSessionFactory= sqlSessionFactoryBuilder.build(inputStream);
        SqlSession sqlSession=sqlSessionFactory.openSession();
        String statement ="com.southwind.mapper.AccountMapper.save";
        Account account=new Account(id:1L,username:"张三",password:"12123",age:22);
        sqlSession.insert(statement,account);
        sqlSession.commit();//提交事务
    }
}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

已黑化的小白

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值