@Mapper注解

2023-11-09

目录

mybatis支持的映射方式有基于xml的mapper.xml文件、基于java的使用Mapper接口class。
从mybatis3.4.0开始加入了@Mapper注解,目的就是为了不再写mapper映射文件。

接口方法注解主要是四个:@Insert、@Delete、@Update、@Select

添加了@Mapper注解之后这个接口在编译时会生成相应的实现类

//UserDAO
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
 
import entity.User;
 
/**
 * 添加了@Mapper注解之后这个接口在编译时会生成相应的实现类
 * 
 * 需要注意的是:这个接口中不可以定义同名的方法,因为会生成相同的id
 * 也就是说这个接口是不支持重载的
 */
@Mapper
public interface UserDAO {
 
    @Select("select * from user where name = #{name}")
    public User find(String name);
 
    @Select("select * from user where name = #{name} and pwd = #{pwd}")
    /**
      * 对于多个参数来说,每个参数之前都要加上@Param注解,
      * 要不然会找不到对应的参数进而报错
      */
    public User login(@Param("name")String name, @Param("pwd")String pwd);
}

参考文章:
https://www.cnblogs.com/jiangzhaowei/p/9879040.html.

在这里插入图片描述
在这里插入图片描述
service层会通过dao调用方法,实际上是通过他的实现类。
在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

@Mapper注解 的相关文章

随机推荐

  • 快速修改数组的某个值_不能更改数组的某一部分?

    大家在使用Excel编写公式时 有没有遇到过以下提示 注 版本不同 提示也有差异 有的版本是不能更改数组的某一部分 这是什么原因呢 这里需要介绍一个概念 数组公式 数组就是单元的集合或是一组处理的值集合 可以写一个以数组为参数的公式 即数组
  • ASP.NET Core快速入门(第5章:认证与授权)--学习笔记

    课程链接 http video jessetalk cn course explore 良心课程 大家一起来学习哈 任务31 课时介绍 1 Cookie based认证与授权 2 Cookie based认证实现 3 Jwt认证与授权介绍
  • C# 算法系列 - 贪婪算法(动态规划问题)

    using System using System Collections Generic namespace ConsoleApp1 class Program static void Main string args 贪婪算法 动态规划
  • 国内几个主要的ubuntu 18.04 软件源

    1 阿里源 deb http mirrors aliyun com ubuntu bionic main restricted universe multiverse deb http mirrors aliyun com ubuntu b
  • Numpy学习(2)numpy向量化、numpy操作

    1 Numpy创建向量 Numpy创建的数组有时也称为向量 但要注意两者的区别 需要注意数组的秩 Numpy使用了优化的C api 运算速度快 在深度学习需要运用numpy向量化加快运算速度 NumPy底层用C语言编写 内部解除了GIL 全
  • LeetCode 841:钥匙和房间 Keys and Rooms

    题目 有 N 个房间 开始时你位于 0 号房间 每个房间有不同的号码 0 1 2 N 1 并且房间里可能有一些钥匙能使你进入下一个房间 在形式上 对于每个房间 i 都有一个钥匙列表 rooms i 每个钥匙 rooms i j 由 0 1
  • Oracle中的sqlldr

    Oracle sqlldr用法 sqlldr VGOPDW omzleSYC 565 TMDA CONTROL 63227 sqlldr CTL log 63227 sqlldr log SQL LOADER是ORACLE的数据加载工具 通
  • 三. go 常见控制结构实现原理之 range

    目录 一 基础问题 二 实现原理 1 遍历数组指针或slice 2 遍历map 3 遍历channel 一 基础问题 示例问题 如下程序是否能正常结束 main 函数中定义一个切片v 通过range遍历v 遍历过程中不断向v中添加新的元素
  • Linux系统编程(七)--线程控制

    文章目录 1 线程属性 1 1 pthread attr t 1 2 不同属性的作用 2 互斥量的共享属性 2 1 属性的初始化与回收 2 2 共享属性 3 互斥量的鲁棒属性 3 1 相关函数 3 2 互斥量状态一致性 4 递归型互斥量 4
  • 自定义easyui默认Loading及数据为空提示

    1 添加Loading遮罩层 默认Loading效果较简单 想要改变时 需要自定义Loading 2 自定义Loading 基本配置中定义 无数据时显示的提示信息 var emptyHtml div class empty data img
  • c++学习之函数模板案例--选择排序

    代码示例 include
  • 数组和指针的区别与联系(详细)

    一 概念 数组 数组是用于储存多个相同类型数据的集合 指针 指针相当于一个变量 但是它和不同变量不一样 它存放的是其它变量在内存中的地址 二 赋值 存储方式 求sizeof 初始化等 1 赋值 同类型指针变量可以相互赋值 数组不行 只能一个
  • mac charles永久激活码

    Registered Name https zhile io License Key 48891cf209c6d32bf4 https charles wrbug com charles 激活码在线生成
  • Crouse

    Yes
  • 设置ubuntu终端的命令行颜色

    第一步 sudo gedit bashrc 更改第43行 force color prompt yes 去掉注释 PS1将使用配色方案 PS1 debian chroot debian chroot debian chroot 033 01
  • 第五十二章 Unity Input System 新输入系统

    新输入系统InputSystem是2019年Unity新推出的插件 请注意 Unity默认使用旧的Input Manager 新的Input System处于未启用状态 当你安装Input System组件时 Unity会询问你是否启用新的
  • ubuntu-1804 配置 opevcv-4.0记录

    1 opencv安装包下载及解压 镜像地址 注意opencv contrib版本一致 下载zip压缩包 unzip opencv 4 0 0 zip unzip opencv contrib 4 0 0 解压后可以将版本号去掉 路径看起来好
  • 4399游戏Web前端工程师2021秋招面经

    4399游戏Web前端工程师2021秋招面经 概要 初面 hr面 复面 终面 总结 概要 由于4399秋招有单独开华工专场 所以很幸运免去了笔试 主要的流程是 笔试 初面 基础知识技术面 hr 面 复面 部门技术面 终面 类似主管面 我也不
  • python爬虫--破解登录环节的js加密:haodou

    看到一个网站的登录环节做了密码的加密 尝试着做了破解 权当对js破解的一个练习 网站 http www haodou com 登录url下面看到data如下 其中password和sso token明显是加密后的数据 搜索sso token
  • @Mapper注解

    目录 mybatis支持的映射方式有基于xml的mapper xml文件 基于java的使用Mapper接口class 从mybatis3 4 0开始加入了 Mapper注解 目的就是为了不再写mapper映射文件 接口方法注解主要是四个