Idea(Mybatis框架)中对SQL的增删改查

idea连接数据库(增删改查)通用方法 //1、多条查询方法 public class TestCrud { public static void main(String[] args) { String sql="select*from stus"; List<User> users = TestCrud.queryOne(User.class, sql); System.out.println(users.toString()); } public s 阅读详情

 一:创建原始数据库

二:创建mybatis_1文件,搭建原始Mybatis框架

        1:引入相关依赖

        2:引入相关资源(config核心配置文件、db、log4j)

        3:\src\main\java分别创建包(实体包、映射包、测试包)并创建相应的class类文件

        4:创建实体包与映射链接接口

        5:创建测试类(find查)

三:在Idea中写Mysql的增删改查

 一:创建原始数据库

        

 二:创建mybatis_1文件,搭建原始Mybatis框架

        

        1:引入相关依赖

            

        代码如下:xml

<dependencies>
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>8.0.32</version>
    </dependency>
    <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>4.12</version>
        <scope>test</scope>
    </dependency>
    <dependency>
        <groupId>org.example</groupId>
        <artifactId>mybatis_1</artifactId>
        <version>1.0-SNAPSHOT</version>
    </dependency>
    <dependency>
        <groupId>log4j</groupId>
        <artifactId>log4j</artifactId>
        <version>1.2.12</version>
    </dependency>
</dependencies>

        2:引入相关资源(config核心配置文件、db、log4j)

        

        代码如下:

                mybatis-config:

<?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>
    <!-- 环境配置 -->
    <!-- 加载类路径下的属性文件 -->
    <properties resource="db.properties"/>
    <environments default="development">
        <environment id="development">
            <transactionManager type="JDBC"/>
            <!-- 数据库连接相关配置 ,db.properties文件中的内容-->
            <dataSource type="POOLED">
                <property name="driver" value="${mysql.driver}"/>
                <property name="url" value="${mysql.url}"/>
                <property name="username" value="${mysql.username}"/>
                <property name="password" value="${mysql.password}"/>
            </dataSource>
        </environment>
    </environments>
    <!-- mapping文件路径配置 -->
    <mappers>
        <mapper resource="mapper/UserMapper.xml"/>
    </mappers>

</configuration>

                log4j代码:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
    <appender name="STDOUT" class="org.apache.log4j.ConsoleAppender">
        <param name="Encoding" value="UTF-8"/>
        <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern" value="%-5p %d{MM-dd HH:mm:ss,SSS} %m (%F:%L) \n"/>
        </layout>
    </appender>
    <logger name="java.sql">
        <level value="debug"/>
    </logger>
    <logger name="org.apache.ibatis">
        <level value="info"/>
    </logger>
    <root>
        <level value="debug"/>
        <appender-ref ref="STDOUT"/>
    </root>
</log4j:configuration>

                db代码:mybatis1是你创建数据库的名

mysql.driver=com.mysql.cj.jdbc.Driver
mysql.url=jdbc:mysql://localhost:3306/mybatis1?serverTimezone=UTC&characterEncoding=utf8&useUnicode=true&useSSL=false
mysql.username=root
mysql.password=123456

        3:\src\main\java分别创建包(实体包、映射包、测试包)并创建相应的class类文件

                ①.pojo的class代码:

package org.example.pojo;

public class Users {

    private int id;
    private String name;
    private int age;
    private String sex;

    public int getId() {
        return id;
    }

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

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    public String getSex() {
        return sex;
    }

    public void setSex(String sex) {
        this.sex = sex;
    }

    @Override
    public String toString() {
        return "Users{" +
                "id=" + id +
                ", name='" + name + '\'' +
                ", age=" + age +
                ", sex='" + sex + '\'' +
                '}';
    }
}

                 ②、Mapper和Utils的代码暂时不填

        4:创建实体包与映射链接接口

                UsersMapper代码如下:

