Loading [MathJax]/jax/input/TeX/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >@MapperScan注解使用

@MapperScan注解使用

作者头像
全栈程序员站长
发布于 2022-07-02 02:42:47
发布于 2022-07-02 02:42:47
4680
举报

大家好,又见面了,我是你们的朋友全栈君。

1、@Mapper注解: 作用:在接口类上添加了@Mapper,在编译之后会生成相应的接口实现类 添加位置:接口类上面

@Mapper public interface UserDAO { //代码 }

如果想要每个接口都要变成实现类,那么需要在每个接口类上加上@Mapper注解,比较麻烦,解决这个问题用@MapperScan

2、@MapperScan 作用:指定要变成实现类的接口所在的包,然后包下面的所有接口在编译之后都会生成相应的实现类 添加位置:是在Springboot启动类上面添加,

@SpringBootApplication @MapperScan(“com.winter.dao”) public class SpringbootMybatisDemoApplication {

public static void main(String[] args) { SpringApplication.run(SpringbootMybatisDemoApplication.class, args); } }

添加@MapperScan(“com.winter.dao”)注解以后,com.winter.dao包下面的接口类,在编译之后都会生成相应的实现类

3、使用@MapperScan注解多个包 (实际用的时候根据自己的包路径进行修改)

@SpringBootApplication @MapperScan({“com.kfit.demo”,”com.kfit.user”}) public class App { public static void main(String[] args) { SpringApplication.run(App.class, args); } }

4、 如果dao接口类没有在Spring Boot主程序可以扫描的包或者子包下面,可以使用如下方式进行配置: (没验证过,不确定能否使用,或许需要根据自己定义的包名进行修改路径)

@SpringBootApplication @MapperScan({“com.kfit.*.mapper”,”org.kfit.*.mapper”}) public class App { public static void main(String[] args) { SpringApplication.run(App.class, args); } } 原文:https://blog.csdn.net/nba_linshuhao/article/details/82783454

早点的时间是直接在Mapper类上面添加注解@Mapper,这种方式要求每一个mapper类都需要添加此注解,比较麻烦。

现在通过使用@MapperScan可以指定要扫描的Mapper类的包的路径,比如:

@SpringBootApplication @MapperScan(“com.lz.water.monitor.mapper”) // 添加对mapper包扫描 public class Application {

public static void main(String[] args) { SpringApplication.run(Application.class, args); }

}

同时,使用@MapperScan注解多个包

  1. @SpringBootApplication
  2. @MapperScan({“com.kfit.demo”,”com.kfit.user”})
  3. public class App {
  4. public static void main(String[] args) {
  5. SpringApplication.run(App.class, args);
  6. }
  7. }

