创建一个springboot2.7.0项目使用德鲁伊连接池创建 连接Oracle 使用mybait-plus操作数据库创建redis连接池使用StringRedisTemplate操作redis
时间: 2024-06-10 17:10:02 浏览: 194
以下是创建Spring Boot项目使用德鲁伊连接池连接Oracle并使用MyBatis-Plus操作数据库以及创建Redis连接池并使用StringRedisTemplate操作Redis的步骤:
1. 创建Spring Boot项目
使用IDE(如IntelliJ IDEA)创建一个Spring Boot项目。
2. 添加依赖
在项目的pom.xml文件中添加以下依赖:
```
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
<version>1.2.6</version>
</dependency>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.4.2</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
```
3. 配置德鲁伊连接池
在application.properties文件中添加以下配置:
```
# 数据库连接配置
spring.datasource.url=jdbc:oracle:thin:@localhost:1521:ORCL
spring.datasource.username=username
spring.datasource.password=password
spring.datasource.driver-class-name=oracle.jdbc.OracleDriver
# 德鲁伊连接池配置
spring.datasource.druid.initial-size=5
spring.datasource.druid.min-idle=5
spring.datasource.druid.max-active=20
spring.datasource.druid.test-on-borrow=true
spring.datasource.druid.test-while-idle=true
spring.datasource.druid.time-between-eviction-runs-millis=60000
spring.datasource.druid.min-evictable-idle-time-millis=300000
spring.datasource.druid.pool-prepared-statements=true
spring.datasource.druid.max-pool-prepared-statement-per-connection-size=20
spring.datasource.druid.filters=wall,stat,log4j
```
4. 配置MyBatis-Plus
在MyBatis-Plus的配置类中添加以下配置:
```
@Configuration
public class MybatisPlusConfig {
@Bean
public PaginationInterceptor paginationInterceptor() {
return new PaginationInterceptor();
}
@Bean
public OptimisticLockerInterceptor optimisticLockerInterceptor() {
return new OptimisticLockerInterceptor();
}
@Bean
public MybatisPlusInterceptor mybatisPlusInterceptor() {
MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
interceptor.addInnerInterceptor(paginationInterceptor());
interceptor.addInnerInterceptor(optimisticLockerInterceptor());
return interceptor;
}
}
```
5. 创建实体类和Mapper
创建一个实体类和对应的Mapper接口并继承Mybatis-Plus提供的BaseMapper接口,例如:
```
@Data
public class User {
private Long id;
private String name;
private Integer age;
private String email;
}
public interface UserMapper extends BaseMapper<User> {
}
```
6. 使用StringRedisTemplate操作Redis
在Redis的配置类中添加以下配置:
```
@Configuration
public class RedisConfig {
@Bean
public LettuceConnectionFactory redisConnectionFactory() {
RedisStandaloneConfiguration config = new RedisStandaloneConfiguration();
config.setHostName("localhost");
config.setPort(6379);
return new LettuceConnectionFactory(config);
}
@Bean
public RedisTemplate<String, Object> redisTemplate() {
RedisTemplate<String, Object> template = new RedisTemplate<>();
template.setConnectionFactory(redisConnectionFactory());
template.setKeySerializer(new StringRedisSerializer());
template.setValueSerializer(new JdkSerializationRedisSerializer());
return template;
}
@Bean
public StringRedisTemplate stringRedisTemplate() {
StringRedisTemplate template = new StringRedisTemplate();
template.setConnectionFactory(redisConnectionFactory());
return template;
}
}
```
在需要使用Redis的地方注入StringRedisTemplate并使用它操作Redis,例如:
```
@Service
public class UserService {
@Autowired
private UserMapper userMapper;
@Autowired
private StringRedisTemplate stringRedisTemplate;
public User getUserById(Long id) {
User user = userMapper.selectById(id);
stringRedisTemplate.opsForValue().set("user:" + id, user);
return user;
}
}
```
以上就是创建一个Spring Boot项目使用德鲁伊连接池连接Oracle并使用MyBatis-Plus操作数据库以及创建Redis连接池并使用StringRedisTemplate操作Redis的全部步骤。
阅读全文