<?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为映射的根节点-->
<!-- mapper为映射的根节点,namespace指定Dao接口的完整类名
mybatis会依据这个接口动态创建一个实现类去实现这个接口,
而这个实现类是一个Mapper对象-->
<mapper namespace="com.example.pojo.User">
    <!--id ="接口中的方法名"
  parameterType="传入的参数类型"
  resultType = "返回实体类对象,使用包.类名"-->
    <select id="findById" parameterType="int"
            resultType="com.example.pojo.User">
        select *
        from users
        where id = #{id}
   </select>
</mapper>

        5:创建测试类

代码如下:

@Test
public void testFindUserById(){
    SqlSession session = MyBatisUtil.getSqlSession();

    UserMapper mapper = session.getMapper(UserMapper.class);
    User user = mapper.findUserById(1);
    System.out.println("user = " + user);

}

三:在Idea中写Mysql的增删改查

        ①:写映射类:

                ②:写映射文件:


<insert id="insertEmp" parameterType="Employee">
    insert into employee values(null, #{name}, #{age}, #{position});
</insert>

<!--public int updateEmpById(Employee employee);-->
<update id="updateEmpById" parameterType="employee">
    update employee set name=#{name}, age=#{age}, position = #{position} where id = #{id}
</update>

<!--public int deleteEmpById(int id);-->
<delete id="deleteEmpById" parameterType="int">
    delete from employee where id=#{id}
</delete>

 

                ③:写测试类:

public class TestUser {
    @Test
    public void testFindUserById(){
        SqlSession session = MyBatisUtil.getSqlSession();

        UserMapper mapper = session.getMapper(UserMapper.class);
        User user = mapper.findUserById(1);
        System.out.println("user = " + user);

    }

    @Test
    public void testInsertEmp(){
        SqlSession session = MyBatisUtil.getSqlSession();
        UserMapper mapper = session.getMapper(UserMapper.class);
        User emp = new User();
        emp.setUname("小米");
        emp.setUage(24);
        emp.setUid(3);
        int result = mapper.insertUser(emp);
    }


    @Test
    public void testUpdateEmp(){
        SqlSession session = MyBatisUtil.getSqlSession();
        UserMapper mapper = session.getMapper(UserMapper.class);
        User emp = new User();
        emp.setUid(4);
        emp.setUname("小明");
        emp.setUage(36);
        int result = mapper.updateUserById(emp);
    }

    @Test
    public void testDeleteEmpById(){
        SqlSession session = MyBatisUtil.getSqlSession();
        UserMapper mapper = session.getMapper(UserMapper.class);
        int result = mapper.delUserById(5);
    }

}

执行结果:

使用IDEA对mysql数据库进行简单增删改查操作测试 1.在text测试源根中添加一个名为db的包,在包db中添加一个名为TestMySqlDbUtil的类来测试对数据库的增删改查。 2.代码块如以下: package db; import cn.edu.mju.project13zjl.persist.impl.MySqlDbUtil; import org.junit.Test; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultS 阅读详情

相关推荐

Java之MyBatis【IDEA版】(一篇文章精通系列)增删改查【XML开发】 - 所有知识点(大全)

采用 Mybatis 的代理开发方式实现 DAO 层的开发,这种方式是我们后面进入企业的主流。Mapper 接口开发方法只需要程序员编写Mapper 接口(相当于Dao 接口),由Mybatis 框架根据接口定义创建接口的动态代理对象,代理对象的方法体同上边Dao接口实现类方法。Mapper 接口开发需要遵循以下规范:1、 Mapper.xml文件中的namespace与mapper接口的全限定名相同2、 Mapper接口方法名和Mapper.xml中定义的每个statement的id相同。

2401_84048034的博客 998

IDEA实现商品增删改查和保存

打开一个新的工作空间,不能有其他项目。 以图3为标准,创建xml和实体类用于存储数据,并初始化添加两条数据 创建图1界面 创建图2界面 图1中,当点击添加时,将数据添加到xml中,并自己创建id属性,完成之后跳转到图3界面显示 图2中,解析xml中,展示所有信息 图2中,当点击修改按钮时,跳转到图3进行回显 图3中,商品id不能被操作,当点击修改按钮时,去xml中修改数据,并跳转到图2界面 图2中,当点击删除按钮时,删除数据 图2中,当点击保存按钮时,将数据保存到D盘下的商品.txt文件中

weixin_53748496的博客 4595

IDEA+Maven使用MyBatis实现CRUD操作(内容详细,万字长文带你了解MyBatis~)

MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录。Hello,大家好,今天我为大家带来在IDEA中使用Maven构建MyBatis项目,实现简单的增删改查操作,首先,之前用的是JDBC实现数据库的CRUD操作,拼接SQL语句过于麻烦,代码容易出错,大大降低开发效率。总结了博主在学习过程中的一些经验,下面进入构建项目。单击apply同意,单击ok,连接成功,如下页面。

2401_89840782的博客 514

un630:如何在IDEA上写出一套完整的增删改查

新手在idea初期,快速的实现一套增删改查!

努力是为了让自己不平庸。。。 4262

从零配置Archery:手把手教你用Docker部署多数据库审核系统(MySQL/PostgreSQL/ClickHouse)

本文详细介绍了如何从零开始使用Docker部署Archery多数据库审核系统,涵盖MySQL、PostgreSQL和ClickHouse的配置与整合。文章提供了生产级Docker-compose配置、审核规则定制、工单流程设置以及企业微信通知集成等实战指南,帮助团队构建统一的企业级SQL审计平台,提升数据库操作规范与安全。

e4f5g6h7的博客 941

python k线顶分型_【缠论】分型、笔的定义及其程序化

K线包含关系处理和分型的定义如果一个K线的高低点全在另一K线的范围里,称之为包含关系。针对这种K线,需要进行一些处理,去除包含关系,处理方法:向上时,把两K线的高点当高点,而两K线低点中的较高者当成低点;反之,当向下时,把两K线的低点当低点,而两K线高点中的较低者当成高点,这样就把两K线合并成一新的K线。经过这样的处理,所有K线图都可以处理成没有包含关系的图形。两K线的包含关系,可以分成四种:1)...

