8.5 Spring 3.1 新增的缓存机制

      Spring 3.1 新增了一种全新的缓存机制,这种缓存机制与Spring容器无缝地整合在一起,可以对容器中的任意Bean或Bean的方法增加缓存。Spring的缓存机制非常灵活,它可以对容器中的任意Bean或的Bean的任意方法进行缓存,因此这种缓存机制可以在Java EE应用的任何层次上进行缓存。

      提示 :

        与Hibernate SessionFactory级别的二级缓存相比,Spring 缓存的级别更高,SPring缓存可以在控制组件或业务逻辑组件级别进行缓存,这样应用完全无须重复调用底层的DAO组件的方法。

      Spring 缓存同样不是一种具体的缓存实现方案,它底层同样需要依赖EhCache、Guava等具体的缓存工具。但这也正是Spring缓存机制的优势,应用程序只要面向Spring缓存API编程,应用底层的缓存实现可以在不同的缓存实现之间自由切换,应用程序无须任何改变,只要对配置文件略作修改即可。

      8.5.1 启用Spring缓存

        1.Spring内置缓存实现的配置

        2.EhCache缓存实现的配置

      8.5.2 使用@Cacheable执行缓存

        1.类级别的缓存

        2.方法级别的缓存

      8.5.3 使用@CacheEvict清除缓存

扩展:

1.Spring缓存介绍

2.Spring Cache集成spring默认缓存实现

3.ConcurrentHashMap总结

4.HashMap与ConcurrentHashMap的区别

5.EhCache介绍

啦啦啦

8 -- 深入使用Spring -- 5... Spring 3.1 新增的缓存机制的更多相关文章

  1. 深入分析Spring 与 Spring MVC容器

    1 Spring MVC WEB配置 Spring Framework本身没有Web功能,Spring MVC使用WebApplicationContext类扩展ApplicationContext, ...

  2. spring/spring boot/spring cloud开发总结

    背景        针对RPC远程调用,都在使用dubbo.dubbox等,我们也是如此.由于社区暂停维护.应对未来发展,我们准备尝试新技术(或许这时候也不算什么新技术了吧),选择使用了spring ...

  3. Spring缓存机制的理解

    在spring缓存机制中,包括了两个方面的缓存操作:1.缓存某个方法返回的结果:2.在某个方法执行前或后清空缓存. 下面写两个类来模拟Spring的缓存机制: package com.sin90lzc ...

  4. Spring 系列: Spring 框架简介 -7个部分

    Spring 系列: Spring 框架简介 Spring AOP 和 IOC 容器入门 在这由三部分组成的介绍 Spring 框架的系列文章的第一期中,将开始学习如何用 Spring 技术构建轻量级 ...

  5. Maven+Spring MVC Spring Mybatis配置

    环境: Eclipse Neon JDK1.8.0 Tomcat8.0 先决条件: Eclipse先用maven向导创建web工程.参见本站之前随笔. 本机安装完成mysql5:新建用户xuxy03设 ...

  6. [原创]java WEB学习笔记109:Spring学习---spring中事物管理

    博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱好 ...

  7. 手动创建Spring项目 Spring framework

    之前学习框架一直是看的视频教程,并且在都配套有项目源码,跟着视频敲代码总是很简单,现在想深入了解,自己从官网下载文件手动搭建,就遇到了很多问题记载如下. 首先熟悉一下spring的官方网站:http: ...

  8. [Spring框架]Spring AOP基础入门总结二:Spring基于AspectJ的AOP的开发.

    前言: 在上一篇中: [Spring框架]Spring AOP基础入门总结一. 中 我们已经知道了一个Spring AOP程序是如何开发的, 在这里呢我们将基于AspectJ来进行AOP 的总结和学习 ...

  9. Spring MVC+Spring +Hibernate配置事务,但是事务不起作用

    最近做项目,被一个问题烦恼了很久.使用Spring MVC+Spring +Hibernate开发项目,在使用注解配置事务管理,刚开始发现无论如何数据库都无法更新,但是可以从数据库查询到数据.怀疑是配 ...

随机推荐

  1. .Net机试题——编写一个BS架构的多层表结构的信息管理模块

      要求: 编写一个BS架构的多层表结构的信息管理模块,用户体验需要注意.包含错误处理,需要最终能完整的跑起来.页面可以不美化,但是整洁还是必须的.在不能完成详细功能需求的情况下优先保证基本功能. 1 ...

  2. 图文并茂 —— 基于Oozie调度Sqoop

    利用大数据来做BI分析的时候,必不可少需要设置一些调度任务. 本篇就讲述一下如何利用hue来编辑shell操作,这里面的很多操作在其他的调度操作里面也是可以借鉴的. 如果是linux里面可以直接执行的 ...

  3. .NET “底层”异步编程模式——异步编程模型(Asynchronous Programming Model,APM)

    本文内容 异步编程类型 异步编程模型(APM) 参考资料 首先澄清,异步编程模式(Asynchronous Programming Patterns)与异步编程模型(Asynchronous Prog ...

  4. dos 批量重命名 bat

    @echo off setlocal enabledelayedexpansion echo %var% set /a i = i + var for %%x in (*) do ( if not & ...

  5. Windows安装Flask Traceback (most recent call last):

    Exception: File "c:\users\appdata\local\programs\python\python36-32\lib\site-packages\pip\compa ...

  6. 11G新特性 -- 分区表和增量统计信息

    对于分区表,优化器会在全局级别为整个表维护一份统计信息,也会在分区级别为分区表维护一份统计信息. 对于大多数分区,dml一般都是在最近的分区上执行.在11g中,数据库支持只对那些发生一定数据变化的分区 ...

  7. 蓝牙发现服务UUID(service UUID)

    出至<蓝牙标准Core_V4.0>2.5.1 uuid(1576页) 其中 Bluetooth_Base_UUID定义为 00000000-0000-1000-8000-00805F9B3 ...

  8. [k8s]kube-dns/dashboard排错历险记(含sa加载用法/集群搭建)

    kube-dns原理 参考: 组件架构看这个就够了 http://cizixs.com/2017/04/11/kubernetes-intro-kube-dns 设置细节看这个就够了 http://b ...

  9. mysql服务启动、停止、重启

    如何启动/停止/重启MySQL 一.启动方式 1.使用 service 启动:service mysqld start 2.使用 mysqld 脚本启动:/etc/inint.d/mysqld sta ...

  10. Python中的format()函数

    普通格式化方法 (%s%d)生成格式化的字符串,其中s是一个格式化字符串,d是一个十进制数; 格式化字符串包含两部分:普通的字符和转换说明符(见下表), 将使用元组或映射中元素的字符串来替换转换说明符 ...