千家信息网

Mybatis增删查改的命令用法

发表于:2025-11-20 作者:千家信息网编辑
千家信息网最后更新 2025年11月20日,这篇文章主要介绍"Mybatis增删查改的命令用法",在日常操作中,相信很多人在Mybatis增删查改的命令用法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"Mybat
千家信息网最后更新 2025年11月20日Mybatis增删查改的命令用法

这篇文章主要介绍"Mybatis增删查改的命令用法",在日常操作中,相信很多人在Mybatis增删查改的命令用法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"Mybatis增删查改的命令用法"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

目录
  • 一、说明

  • 二、开搞

    • 2.1 数据库表

    • 2.1 创建实体类

    • 2.2 创建接口

    • 2.3 创建XML

    • 2.5 测试类

一、说明

这二篇涉及到映射Java实体类、面向接口编写Mybatis、增删查改示例

二、开搞

2.1 数据库表

上一篇好像丢了数据库创建语句

-- 主键自增DROP TABLE IF EXISTS `test`;CREATE TABLE `test`  (  `id` bigint(20) NOT NULL AUTO_INCREMENT,   `name` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,  `salary` decimal(10, 2) NOT NULL,  PRIMARY KEY (`id`) USING BTREE) ENGINE = InnoDB AUTO_INCREMENT = 4 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;-- ------------------------------ 插入测试数据-- ----------------------------INSERT INTO `test` VALUES (1, '小明', 30000.00);

2.1 创建实体类

package entity;import java.math.BigDecimal;/** * @author 发现更多精彩  关注公众号:木子的昼夜编程 * 一个生活在互联网底层,做着增删改查的码农,不谙世事的造作 * @create 2021-08-25 22:05 */public class TestEntity {    private  Long id;    private String name;    private BigDecimal salary;    public Long getId() {        return id;    }    public void setId(Long id) {        this.id = id;    }    public String getName() {        return name;    }    public void setName(String name) {        this.name = name;    }    public BigDecimal getSalary() {        return salary;    }    public void setSalary(BigDecimal salary) {        this.salary = salary;    }    @Override    public String toString() {        return "TestEntity{" +                "id=" + id +                ", name='" + name + '\'' +                ", salary=" + salary +                '}';    }}

2.2 创建接口