weixin_39717152的博客 2825

Mybatis在idea的搭建

Mybatis原是Apache的一个开源项目iBatis,2010年6月这个项目由Apache Software Found 迁移到 Google Code,伴随着开发团队转投Google Code下面,iBatis3.x正式更名为Mybatis。特点:Mybatis是一款优秀的持久层框架.避免了几乎所有的JDBC代码手动设置参数以及手动获取结果集的操作.

bo2415126360的博客 3504

使用C#调用百度地图并实现坐标点的设置以及读取

使用C#调用百度地图申请百度地图密钥以及查看百度API程序实现功能:最终图利用webBrowser控件展示地图 申请百度地图密钥以及查看百度API 网址:http://lbsyun.baidu.com/apiconsole/key#/home 网址:http://lbsyun.baidu.com/jsdemo.htm#c1_3 程序实现功能: 1、输入网址那可以调用本地的html文件,也可以访问其他网站 2、输入坐标、添加坐标按钮,可以将坐标值传入html文件中,显示在经纬度的文本框中 3、定位按钮可以

qq_39261042的博客 3735

MyBatis 框架,java中的工厂模式的面试题

小编在这里分享些我自己平时的学习资料,由于篇幅限制,pdf文档的详解资料太全面,细节内容实在太多啦,所以只把部分知识点截图出来粗略的介绍,每个小节点里面都有更细化的内容!程序员代码面试指南 IT名企算法与数据结构题目最优解这是” 本程序员面试宝典!书中对IT名企代码面试各类题目的最优解进行了总结,并提供了相关代码实现。针对当前程序员面试缺乏权威题目汇总这一-痛点, 本书选取将近200道真实出现过的经典代码面试题,帮助广“大程序员的面试准备做到万无一失。“刷”完本书后,你就是“题王”!

