这里使用的是yml类型的配置文件
1 mybatis: 2 mapper-locations: classpath:mapping/*.xml 3 spring: 4 datasource: 5 name: miaosha 6 url: jdbc:mysql://127.0.0.1:3306/miaosha?serverTimezone=UTC 7 username: root 8 password: 1234 9 type: com.alibaba.druid.pool.DruidDataSource #数据源 10 driverClassName: com.mysql.jdbc.Driver 11 redis: 12 host: 10.0.75.1 #地址 13 port: 6379 #端口号 14 timeout: 20000 #连接超时时间 15 cache: #缓存类型 16 type: redis
使用SpringBoot缓存必须配置名字可以使用@CacheConfig(cacheNames = {"itemService"})在类上配置该类公用的名字,也可以使用@Cacheable(value=”item”)在方法上配置只适用于该方法的名字。如果类和方法上都有配置,以方法上的为准。
springBoot会自动拼装缓存名,规则是:配置的名字+两个冒号+方法的实参;
@Cacheable(value=”item”),这个注释的意思是,当调用这个方法的时候,会从一个名叫 item 的缓存中查询,如果没有,则执行实际的方法(即查询数据库),并将执行的结果存入缓存中,否则返回缓存中的对象。 在上面代码示例中@Cacheable注解设置了两个参数一个是value,一个是key。key的值"#p0"在执行过程中会被getItemById方法的实参所替换,例如id的值3 那么缓存的名字就会是"item::3";如果不设置key,系统会自动也会是这个效果。
如果是无参方法:
@CacheConfig is a class-level annotation that allows to share the cache names,如果你在你的方法写别的名字,那么依然以方法的名字为准。
转载于:https://www.cnblogs.com/zsukai/p/10428659.html
相关资源:JAVA上百实例源码以及开源项目