package dao;import entity.TestEntity;import java.util.List;/** * @author 发现更多精彩  关注公众号:木子的昼夜编程  分享一个生活在互联网底层做着增删改查的码农的感悟与学习 * @create 2021-08-25 22:07 */public interface TestMapper {    // 新增    void save(TestEntity testEntity);    // 修改    void update(TestEntity testEntity);    // 删除 这里就一个参数 所以不用@Param 也不用Map 自定义实体类等    void delete(Long id);    // 根据主键查询    TestEntity get(Long id);    // 查询所有数据    List list();    // 根据名称模糊查询    List listByNameLike(String name);}

2.3 创建XML

mybatis-config.xml

                                                                                                                                            

TestMapper.xml

                INSERT INTO `test`( `name`, `salary`) VALUE (#{name}, #{salary});                    delete from test where id = #{id}                                        update test set name =#{name}, salary = #{salary} where id = #{id}    

2.5 测试类

先看一下数据库数据

新增数据

import dao.TestMapper;import entity.TestEntity;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.InputStream;import java.math.BigDecimal;import java.util.List;import java.util.Map;/** * @author 发现更多精彩  关注公众号:木子的昼夜编程 * 一个生活在互联网底层,做着增删改查的码农,不谙世事的造作 * @create 2021-08-25 21:26 */public class TestMain {    public static void main(String[] args) throws Exception {        String resource = "mybatis-config.xml";        InputStream inputStream = Resources.getResourceAsStream(resource);        SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);        try (SqlSession session = sqlSessionFactory.openSession()) {            // 通过sesson获取Mapper 这个Mapper会编程Mybatis的代理Mapper            TestMapper mapper = session.getMapper(TestMapper.class);            System.out.println(mapper);            // 1. 插入数据            TestEntity entity = new TestEntity();            entity.setName("小月鸟");            entity.setSalary(new BigDecimal(50000));            mapper.save(entity);            TestEntity entity02 = new TestEntity();            entity02.setName("小强01");            entity02.setSalary(new BigDecimal(50000));            mapper.save(entity02);            TestEntity entity03 = new TestEntity();            entity03.setName("小强02");            entity03.setSalary(new BigDecimal(50000));            mapper.save(entity03);            // 手动提交            session.commit();        }    }}

执行完查看数据库数据:

根据Id 查询数据

import dao.TestMapper;import entity.TestEntity;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.InputStream;/** * @author 发现更多精彩  关注公众号:木子的昼夜编程 * 一个生活在互联网底层,做着增删改查的码农,不谙世事的造作 * @create 2021-08-25 21:26 */public class TestMain {    public static void main(String[] args) throws Exception {        String resource = "mybatis-config.xml";        InputStream inputStream = Resources.getResourceAsStream(resource);        SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);        try (SqlSession session = sqlSessionFactory.openSession()) {            // 通过sesson获取Mapper 这个Mapper会编程Mybatis的代理Mapper            TestMapper mapper = session.getMapper(TestMapper.class);            System.out.println(mapper);            // 1. 根据Id 查询数据            TestEntity testEntity = mapper.get(1L);            System.out.println("查询数据为:"+testEntity);        }    }}

输出结果:

更新数据
把"小月鸟" 工资改成40000

import dao.TestMapper;import entity.TestEntity;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.InputStream;import java.math.BigDecimal;/** * @author 发现更多精彩  关注公众号:木子的昼夜编程 * 一个生活在互联网底层,做着增删改查的码农,不谙世事的造作 * @create 2021-08-25 21:26 */public class TestMain {    public static void main(String[] args) throws Exception {        String resource = "mybatis-config.xml";        InputStream inputStream = Resources.getResourceAsStream(resource);        SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);        try (SqlSession session = sqlSessionFactory.openSession()) {            // 通过sesson获取Mapper 这个Mapper会编程Mybatis的代理Mapper            TestMapper mapper = session.getMapper(TestMapper.class);            System.out.println(mapper);            // 更新            TestEntity entityUpdate = new TestEntity();            entityUpdate.setId(40L);            entityUpdate.setName("小月鸟");            entityUpdate.setSalary(new BigDecimal(40000));            mapper.update(entityUpdate);            session.commit();        }    }}

执行完查看数据库数据:

查询全部数据

import dao.TestMapper;import entity.TestEntity;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.InputStream;import java.util.List;/** * @author 发现更多精彩  关注公众号:木子的昼夜编程 * 一个生活在互联网底层,做着增删改查的码农,不谙世事的造作 * @create 2021-08-25 21:26 */public class TestMain {    public static void main(String[] args) throws Exception {        String resource = "mybatis-config.xml";        InputStream inputStream = Resources.getResourceAsStream(resource);        SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);        try (SqlSession session = sqlSessionFactory.openSession()) {            // 通过sesson获取Mapper 这个Mapper会编程Mybatis的代理Mapper            TestMapper mapper = session.getMapper(TestMapper.class);            System.out.println(mapper);            // 查询列表            List list = mapper.list();            if (list.size() >0) {                for (int i = 0; i < list.size(); i++) {                    System.out.println(list.get(i));                }            }        }    }}

输出结果:

根据名称查询数据

import dao.TestMapper;import entity.TestEntity;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.InputStream;import java.util.List;/** * @author 发现更多精彩  关注公众号:木子的昼夜编程 * 一个生活在互联网底层,做着增删改查的码农,不谙世事的造作 * @create 2021-08-25 21:26 */public class TestMain {    public static void main(String[] args) throws Exception {        String resource = "mybatis-config.xml";        InputStream inputStream = Resources.getResourceAsStream(resource);        SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);        try (SqlSession session = sqlSessionFactory.openSession()) {            // 通过sesson获取Mapper 这个Mapper会编程Mybatis的代理Mapper            TestMapper mapper = session.getMapper(TestMapper.class);            System.out.println(mapper);            // 根据名称模糊查询列表            List list = mapper.listByNameLike("强");            if (list.size() >0) {                for (int i = 0; i < list.size(); i++) {                    System.out.println(list.get(i));                }            }        }    }}

输出结果:

删除数据

import dao.TestMapper;import entity.TestEntity;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.InputStream;import java.util.List;/** * @author 发现更多精彩  关注公众号:木子的昼夜编程 * 一个生活在互联网底层,做着增删改查的码农,不谙世事的造作 * @create 2021-08-25 21:26 */public class TestMain {    public static void main(String[] args) throws Exception {        String resource = "mybatis-config.xml";        InputStream inputStream = Resources.getResourceAsStream(resource);        SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);        try (SqlSession session = sqlSessionFactory.openSession()) {            // 通过sesson获取Mapper 这个Mapper会编程Mybatis的代理Mapper            TestMapper mapper = session.getMapper(TestMapper.class);            System.out.println(mapper);            // 删除数据            mapper.delete(1L);                        session.commit();        }    }}

执行完查看数据库数据:

项目结构:

到此,关于"Mybatis增删查改的命令用法"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!

数据 编程 更多 查询 精彩 互联网 公众 底层 昼夜 互联 生活 不谙世事 世事 数据库 代理 学习 命令 实体 名称 小月 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 公司私有云数据库 做软件开发进不去大厂怎么办 发票打印后显示数据库连接失败 类似八爪鱼的软件开发 酒店网络安全管理工作汇报 学软件开发好还是web前端好 万德数据库如何导入股票代码 学校网络安全的方案 小步舞曲吉他谱软件开发 杭州教育网络安全网上知 网络安全的岗位细分 结构化数据库有哪些产品 平安子公司 软件开发 wifi的网络安全性选什么 绩溪软件开发项目管理在线咨询 业务系统服务器断电 web服务器安全相关的论文 修改电脑名后数据库名不会自己改 重庆永川水果软件开发 安阳佳信网络技术有限公司 百度北京网络技术有限公司 安恒 数据库审计部门型号 软件开发外包平台有什么技术构成 网络服务器管理平台上级是谁 青少年网络安全案 万德数据库海外能用吗 网络安全整治会议 软件开发人员都有哪些 经开区软件开发培训 数据库的添加与删除
0