2401_83620690的博客 710

LangGraph 实战教程:搭建一个智能办公多Agent协作平台

只存储必要的信息:不要把所有的原始数据都存储在状态中,比如销售数据可以存储在数据库或向量数据库中,状态中只存储数据的 ID 或摘要。使用类型提示:避免类型错误,提高代码的可维护性。支持增量更新:LangGraph 默认支持状态的增量更新(通过reduce函数),比如messages列表可以通过追加新消息的方式更新,而不是每次都重新创建整个列表。Normal Edge 的定义非常简单,只需要在StateGraph对象(稍后会详细讲解)上调用add_edge# 创建一个 StateGraph 对象。

SuperAGI2025 222

反爬虫:POST 请求参数中 Sign 的加密机制详解,并设计带 Sign 校验的网站

本文介绍了API请求中sign签名的生成原理及实现方法。sign是通过对请求参数加密生成的一串字符串,用于验证请求合法性,防止参数篡改、重放攻击和伪造请求。其生成步骤包括参数排序、拼接字符串、加盐和哈希加密。文章还演示了如何在FastAPI后端实现带sign验证的新闻网站,包括参数校验、时间戳验证和签名比对等安全措施,有效提升API安全性,增加爬虫逆向难度。

数据知道的博客 4078

秒鲨后端之MyBatis【2】默认的类型别名、MyBatis的增删改查、idea中设置文件的配置模板、MyBatis获取参数值的两种方式、特殊SQL的执行

建议分成两种情况进行处理实体类类型的参数使用@Param标识参数。

m0_74825565的博客 921

相位偏折PMD全栈技术拆解 | 四步相移解算+梯度积分形貌重建,助力镜面工件微米级缺陷高精度稳定检测

工业精密检测领域中,高反光镜面类工件长期存在检测瓶颈,涵盖汽车高亮车漆、半导体抛光晶圆、光学透镜、精密抛光模具、玻璃盖板等主流产品。传统2D机器视觉仅能识别表面明显污渍、大尺寸破损,完全无法捕捉微米级划痕、凹坑、橘皮、曲面微形变等微观缺陷;常规线激光3D、普通结构光3D检测设备,面对镜面材质会产生严重镜面反射杂光,激光条纹、结构光图案完全失真,必须喷涂显影粉辅助检测,不仅破坏工件表面完整性,还无法适配自动化量产产线,检测效率与良率极低。

getusushu的博客 544

在Idea中创建maven工程,搭建mybatis框架并完成数据库表的增删改查操作

一、创建和配置项目 1、先创建一个maven空项目 2,右键这个项目,新建一个Module 下一步完成即可。 3,在pom.xml中导入以下代码,我的文件夹有target是因为我运行过,这个是类路径文件夹,等你运行过后也会有 导入后maven会自动下载这些jar包 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmln..

qq_35965559的博客 553

AI硬件加速:CPU vs GPU性能对比

AI硬件加速:CPU vs GPU性能对比 关键词:人工智能、硬件加速、CPU、GPU、性能对比、硬件架构、并行计算、优化策略、项目实战 摘要: 本文将深入探讨AI

AI天才研究院 1914

自抗扰控制(ADRC)理论与工程实践:8.2 模糊ADRC、神经网络ADRC等智能融合变体

智能融合ADRC变体概述 自抗扰控制(ADRC)与智能控制方法(如模糊逻辑、神经网络)的融合,旨在突破传统ADRC在非线性、时变系统中的应用局限。智能融合ADRC主要通过以下方式实现性能提升: 模糊ADRC 参数自整定:利用模糊推理在线调节ADRC带宽参数,实现自适应控制。 非线性反馈:用模糊控制器替代线性PD,灵活设计非线性控制策略。 优势:融入专家经验,无需精确模型;局限:依赖规则库设计,稳定性分析困难。 神经网络ADRC 增强ESO:用神经网络学习扰动动态,提高估计精度。