如果如果mapper类没有在Spring Boot主程序可以扫描的包或者子包下面,可以使用如下方式进行配置

  1. @SpringBootApplication
  2. @MapperScan({“com.kfit.*.mapper”,”org.kfit.*.mapper”})
  3. public class App {
  4. public static void main(String[] args) {
  5. SpringApplication.run(App.class, args);
  6. }
  7. }

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/130203.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
注解@Mapper、@MapperScan
注解@Mapper、@MapperScan
Java架构师必看
2021/09/14
4050
Spring Boot MyBatis注解:@MapperScan和@Mapper
在之前的文章中,我们定义DemoMapper类,但是并没有在该类上定义类似@Service或者@Controller之类的注解,那么为什么可以被Spring管理呢?
全栈程序员站长
2022/07/01
5470
1.2.Spring Boot核心注解@MapperScan注解
之前是,直接在Mapper类上面添加注解@Mapper,这种方式要求每一个mapper类都需要添加此注解,麻烦。
itjim
2019/11/19
1.4K0
1.2.Spring Boot核心注解@MapperScan注解
@Mapper 与 @MapperScan 的区别[通俗易懂]
作用:用在接口类上,在编译之后会生成相应的接口实现类 位置:对应的某个接口类上面
全栈程序员站长
2022/09/06
3K0
SpringBoot的常用注解
使用 Spring 开发时,进行配置主要有两种方式,一是 xml 的方式,二是 java config 的方式。Spring 技术自身也在不断的发展和改变,从当前 Springboot 的火热程度来看,java config 的应用是越来越广泛了,在使用 java config 的过程当中,我们不可避免的会有各种各样的注解打交道,所有,注解在实际开发中的地位很高。
Java学术趴
2022/06/24
4540
SpringBoot的常用注解
springboot快速入门前言:一、springboot简介:二、springboot常用知识点:总结:
正所谓,天下武功,唯快不破,在当今生活节奏越来越快的时代,我们也要讲求效率,也要追求一个快字(不过有些方面还是不能快的,不要当快男哦)。springboot就是能简化配置、敏捷开发的东西。做同一个项目,用spring你可能还在写xml,用springboot的话你可能已经做完在约妹子了!
贪挽懒月
2018/08/02
6340
springboot快速入门前言:一、springboot简介:二、springboot常用知识点:总结:
Spring高手之路2——深入理解注解驱动配置与XML配置的融合与区别
XML配置中,我们通常采用ClassPathXmlApplicationContext,它能够加载类路径下的XML配置文件来初始化Spring应用上下文。然而,在注解驱动的配置中,我们则使用以Annotation开头和ApplicationContext结尾的类,如AnnotationConfigApplicationContext。AnnotationConfigApplicationContext是Spring容器的一种,它实现了ApplicationContext接口。
砖业洋__
2023/06/06
1.2K0
Spring高手之路2——深入理解注解驱动配置与XML配置的融合与区别
通过@MapperScan源码了解Spring自定义注解扫描器[通俗易懂]
我们在使用springboot 整合MyBatis时,需要在启动类上添加上@MapperScan注解,并写入mapper接口的包路径,然后我们就能通过从spring IOC容器中取对应的mapper的Bean来进行持久化操作了,那么@MapperScan是如何将mapper接口实例化并注入到Spring IOC容器中的呢?
全栈程序员站长
2022/08/31
3K0
通过@MapperScan源码了解Spring自定义注解扫描器[通俗易懂]
解决Spring中报错 required a single bean, but 2 were found
启动后报错:required a single bean, but 2 were found
@依然范特西
2023/05/13
5.8K0
解决Spring中报错 required a single bean, but 2 were found
SpringBoot中Server层以及Mapper层常用注解
@Service : @Service注解用于类上,标记当前类是一个service类,加上该注解会将当前类自动注入到spring容中。
Java学术趴
2022/07/02
5.4K0
SpringBoot中Server层以及Mapper层常用注解
SpringBoot快速整合通用Mapper
后端业务开发,每个表都要用到单表的增删改查等通用方法,而配置了通用Mapper可以极大的方便使用Mybatis单表的增删改查操作。
用户10384376
2023/02/26
5020
SpringBoot快速整合通用Mapper
@Repository 与 @Mapper的区别
@Repository 和 @Mapper 都是用于标记数据访问层(DAO层)的注解,但它们来自不同的框架且有着不同的作用。具体区别分析如下:
用户4396583
2024/07/31
8780
SpringBoot+Mybatis多模块项目搭建教程
框架为SpringBoot+Mybatis,本篇主要记录了在IDEA中搭建SpringBoot多模块项目的过程。
阮键
2019/08/01
1.6K0
Spring Boot整合Servlet,Filter,Listener,访问静态资源
注意:在启动类上需要加上@ServletComponentScan注解 意思是:在启动时扫描@WebServlet注解 ,创建Servlet的实例
JokerDJ
2023/11/27
2680
Spring Boot整合Servlet,Filter,Listener,访问静态资源
Spring Boot + MyBatis 多模块项目搭建教程
最近公司项目准备开始重构,框架选定为SpringBoot+Mybatis,本篇主要记录了在IDEA中搭建SpringBoot多模块项目的过程。
dys
2021/11/12
9470
Spring Boot + Mybatis 多模块(module)项目的完整搭建教程
最近公司项目准备开始重构,框架选定为SpringBoot+Mybatis,本篇主要记录了在IDEA中搭建SpringBoot多模块项目的过程。
芋道源码
2019/07/05
2K0
Spring Boot + Mybatis 多模块(module)项目的完整搭建教程
微服务项目:尚融宝(2)(上手复习mybatisplus)
MyBatis-Plus(简称 MP)是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。 
一个风轻云淡
2022/11/15
2820
微服务项目:尚融宝(2)(上手复习mybatisplus)
springboot中通过main方法调用service或dao
大多数情况下,我们使用springboot是创建一个web项目,然后通过接口访问,但是也有特殊情况,比如线上跑着的web项目,有一些特殊的数据,需要经过计算导入到数据库,这个时候,我们可能需要原来的web项目中的一些service,dao才辅助操作,但是又不能在服务端新开接口。我们通过springboot的main方法执行这些操作。 此时,service和到需要通过上下文获得。
tongyao
2022/06/09
1.3K0
spring boot 启动的时候required a bean of type 'XXX' that could not be
Description: Field mapper in com.kaigejava.kgblog,service.impl.UserServiceImpl required a bean of type 'com.kaigejava.kgblog.dao.UserDao' that could not be found. Action: Consider defining a bean of type 'com.kaigejava.kgblog.dao.UserDao' in your configuration.
凯哥Java
2022/12/15
2.6K0
将MapperScan错误使用导致的BindingException问题
在前面的代码中,使用fluent mybatis的mapper对表进行增删改查都没有问题。 但是fluent mybatis官方也说了,自动会生成dao层代码,将dao及其实现类都生成好了。因此也想尝试下生成的代码使用的效果。 此外,由于不想建多个project来进行测试,因此对于不同的测试,都在src/main/java下面弄各种不同的包来进行区分。本次测试的package:com.dhb.gts.javacourse.week6.mysqltest目录。
冬天里的懒猫
2021/09/22
1.7K0
推荐阅读
相关推荐
注解@Mapper、@MapperScan
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档