使用Mybatis实现mysql数据库的增删改查

首先是准备条件:使用IDEA新建一个maven项目。下载相关的包

<dependencies>
        <dependency>
            <groupId>org.mybatis</groupId>
            <artifactId>mybatis</artifactId>
            <version>3.5.2</version>
        </dependency>
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.47</version>
        </dependency>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.12</version>
            <scope>
                test
            </scope>
        </dependency>
    </dependencies>
这些包可以去maven仓库copy到,或者手敲。毕竟idea快捷键十分方便。

先上一张图,来解释下Mybatis实现增删改查的原理。

在这里插入图片描述
上图是连接数据库的步骤展示,作为一个菜鸡,一开始被很多xml和类弄的很混乱,所以打算做张图帮助理解。按照图上的提示来新建相关文件,条理会更加清晰。
在这里插入图片描述
接下来我会把相关代码按照流程图的顺序贴出:
新建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">
<configuration>
    <environments default="development">
        <environment id="development">
            <transactionManager type="JDBC"/>
            <dataSource type="POOLED">
                <property name="driver" value="com.mysql.jdbc.Driver"/>
                <property name="url" value="jdbc:mysql://localhost:3306/poem"/>
                <property name="username" value="root"/>
                <property name="password" value="**"/>
            </dataSource>
        </environment>
    </environments>
    <mappers>
        <mapper resource="mapper.xml"/>
    </mappers>
</configuration>

输入config文件

String resource = "myconfig";
        InputStream inputStream = null;
        try {
            inputStream = Resources.getResourceAsStream(resource);
        } catch (IOException e) {
            e.printStackTrace();

生产session

SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);

与数据库产生连接

SqlSession session = sqlSessionFactory.openSession();
Usermapper usermapper = session.getMapper(Usermapper.class);

定义接口

public interface Usermapper {
    List<User> select();

通过工具将数据库中的内容映射到实体类中

<?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.dao.mapper.Usermapper">
    <select id="select" resultType="com.dao.User">
    select * from lunyu
  </select>

定义一个实体类

package com.dao;

public class User {
    private int id;
    private String chapter;
    private String content;
    public User(){

    }
    public User(int id,String chapter,String content){
        this.id = id;
        this.chapter = chapter;
        this.content=content;
    }

    public String getContent() {
        return content;
    }

    public void setContent(String content) {
        this.content = content;
    }

    public String getChapter() {
        return chapter;
    }

    public void setChapter(String chapter) {
        this.chapter = chapter;
    }

    public int getId() {
        return id;
    }

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

    @Override
    public String toString() {
        return "User{" +
                "id=" + id +
                ", chapter='" + chapter + '\'' +
                ", content='" + content + '\'' +
                '}';
    }
}

以上实现了查找功能,增加删除和修改表内容与之类似,但值得注意的是增删改需要提交session.commit();
完整的代码会传到git上,上面为帮助理解的代码片段。
地址

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值