对于软件系统而言,持久化数据到数据库是至关重要的一部分。在 Java 领域,有很多的实现了数据持久化层的工具和框架(ORM)。在 Java 应用程序中,ORM 框架的本质是简化编程中操作数据库的繁琐性,比如可以根据对象生成 SQL 的 Hibernate ,后面 Hibernate 也实现了JPA 的规范,使用 JPA 的方式只需要几行代码即可实现对数据的访问和操作;MyBatis 的前身是 IBATIS 是一个简化和实现了 Java 数据持久化层的开源框架,可以灵活调试 SQL , MyBatis 流行的主要原因在于它的简单性和易使用性。
集成 mybatis-spring-boot-starter
在之前配置 Spring MVC 集成 MyBatis 需要配置文件、实体类、dao层映射关联等繁琐的配置,后面又开发了 generator ,可以根据表自动生产实体类、配置文件和数据层代码,一定程度上简单了一些编码工作,当然也可以使用注解的方式来配置,简化到现在 Spring Boot 中集成 spring-boot-starter 就可以通过注解的方式直接写 SQL 语句,原则就是约定到大于配置,Spring Boot 要做的就是简化一切。
maven 配置
<!--mysql--> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> </dependency> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid-spring-boot-starter</artifactId> <version>1.1.2</version> </dependency> <!—jdbc--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jdbc</artifactId> </dependency> <!--mybatis--> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>1.3.1</version> </dependency> <dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper-spring-boot-starter</artifactId> <version>1.2.1</version> </dependency>
application.properties 配置
#mysql 配置 spring.datasource.type=com.alibaba.druid.pool.DruidDataSource spring.datasource.driver-class-name=com.mysql.jdbc.Driver spring.datasource.url=jdbc:mysql://172.0.0.1:3306/test?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&useSSL=false spring.datasource.username = root spring.datasource.password = 123456 spring.datasource.max-active=30 spring.datasource.max-idle=8 spring.datasource.min-idle=8 spring.datasource.initial-size=10
上述配置 Spring Boot 会自动加载 spring.datasource.* 相关配置, 初始化数据库连接池(这里使用了阿里的 Druid) 。
基于注解的方式
### 未完成
配置多数据源 https://github.com/alibaba/druid/tree/master/druid-spring-boot-starter
时间: 2024-09-27 12:49:28