SpringBoot整合Mybatis与druid实现流程详解
1. 项目搭建
首先,我们需要在项目中引入以下依赖:
<!-- SpringBoot Web Starter -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!-- SpringBoot Mybatis Starter -->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.2.0</version> <!-- 注意版本号 -->
</dependency>
<!-- druid Starter -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
<version>1.2.6</version> <!-- 注意版本号 -->
</dependency>
<!-- MySQL Connector -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
2. 配置数据源
在application.properties
文件中,配置数据源信息:
# MySQL 数据库配置
spring.datasource.url=jdbc:mysql://localhost:3306/test
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.username=root
spring.datasource.password=root
# Druid 配置
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
spring.datasource.filters=stat,wall,log4j
spring.datasource.initialSize=5
spring.datasource.minIdle=5
spring.datasource.maxActive=20
spring.datasource.maxWait=60000
spring.datasource.testOnBorrow=true
spring.datasource.testWhileIdle=true
spring.datasource.validationQuery=SELECT 1 FROM dual
# Mybatis 配置
mybatis.mapper-locations=classpath:mapper/*.xml
3. 创建Java类
3.1 创建数据源配置类
@Configuration
public class DruidDataSourceConfig {
@ConfigurationProperties(prefix = "spring.datasource.druid")
@Bean(initMethod = "init")
public DruidDataSource druidDataSource() {
return new DruidDataSource();
}
}
3.2 创建Mybatis配置类
@Configuration
@MapperScan("com.example.mapper")
public class MybatisConfig {
/**
* Mybatis分页插件
*/
@Bean
public PageInterceptor pageInterceptor() {
PageInterceptor pageInterceptor = new PageInterceptor();
Properties props = new Properties();
props.setProperty("helperDialect", "mysql");
props.setProperty("reasonable", "true");
pageInterceptor.setProperties(props);
return pageInterceptor;
}
}
3.3 创建Mapper映射类
@Mapper
public interface UserMapper {
@Select("SELECT * FROM user")
List<User> getAllUsers();
}
3.4 创建Service类
@Service
public class UserService {
@Autowired
private UserMapper userMapper;
public List<User> getAllUsers() {
return userMapper.getAllUsers();
}
}
3.5 创建Controller类
@RestController
@RequestMapping("/users")
public class UserController {
@Autowired
private UserService userService;
@GetMapping
public List<User> getAllUsers() {
return userService.getAllUsers();
}
}
4. 示例
4.1 示例1:获取所有用户信息
在浏览器地址栏输入 http://localhost:8080/users
访问接口,即可获取所有用户信息。其中,8080
为端口号,users
为请求路径。
4.2 示例2:根据ID获取用户信息
在UserMapper
接口中添加以下方法:
@Select("SELECT * FROM user WHERE id=#{id}")
User getUserById(@Param("id") Long id);
在UserController
中添加以下接口方法:
@GetMapping("/{id}")
public User getUserById(@PathVariable Long id) {
return userService.getUserById(id);
}
在浏览器地址栏输入 http://localhost:8080/users/1
访问接口,即可获取ID
为1
的用户信息。
5. 总结
至此,我们已经完成了SpringBoot整合Mybatis与druid的过程,整个流程并不复杂。只需依照以上步骤进行配置,并在Java类中编写相应代码,即可快速搭建一个配置完整的Web应用程序。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:SpringBoot整合Mybatis与druid实现流程详解 - Python技术站