SpringBoot Mybatis整合(注解版),SpringBoot集成Mybatis(注解版)
================================
©Copyright 蕃薯耀 2018年4月8日
http://fanshuyao.iteye.com/
一、引入Mybatis依赖包:
<dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>1.3.2</version> </dependency>
数据库连接依赖包:
<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <scope>runtime</scope> </dependency> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>1.1.9</version> </dependency>
二、建立对应的表和Java实体(过程略)
三、建立实体对应的Mapper(如UserMapper )
import org.apache.ibatis.annotations.Insert; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Options; import org.apache.ibatis.annotations.Select; import com.lqy.springboot.bean.User; @Mapper public interface UserMapper { @Select("select * from user where user_id = #{userId}") public User getById(Integer userId); @Options(useGeneratedKeys=true,keyProperty="userId") @Insert("insert into user(user_name,age) values(#{userName},#{age})") public Integer save(User user); }
注意:使用注解版需要在类上加上@Mapper注解,让SpringBoot自动扫描能识别
@Mapper
问题:如果有很多Mapper接口,能不能一次性扫描呢?
有。
在程序启动入口加入注解:
@MapperScan(basePackages= {"com.lqy.springboot.mapper"})
具体如下:
import org.mybatis.spring.annotation.MapperScan; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; //Mybatis自动扫描包 //@MapperScan(basePackages= {"com.lqy.springboot.mapper"}) @SpringBootApplication public class SpringbootDatasourceApplication { public static void main(String[] args) { SpringApplication.run(SpringbootDatasourceApplication.class, args); } }
这样就能解决多Mapper需要添加注解的麻烦。
四、测试Mapper
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import com.lqy.springboot.bean.User; import com.lqy.springboot.mapper.UserMapper; @RestController public class UserController { @Autowired private UserMapper userMapper; @RequestMapping("/getUser") public User getUser(Integer userId) { if(userId == null) { userId = 1; } return userMapper.getById(userId); } @RequestMapping("/saveUser") public User saveUser(User user) { userMapper.save(user); return user; } }
五、SpringBoot Mybatis增加驼峰命名规则:
因为是注解版,没有配置文件,所以SpringBoot增加驼峰命名需要增加一个自定义配置类(ConfigurationCustomizer):
import org.mybatis.spring.boot.autoconfigure.ConfigurationCustomizer; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; /** * mybatis 注解版 * */ @Configuration public class MybatisConfig { @Bean public ConfigurationCustomizer configurationCustomizer() { return new ConfigurationCustomizer() { @Override public void customize(org.apache.ibatis.session.Configuration configuration) { configuration.setMapUnderscoreToCamelCase(true);//设置驼峰命名规则 } }; } }
(如果你觉得文章对你有帮助,欢迎捐赠,^_^,谢谢!)
================================
©Copyright 蕃薯耀 2018年4月8日
http://fanshuyao.iteye.com/
相关推荐
最后,确保在SpringBoot启动类上添加`@MapperScan`注解,扫描Mapper接口: ```java @SpringBootApplication @MapperScan("com.example.demo.mapper") public class DemoApplication { public static void main...
【Spring Boot + Mybatis 整合详解】 Spring Boot 和 Mybatis 的整合是现代 Java 开发中的常见实践,它简化了传统的 Spring 框架配置,提供了快速开发 Web 应用程序的能力,而 Mybatis 作为轻量级的持久层框架,...
将SpringBoot与Redis和MyBatis整合,可以构建出高效、可维护的后端服务。下面我们将详细探讨这些知识点。 **SpringBoot整合Redis** 1. **配置Redis**: 在SpringBoot项目中,可以通过`application.properties`或`...
在本项目中,我们主要探讨的是如何将SpringBoot与Mybatis进行深度整合,并实现完整的注册、登录功能,以及设置拦截器来控制权限访问。SpringBoot以其简洁的配置和快速的开发能力,配合Mybatis的灵活数据库操作,可以...
- 使用 MyBatis 的注解方式时,需要在 Mapper 接口上添加 `@Mapper` 注解。 6. **注解与 @MapperScan 比较**: - `@Mapper` 放在接口上,意味着每一个接口都必须有这个注解。 - `@MapperScan` 提供了包扫描的...
在实际的项目中,"SpringbootMybatis"可能包含以下部分: 1. **pom.xml**:Maven的配置文件,包含了项目依赖,如SpringBoot Starter Web、MyBatis、Oracle JDBC驱动、Thymeleaf等。 2. **application.properties/...
3. **SpringBoot整合MyBatis** - **添加依赖**:在`pom.xml`文件中,需要引入SpringBoot的starter-web和mybatis-spring-boot-starter依赖,确保项目可以正常运行MyBatis。 - **配置MyBatis**:在`application.yml`...
在本文中,我们将深入探讨如何将Spring Boot与Mybatis整合,以便在Java应用程序中实现高效的数据访问和操作。首先,我们需要准备以下工具:Eclipse IDE、Spring Boot 2.x、MySQL数据库以及Maven构建系统。 步骤一:...
在本文中,我们将深入探讨如何将SpringBoot与MyBatis Plus进行整合,以便构建一个高效、简洁的Web应用程序。SpringBoot以其快速启动和简化配置的特点,成为开发微服务的首选框架,而MyBatis Plus则作为MyBatis的增强...
4. **配置MyBatis**:创建`Mybatis`配置类,通过`@Bean`注解为每个数据源创建SqlSessionFactory。 ```java @Configuration public class MybatisConfig { @Autowired private DataSource primaryDataSource; @...
在本文中,我们将深入探讨如何将MyBatis与SpringBoot框架进行整合,同时介绍两种不同的配置方式:注解版和XML配置。这两种方法都允许开发者高效地管理数据库操作,但各自有不同的特性和适用场景。 首先,SpringBoot...
Spring Boot 和 Mybatis 的整合是现代 Java Web 开发中常见的技术栈组合,它们为开发者提供了高效、便捷的开发体验。Spring Boot 是 Spring 框架的简化版,它旨在简化初始设置和日常开发工作,而 Mybatis 是一个轻量...
在“SpringBoot+tk.Mybatis整合+yml配置+logback配置”这个主题中,我们将探讨以下几个关键知识点: 1. **SpringBoot整合tk.Mybatis**: tk.Mybatis 是 Mybatis 的一个扩展,提供了很多实用功能,如:动态 SQL、...
本教程将详细介绍如何在Spring Boot项目中整合MyBatis,并使用@Select注解来实现数据库查询。 首先,我们需要在Spring Boot项目中引入MyBatis的依赖。在`pom.xml`文件中添加如下依赖: ```xml <groupId>org....
在本文中,我们将深入探讨如何将MyBatis与SpringBoot进行整合,以便在Java应用程序中构建高效、可维护的数据访问层。SpringBoot以其简洁的配置和开箱即用的特性深受开发者喜爱,而MyBatis作为一款轻量级的持久层框架...
整合SpringBoot、MyBatis和Druid来操作ClickHouse,主要涉及以下步骤: 1. 添加依赖:在SpringBoot项目的pom.xml文件中,添加ClickHouse的JDBC驱动、MyBatis、Druid和SpringBoot的相应依赖。 2. 配置Druid:在...
整合SpringBoot与MyBatis** 在SpringBoot项目中集成MyBatis,首先需要添加MyBatis和其Spring Boot Starter的依赖。然后,配置MyBatis的主配置文件,包括数据源、SqlSessionFactory和Mapper扫描路径。接着,创建...
在本项目中,我们主要探讨的是如何在SpringBoot 2.6.4版本下整合MyBatis框架,使用PostgreSQL数据库,并结合JUnit5进行单元测试。这是一个完整的Java Web开发示例,涵盖了从依赖管理到实际操作数据库以及进行测试的...
在 JavaFX 应用中整合 SpringBoot 和 MyBatis 可以让开发者利用 Spring 的自动化配置和依赖注入,以及 MyBatis 的灵活数据库操作,构建出高效且易于维护的桌面应用。 整合 JavaFX、SpringBoot 和 MyBatis 的主要...