技术工作者 228

IDEA+mybatis实现增删改查(CURD)

操作mybaits和mysql进行增删改查是必备的一步,今天写一篇文章简单记录一下mybatis的增删改查操作。

城南蝈蝈 426

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

【Mybatis】从0到单表增删改查

目录环境1、创建user表2、创建Maven工程3、导入相关依赖4、编写Mybatis-config.xml文件5、bean层6、dao层7、配置userMapper.xml9、在总配置文件中注册映射文件10、测试 环境 IDEA、Mysql8 1、创建user表 2、创建Maven工程 3、导入相关依赖 <!-- mysql-connector-java --> <dependency> <groupId>mysql</groupId> &

weixin_45321793的博客 193

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

IDEA配置MyBatis实现数据库增删改查

您的支持是我持续创作的动力,也欢迎留言交流,让我们一起探讨技术,共同成长!🚀✨”

saber的博客 2454

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

MyBatis增删改查

3:\src\main\java分别创建包(实体包、映射包、测试包)并创建相应的class类文件。-- 数据库连接相关配置 ,db.properties文件中的内容-->3:\src\main\java分别创建包(实体包、映射包、测试包)并创建相应的class类文件。resultType = "返回实体类对象,使用包.类名"-->-- mapping文件路径配置 -->-- 加载类路径下的属性文件 -->5:创建测试类(find查)-- mapper为映射的根节点-->--id ="接口中的方法名"

weixin_67457490的博客 141

mybatis框架的搭建心得,快速实现最简单的增删改查,学生可看(附代码)

前言 博主也是学生知道学生最想知道啥,我会给出每一步步骤,要是想知道每一步的原理我可以以后再出一篇有关mybatis框架的的使用注意事项。 一.搭建mybatis需要的条件 1.安装idea 2.安装maven(尽量用官网下载的,idea自带的不推荐) 3.安装mysql (还有一些java环境啥的就不多说了) 二.搭建mybatis框架 先创建一个maven项目 1.设置项目名,2.设置GroupId这个自己的话用自己名字就行,不影响。 删除src目录(这里不要纠结为什么,等搭建好以后如果有多个my

qq_53049771的博客 1063

idea创建mysql映射文件_Mybatis从浅入深(IDEA版通俗易懂)

抱怨是一件最没意义的事情。如果实在难以忍受周围的环境,那就暗自努力练好本领,然后跳出那个圈子。你好,我是梦阳辰,快来和我一起学习吧!引入1.三层架构界面层:和用户打交道的,接收用户的请求参数,显示处理结果的。(jsp , htnml , servlet)业务逻辑层:接收了界面层传递的数据,计算逻辑,调用数据库,获取数据数据访问层:就是访问数据库,执行对数据的查询,修改,删除等等的。三层对应的包界面...

weixin_29100927的博客 1239

MyBatis(看这一篇就够了)

Mybatis详细版

HUACAIBOKE的博客 1251

使用IDEA搭建Mybatis-plus框架并实现数据库增删改查

**Mybatis-Plus是一款 MyBatis 动态 sql 自动注入 crud 简化 增 删 改 查 操作中间件。启动加载 XML 配置时注入 mybatis 单表 动态 SQL 操作 ,为简化开发工作、提高生产率而生。Mybatis-Plus 启动注入非拦截实现、性能更优。** 一、idea快速创建SpringBoot项目 1、创建Spring Initializr模块 【1】点击:file—>new—>project,选择 Spring Initializr,直接点击下一个 【2.

weixin_46014155的博客 1297

Mybatis增删改查(CURD)操作

Mybatis实现数据的增删改查 什么是 MyBatis ? MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 POJOs(Plain Old Java Objects,普通的 Java对象)映...

qq_34651407的博客 729

入门MyBatis

入门MyBatis

qq_62678419的博客 1019
下一篇: Idea与动态SQL标签
舒安生
博客等级 码龄5年 7粉丝 10原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值