Mybatis使用注解开发

MyBatis注解开发 MyBatis 注解开发是通过 Java 注解替代传统 XML 映射文件的方式,实现 SQL 语句与 Mapper 接口方法的直接绑定。这种方式减少了配置文件的依赖,使代码结构更紧凑,适合中小型项目或简单 SQL 场景。MyBatis 注解开发通过简洁的注解方式实现了 SQL 与接口的绑定,极大简化了开发流程。本文详细介绍了从环境搭建到各类注解的使用案例,涵盖了基础 CRUD、结果映射、关联查询、动态 SQL、缓存配置和分页操作等核心功能。 阅读详情
  1. 在Mybatis核心配置文件中配置mapper
<mappers>
    <mapper class="dao.UserMapper" />
</mappers>
  1. 编写接口,直接在接口上使用注解写Sql
package dao;

import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import pojo.User;

public interface UserMapper {
    //获得指定id的用户
    @Select("select * from user where id=#{id}")
    User getUserById(@Param("id") int id);

    @Insert("insert into user values (#{id},#{name},#{password})")
    int addUser(User user);
}

这里注意一下:

  • 在使用基本数据类型或String类型为参数的时候建议加上@Param注解
  • 引用类型不需要加

3.测试类

import org.apache.ibatis.session.SqlSession;
import org.junit.Test;
import pojo.User;
import utils.MybatisUtils;

public class UserMapper {
    @Test
    public void test(){
        SqlSession sqlSession = MybatisUtils.getSqlSession();
        dao.UserMapper mapper = sqlSession.getMapper(dao.UserMapper.class);
        mapper.addUser(new User(6,"shen","000000"));

        sqlSession.commit();
        sqlSession.close();
    }
}

#{}和${}的区别
这两者的区别就在于一个是预编译的一个是没有预编译的,所以尽量使用#{}来取参数

Mybatis注解开发(超详细) 注解说明@Insert实现新增@Delete实现删除@Update实现更新@Select实现查询@Result实现结果集封装@Results可以与@Result 一起使用,封装多个结果集@ResultMap实现引用@Results 定义的封装@One实现一对一结果集封装@Many实现一对多结果集封装@SelectProvider实现动态 SQL 映射@CacheNamespace实现注解二级缓存的使用User: 使用注解方式开发持久层接口 IUserDao: 编写 SqlMapConfig.xml 配置文 阅读详情

相关推荐

MyBatis(三、注解开发)

实现复杂关系映射之前我们可以在映射文件中通过配置来实现,使用注解开发后,我们可以使用@Results注解 ,@Result注解,@One注解,@Many注解组合完成复杂关系的配置。​ 修改MyBatis的核心配置文件,我们使用了注解替代的映射文件,所以我们只需要加载使用了注解的Mapper接口即可。这几年来注解开发越来越流行,Mybatis也可以使用注解开发方式,这样我们就可以减少编写Mapper 映射文件了。.........

xmp 1254

MyBatis使用注解开发

