JPA

常用配置:
application.yml

  1. spring:
  2. jpa:
  3. show-sql: true
  4. properties:
  5. hibernate:
  6. dialect: org.hibernate.dialect.MySQL8Dialect
  7. format_sql: true
  8. hbm2ddl:
  9. auto: create

Redis

  1. @Configuration
  2. public class RedisConfig {
  3. @Bean
  4. public RedisTemplate<String, Object> redisTemplate(RedisConnectionFactory redisConnectionFactory) {
  5. RedisTemplate<String, Object> redisTemplate = new RedisTemplate<>();
  6. redisTemplate.setConnectionFactory(redisConnectionFactory);
  7. redisTemplate.setKeySerializer(new StringRedisSerializer());
  8. redisTemplate.setValueSerializer(genericJackson2JsonRedisSerializer());
  9. redisTemplate.setHashKeySerializer(genericJackson2JsonRedisSerializer());
  10. redisTemplate.setHashValueSerializer(genericJackson2JsonRedisSerializer());
  11. return redisTemplate;
  12. }
  13. @Bean
  14. public GenericJackson2JsonRedisSerializer genericJackson2JsonRedisSerializer() {
  15. return new GenericJackson2JsonRedisSerializer();
  16. }
  17. }

定时任务

@EnableScheduling

@Scheduled 参数可以接受两种定时的设置,一种是我们常用的cron="*/6 * * * * ?",一种是 fixedRate = 6000,两种都表示每隔六秒打印一下内容。

fixedRate 说明

  • @Scheduled(fixedRate = 6000) :上一次开始执行时间点之后6秒再执行
  • @Scheduled(fixedDelay = 6000) :上一次执行完毕时间点之后6秒再执行
  • @Scheduled(initialDelay=1000, fixedRate=6000) :第一次延迟1秒后执行,之后按 fixedRate 的规则每6秒执行一次