springboot整合mybatis,redis,代码(五)

redis注解开发过程中包含许多注解

  [email protected] 可以标记在方法上,也可以标记在类上。当标记在方法上时表示该方法是支持缓存的,当标记在类上时则表示该类所有的方法都是支持缓存的。应用到读取数据的方法上,将先从缓存中读取该方法的返回值,如果没
   有再从DB获取数据,然后把数据添加到缓存中
   缓存是以键值对进行的,值就是方法的返回结果,至于键的话,Spring又支持两种策略,默认策略和自定义策略,需要注意的是当一个支持缓存的方法在对象内部被调用时是不会触发缓存功能的。
  [email protected] 应用到删除数据的方法上,调用方法时会从缓存中删除对应key的数据
  [email protected] 应用到写数据的方法上,如新增/修改方法,调用方法时会自动把相应的数据放入缓存,
具体步骤如下:Spring在每次执行前都会检查Cache中是否存在相同key的缓存元素,如果存在就不再执行该方法,而是直接从缓存中获取结果进行返回,否则才会执行并将返回结果存入指定的缓存中。
与@Cacheable的区别:执行前不会去检查缓存中是否存在之前执行过的结果,而是每次都会执行该方法,并将执行结果以键值对的形式存入指定的缓存中
  4. @CacheConfig 属于类级别的注解,当方法上的注解未注明value时,以@CacheConfig的value属性为准,当方法上注明value时,以方法上的注解value属性为准
  5. @Caching 可能组合多个Cache注解使用;比如用户新增成功后,我们要添加id–>user;username—>user;email—>user的缓存;此时就需要@Caching组合多个注解标签了
  ex:可以使用如下方式使用:

@Caching(put = {
@CachePut(value = "person", key = "#person.id"),
@CachePut(value = "person", key = "#person.age"),
@CachePut(value = "person", key = "#person.address")
})

或者如代码开发里面一样

原文地址:https://www.cnblogs.com/xiufengchen/p/10327546.html

时间: 2024-11-05 14:45:10

springboot整合mybatis,redis,代码(五)的相关文章

springboot整合mybatis,redis,代码(二)

一 说明: springboot整合mybatis,redis,代码(一) 这个开发代码的复制粘贴,可以让一些初学者直接拿过去使用,且没有什么bug 二 对上篇的说明 可以查看上图中文件: 整个工程包括配置,对对应上文的配置 原文地址:https://www.cnblogs.com/xiufengchen/p/10327501.html

springboot整合mybatis,redis,代码(一)

一 搭建项目,代码工程结构 使用idea或者sts构建springboot项目 二  数据库sql语句 SQLyog Ultimate v12.08 (64 bit) MySQL - 5.7.14-log ********************************************************************* */ /*!40101 SET NAMES utf8 */; create table `person` ( `id` int (11), `name`

springboot整合mybatis,redis,代码(四)

一 说明 这是spring整合redis注解开发的系类: 二 正文 在注解开发时候,会有这几个注解需要注意: 具体含义: [email protected] 可以标记在方法上,也可以标记在类上.当标记在方法上时表示该方法是支持缓存的,当标记在类上时则表示该类所有的方法都是支持缓存的.应用到读取数据的方法上,将先从缓存中读取该方法的返回值,如果没有再从DB获取数据,然后把数据添加到缓存中 2 @CacheEvcit  应用到删除数据的方法上,调用方法时会从缓存中删除对应key的数据 3 @Cach

springboot整合mybatis,redis,代码(三)

一 说明 接着上篇讲述redis缓存配置的用法: 二 正文 首先要使用缓存就必须要开开启缓存,第二步是需要开redis-server 下载redis包之后,点击图中两个都可以开启redis 怎么看是否启动呢,见下图: 在application中加入连接地址,和相关策略: 原文地址:https://www.cnblogs.com/xiufengchen/p/10327515.html

SpringBoot整合mybatis、shiro、redis实现基于数据库的细粒度动态权限管理系统

1.前言本文主要介绍使用SpringBoot与shiro实现基于数据库的细粒度动态权限管理系统实例. 使用技术:SpringBoot.mybatis.shiro.thymeleaf.pagehelper.Mapper插件.druid.dataTables.ztree.jQuery 开发工具:intellij idea 数据库:mysql.redis 2.表结构还是是用标准的5张表来展现权限.如下图:image 分别为用户表,角色表,资源表,用户角色表,角色资源表.在这个demo中使用了mybat

springboot整合mybatis(SSM开发环境搭建)

0.项目结构: 1.application.properties中配置整合mybatis的配置文件.mybatis扫描别名的基本包与数据源 server.port=80 logging.level.org.springframework=DEBUG #springboot mybatis #jiazai mybatis peizhiwenjian mybatis.mapper-locations = classpath:mapper/*Mapper.xml mybatis.config-loca

SpringBoot整合Mybatis多数据源 (AOP+注解)

SpringBoot整合Mybatis多数据源 (AOP+注解) 1.pom.xml文件(开发用的JDK 10) <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:s

SpringBoot 整合MyBatis案例详解

SpringBoot约定大于配置的特点,让框架的配置非常简洁,与传统的SSM框架相比,简化了大量的XML配置,使得程序员可以从繁琐的配置中脱离出来,将精力集中在业务代码层面,提高了开发效率,并且后期的维护成本也大大降低. 从源码中可以看到,每一个springboot集成的jar包也是一个maven的子module,springboot已经将相关依赖的jar包自动添加到工程中,不需要开发人员手动去添加了,这也是springboot能够简化配置的一个重要原因. 下面开始说明springboot是如何

SpringBoot整合Mybatis之Annotation

首先需要下载前面一篇文章的代码,在前一章代码上进行修改. SpringBoot整合Mybatis(注解方式) 复制前一个项目,修改配置文件,mybatis的相关配置为: mybatis: type-aliases-package: con.mybatis.springboot_mybatis.model configuration: map-underscore-to-camel-case: true log-impl: org.apache.ibatis.logging.stdout.StdO