一·@Select,@Insert,@Delete,@Update注解 不再需要userMapper的xml映射,直接在接口中的方法上加上注解即可,但还需要在核心配置文件中配置mapper,只能用类class导入。 <mapper class="com.he.dao.userDao.UserMapper"></mapper> 接口方法: 增删改查: public interface UserMapper { @Select("select * from us

qq_45864838的博客 162

零基础玩转华为AP 4050DN-HD:FAT模式家庭无线网络配置实战

本文为零基础用户提供华为AP 4050DN-HD从FIT模式转换为FAT模式的完整实战教程。详细介绍了固件升级、模式转换以及配置家庭无线网络(包括路由、DHCP、Wi-Fi和NAT)的每一步操作,帮助用户将企业级瘦AP改造为高性能家庭胖AP,打造稳定可靠的家庭网络环境。

weixin_29196613的博客 628

mybatis注解批量插入数据

mybatis注解批量插入数据 先上代码 需求:现在有用户表,角色表,关系表,方法传来了用户的id(userId),和用户所拥有哪些角色的id号,添加到他们两的关系表(sys_user_role) @Insert({ "<script>" + "insert into sys_user_role " + "values" + "<foreach collecti...

m0_55108781的博客 687

昇腾Ascend310b部署deepseek-r1-7b的学习记录

9.鲲鹏服务器+昇腾卡(Atlas 300I pro)搭建DeepSeek-R1-Distill-Qwen-7B(自己存档详细版)5.如何使用昇腾Ascend 300I Pro 310P芯片 单卡运行DeepSeek-R1-Distilled-Qwen-7B。6.鲲鹏服务器+昇腾卡(Atlas 300I pro)搭建DeepSeek-R1-Distill-Qwen-7B。7.鲲鹏+昇腾部署DeepSeek-R1-Distill-Qwen-32B+Open-webui。

maken 2369

SAP BO系统启用邮件发送功能

目录 背景 维护邮件目标 启用邮件功能 背景 为了将BO报表或BO预警信息发送给特定的收件人,需要启用SAP BO系统的邮件发送功能。 维护邮件目标 1. 登录BO系统的中央管理控制台(CMC): http://<bo server name>:<port>/BOE/CMC 2. 点击“Organize”底下的“Servers”按钮进入BO服务器界面: 3. 点击“Servers List”进入服务器列表界面,右键点击JobServer&lt.

guowenming001的博客 1962

大量数据插入MySQL的工具类,需配合MybatisPlus注解使用

package com.soooft.tickey.util; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.date.DatePattern; import cn.hutool.core.date.DateTime; import cn.hutool.core.date.DateUtil; import cn.hutool.core.lang.Snowflake; import cn.hutool.core.util.I

Coco的博客 450

从零开始学习CANoe(六)—— CAPL 测试节点

创建CAPL Test Module的两种方式

蚂蚁小兵 1万+

mybatis注解在方法直接编写SQL@Select@Insert@Update@Delete

mybatis注解在方法直接编写SQL 查询 修改 插入 删除

快敲代码去 1万+

论文阅读-Whisper语音识别(OpenAI)

Whisper 是一个自动语音识别(ASR,Automatic Speech Recognition)系统,OpenAI 通过从网络上收集了 68 万小时的多语言,其中11万小时覆盖96 种语言,12万小时的语言标号为英语,用多任务(multitask)监督数据对 Whisper 进行了训练。

一位不是很硕的鉴伪方向硕士 6366

数仓建模—维度建模之维度表

首先要学会识别维度,维度是相对稳定的、可抽象具有共性的、固有的(天然的)描述度量或事实的上下文属性信息,失去维度信息的度量信息是没有意义的或者说是失去维度信息的事实表是没有意义的。其次要掌握维度表的设计原则和设计流程,从而更加科学的设计维度表,其实这些东西都是术,我们一直都说一句话大道至简,其实如果你掌握了精髓,抛开这些术也可以做到得心应手,这就像张无忌练太极剑一样,忘记了才能达到道的境界,也就是无我,如果做不到就记住这些原则加以应用从而达到术的境界。

2401_84052244的博客 4361

mybatis使用注解进行开发

1.在接口的上方进行注解例如 @Select("select * from user") List<User> getUserList(); 2.在配置文件中注册接口 <mappers> <mapper class="com.yf.dao.UserMapper"></mapper> </mappers> 3.进行测试 public void test1(){ SqlSess

niceYF的博客 282

BLDC控制实验:方波、霍尔、开环、定速、正转

本文记录博主学习BLDC控制软件的过程。 文章目录1 概述2 软件架构及工具链2.1 软件架构2.2 工具链3 底层代码生成3.1 时钟配置3.2 按键输入配置 1 概述 本文是博主第一次做BLDC控制实验,目的仅仅是写代码让BLDC转起来,而暂时不考虑其他复杂的需求。 控制的方法是比较简单的六步换相法。利用电机内部的霍尔传感器,通过参考电机厂家给出的二二导通换相表,生成方波来控制电机。第一次实验为了简化需求,只考虑开环、定速、正转的情况: 开环:不考虑速度反馈,直接给PWM让电机转起来; 定速:不考虑速

u013288925的博客 1万+

Mybatis 使用注解开发

Param多参数方法,避免参数混淆通过名字直接引用参数,尤其在动态 SQL 中#{}与${}${}和#{}的区别_#{}和${}-优快云博客lambokLombok 使用教程(超级详细) - 犬小哈教程是什么?一个java库,通过注解的方式简化了java代码的编写。

redemption_2的博客 935

26、遥感图像无监督变化检测方法解析

本文详细解析了遥感图像中的无监督变化检测方法,重点介绍了基于快速模糊 C-均值聚类的无监督变化检测方法(CDFFCM)在滑坡映射中的应用。CDFFCM 方法利用图像结构信息和高斯金字塔技术,提高了检测的准确性,减少了参数数量,并缩短了计算时间。该方法通过与传统方法的对比,展现出在高分辨率遥感图像滑坡检测中的显著优势。此外,文章还探讨了 CDFFCM 的未来发展趋势,包括技术融合、多模态数据应用以及智能化与自动化方向。

game4的博客 149

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

mybatis注解开发

mybatis注解开发 1.概述 Mybatis最大的特点是使用XML存储SQL语句,但是Mybatis也可以使用注解开发方式,好处是不用编写Mapper映射文件,坏处是SQL语句又耦合在Java代码中了。本次我们先围绕一些基本的 CRUD 来学习,再学习复杂映射关系及延迟加载。 2.Mybatis的注解说明 @Insert:实现新增 @Update:实现更新 @Delete:实现删除 @Select:实现查询 @Result:实现结果集封装 @Results:可以与@Result一起使用,封装多个结果集

xiaotai1234的博客 411

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

Mybatis注解开发

因为xml开发的配置,过于繁琐,为了提升开发效率,有了注解开发,只要的都可以使用注解开发,但如果结果集的数据来自于,那还是更建议使用一对一、一对多、多对多的方式,xml和注解是可以的。

冬眠猫的博客 9175

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

计算机控制技术及应用

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

MyBatis入门——使用注解开发

MyBatis入门——使用注解开发一、面向接口编程二、使用注解开发三、MyBatis详细的执行流程四、注解实现CRUD4.1 查询① 查询全部信息② 根据id查询信息4.2 增加4.3 修改4.4 删除五、@Param()注解 Tips:请先阅读: 一、MyBatis入门——第一个MyBatis项目搭建文章 https://blog.youkuaiyun.com/Gauss7/article/details/115264612 二、MyBatis入门——基本CRUD代码编写 https://blog.youkuaiyun.com

Weiyu Tang的博客 339

@column注解_Mybatis 注解开发

这几年来注解开发越来越流行,Mybatis 也可以使用注解开发方式,这样我们就可以减少编写 Mapper 映射 文件了。本次我们先围绕一些基本的 CRUD 来学习,再学习复杂映射关系及延迟加载。 3.1 mybatis 的常用注解说明 @Insert3.2 使用 Mybatis 注解实现基本 CRUD 单表的 CRUD 操作是最基本的操作,前面我们的学习都是基于 Mybaits 的映射文件来实现的...

weixin_39855944的博客 924

MyBatis系统学习(五)——MyBatis的注解开发

MyBatis 是一个支持自定义 SQL、存储过程和高级映射的持久层框架。除了传统的 XML 方式外,MyBatis 还提供了注解的方式进行 SQL 操作定义。这种注解方式将 SQL 直接写在 Java 接口方法上,简化了开发过程,便于维护和使用。@Select:执行查询 SQL。@Insert:执行插入 SQL。@Update:执行更新 SQL。@Delete:执行删除 SQL。@Results@Result:定义结果集的映射。@One@Many:用于处理关联查询(一对一和一对多)。

2301_79858914的博客 2642

MyBatis 注解开发详解

MyBatis 提供了基于 XML 配置和基于注解的两种开发方式。注解方式相对简单,但实际开发中更推荐使用 XML 配置方式,以减少对源代码的修改,提高可维护性。注解方式可以快速开发,但 XML 配置更具灵活性和可维护性。@One和@Many结合可以实现延迟加载,优化查询性能。CRUD 操作通过@Insert@Select@Update@Delete进行实现。一对多、多对一映射可以用@One和@Many进行关联查询。

Future_yzx的博客 1064

【MyBatis】Mybatis 注解开发

【MyBatis】Mybatis 注解开发1. 常用的注解说明2. 通过注解实现基本CRUD操作3. 使用注解实现一对多复杂关系映射3.1 复杂关系映射的注解说明3.2 使用注解实现一对一复杂关系映射及延迟加载3.3 使用注解实现一对多复杂关系映射及延迟加载4. 基于注解的二级缓存 1. 常用的注解说明 @Insert:实现新增 @Update:实现更新 @Delete:实现删除 @Select:...

来日浅谈的博客 543
上一篇: Mbatis执行流程剖析
下一篇: Lombok Maven仓库地址和常用注解
小小代码熊
博客等级 码龄7年 5粉丝 77原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值