`

144. Spring Boot MyBatis升级篇-注解-特别篇:@MapperScan和@Mapper

阅读更多

 

 

需求缘起:

       在之前的文章中,我们定义DemoMapper类,但是并没有在该类上定义类似@Service或者@Controller之类的注解,那么为什么可以被Spring管理呢?

 

1)方式一:使用@Mapper注解

       为了让DemoMapper能够让别的类进行引用,我们可以在DemMapper类上添加@Mapper注解:

@Mapper
public interface DemoMapper {
    @Insert("insert into Demo(name) values(#{name})")
    @Options(keyProperty="id",keyColumn="id",useGeneratedKeys=true)
    public void save(Demo demo);
}

 

直接在Mapper类上面添加注解@Mapper,这种方式要求每一个mapper类都需要添加此注解,麻烦。

 

2)方式二:使用@MapperScan注解

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

@SpringBootApplication
@MapperScan("com.kfit.*.mapper")
public class App {
    public static void main(String[] args) {
       SpringApplication.run(App.class, args);
    }
}

 

或者:

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

 

       可以根据包的结构指定不同的表达式。

 

使用@MapperScan注解多个包

可以使用如下的方式指定多个包:

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

 

       如果mapper类没有在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://t.cn/Rg3fKJD

学院中有Spring Boot相关的课程!点击「阅读原文」进行查看!

SpringBoot视频:http://t.cn/A6ZagYTi

Spring Cloud视频:http://t.cn/A6ZagxSR

SpringBoot Shiro视频:http://t.cn/A6Zag7IV

SpringBoot交流平台:https://t.cn/R3QDhU0

SpringData和JPA视频:http://t.cn/A6Zad1OH

SpringSecurity5.0视频:http://t.cn/A6ZadMBe

Sharding-JDBC分库分表实战http://t.cn/A6ZarrqS

 

分布式事务解决方案「手写代码」:http://t.cn/A6ZaBnIr

分享到:
评论

相关推荐

    spring-boot-starter-mybatis-spring-boot-1.0.2.zip

    在Java开发领域,Spring Boot以其简洁的配置和快速的启动特性,已经成为构建微服务应用的首选框架。而MyBatis作为一款强大的持久层框架,深受开发者喜爱,它提供了灵活的SQL映射功能,使得数据库操作变得更加简单。...

    spring-boot-starter-mybatis-spring-boot-2.1.2.zip

    - 使用Java配置:虽然XML配置方便,但Java配置更符合Spring Boot的风格,可以通过`@MapperScan`注解扫描Mapper接口,`@ConfigurationProperties`处理数据源配置。 - 基于注解的Mapper:使用MyBatis提供的`@...

    spring-boot-starter-mybatis-spring-boot-1.3.3.tar.gz

    《Spring Boot集成MyBatis详解》 在现代Java开发领域,Spring Boot以其便捷的初始化、自动配置和微服务架构等特点,已经成为主流的开发框架。而MyBatis作为一款优秀的持久层框架,以其灵活的SQL映射和易于使用的...

    spring-boot-starter-mybatis-spring-boot-1.3.0.tar.gz

    - **实体类和Mapper绑定**:通过`@MapperScan`注解扫描Mapper接口。 3. **Linux环境下的操作** - **解压文件**:使用`tar -zxvf spring-boot-starter-mybatis-spring-boot-1.3.0.tar.gz`命令解压文件。 - **运行...

    mybatis-spring-1.31.jar

    首先,MyBatis-Spring通过自动配置,可以将MyBatis的数据源、SqlSessionFactory和Mapper接口与Spring的bean容器集成。这使得我们可以在Spring配置文件中声明式地管理MyBatis的相关组件,避免了手动创建和管理...

    spring-boot-starter-mybatis-spring-boot-2.2.1.tar.gz

    总结,`spring-boot-starter-mybatis-spring-boot-2.2.1`提供了方便快捷的Spring Boot与MyBatis集成方案,通过简单的配置和注解,即可实现高效的数据访问。开发者可以根据项目的具体需求选择合适的集成方式,充分...

    spring-boot-starter-mybatis-spring-boot-1.2.1.tar.gz

    - 使用`@MapperScan`注解自定义Mapper接口的扫描路径,避免全局扫描带来的问题。 - 使用MyBatis的ResultMap和TypeHandler增强数据处理能力。 - 利用MyBatis的动态SQL功能,提高SQL的可读性和灵活性。 6. **版本...

    spring-boot-starter-mybatis-spring-boot-1.3.1.zip

    6. **Mapper扫描**:在Spring Boot的主配置类上添加`@MapperScan`注解,指定扫描Mapper接口的包路径。例如: ```java @SpringBootApplication @MapperScan("com.example.demo.mapper") public class Application...

    spring-boot-starter-mybatis-spring-boot-2.2.1.zip

    《Spring Boot集成MyBatis详解:基于Spring Boot 2.2.1版本》 在现代Java开发中,Spring Boot框架以其简洁、高效的特性受到了广大开发者喜爱。而MyBatis作为一款优秀的持久层框架,简化了数据库操作,使得SQL与Java...

    spring-boot-starter-mybatis-spring-boot-2.2.0.zip

    本文将围绕"spring-boot-starter-mybatis-spring-boot-2.2.0.zip"这个主题,深入探讨Spring Boot 2.2.0版本如何与MyBatis进行集成,并分享如何在Windows环境下进行免费下载和使用。 首先,`spring-boot-starter-...

    spring-boot-starter-mybatis-spring-boot-3.0.0.tar.gz

    - 使用@MapperScan注解:标记在配置类上,用于扫描Mapper接口。 - 配置SqlSessionFactory:Spring Boot会自动创建并管理SqlSessionFactory,但可以通过自定义`MybatisAutoConfiguration`来个性化配置。 2. **...

    spring-boot-starter-mybatis-spring-boot-2.1.0.tar.gz

    在Spring Boot主类上添加`@MapperScan`注解,指定Mapper接口所在的包,让Spring Boot自动扫描并创建Mapper的Bean: ```java import org.mybatis.spring.annotation.MapperScan; import org.springframework.boot....

    spring-boot-starter-mybatis-spring-boot-2.2.2.zip

    这里特别注意的是,版本号应与标题中的`spring-boot-starter-mybatis-spring-boot-2.2.2.zip`一致,以确保兼容性。 2. 配置MyBatis 在`application.properties`或`application.yml`中,我们需要配置数据源和MyBatis...

    spring-boot-starter-mybatis-spring-boot-1.3.4.zip

    `spring-boot-starter-mybatis`是Spring Boot为MyBatis提供的一个starter,它包含了MyBatis、MyBatis-Spring、以及相关的依赖,使得开发者可以方便地在Spring Boot项目中使用MyBatis。在`pom.xml`或`build.gradle`...

    spring-boot-starter-mybatis-spring-boot-2.0.0.tar.gz

    - 使用@MapperScan注解扫描Mapper接口。 - 自动配置:Spring Boot会自动配置MyBatis的相关组件,如SqlSessionFactory、SqlSessionTemplate等。 4. **特性详解** - 自动配置:Spring Boot的自动配置特性使得...

    spring-boot-starter-mybatis-spring-boot-2.2.0.tar.gz

    - **配置Mapper扫描**:在Spring Boot的主配置类上添加`@MapperScan`注解,指定Mapper接口所在的包。 3. **使用MyBatis注解** - **@Mapper注解**:标记在Mapper接口上,表明这是一个MyBatis的Mapper。 - **@...

    spring-boot-starter-mybatis-spring-boot-1.3.4.tar.gz

    本文将围绕"spring-boot-starter-mybatis-spring-boot-1.3.4.tar.gz"这一压缩包,详细解析Spring Boot 1.3.4版本中如何集成MyBatis,并探讨其主要功能和应用场景。 一、Spring Boot与MyBatis集成概述 Spring Boot...

    spring-boot-starter-mybatis-spring-boot-2.3.0.tar.gz

    《Spring Boot集成MyBatis详解:以2.3.0版本为例》 Spring Boot作为一款快速开发框架,极大地简化了Java应用的初始化和配置过程。而MyBatis作为一款优秀的持久层框架,以其灵活的SQL操作和良好的注解支持,深受...

    spring-boot-starter-mybatis-spring-boot-3.0.0.zip

    2. 使用@MapperScan注解扫描Mapper接口,避免硬编码类路径。 3. 考虑使用MyBatis的动态SQL功能,提高SQL的可维护性。 4. 结合Spring Data JPA,根据项目需求选择合适的数据访问策略。 总结,Spring Boot 3.0.0与...

    spring-boot-starter-mybatis-spring-boot-1.1.1.tar.gz

    而在Spring Boot 1.1.1中,你可以使用Java配置来替代XML配置,通过`@Configuration`和`@EnableMybatis`注解来启用MyBatis。同时,使用`@MapperScan`注解来扫描包含Mapper接口的包。 ```java @Configuration @...

Global site tag (gtag.js) - Google Analytics