Ehcache는 빠르고 마른 기능을 갖춘 순수한 Java 상업용 캐싱 프레임 워크이며 최대 절전 모드의 기본 Cacheprovider입니다.
Ehcache는 주로 메모리 및 디스크 레벨로 나뉘어져있는 다양한 캐싱 전략을 제공하므로 용량 문제에 대해 걱정할 필요가 없습니다.
Spring-Boot는 새로운 스프링 애플리케이션의 초기 구성 및 개발 프로세스를 단순화하도록 설계된 빠른 통합 프레임 워크입니다. 이 프레임 워크는 특정 방법을 사용하여이를 구성하여 개발자가 더 이상 보일러 플레이트 구성을 정의 할 필요가 없습니다.
사용자가 로그인하면 표시 후 거의 모든 페이지가 표시되면 사용자 정보를 표시해야합니다. 사용자가 성공적으로 로그인 한 후 사용자 정보를 캐시 한 다음 캐시 된 데이터를 직접 검색 할 수 있습니다.
앞에 쓰십시오
SpringBoot의 경우 자체 캐시 프레임 워크가 내장되어 있습니다.
<pectionency> <groupId> org.springframework.boot </groupid> <artifactid> 스프링 부트 스타터-캐시 </artifactid> </fectionency>
이 프레임 워크를 캐싱에 사용하는 방법에는 온라인으로 많은 정보가 있습니다. 그러나 대부분은 서비스 계층에서 캐시하는 방법을 설명하고 데이터베이스에서 데이터를 가져올 때 캐시 된 데이터를 직접 가져오고 더 이상 보조 쿼리를 수행하지 않습니다. 그러나 현재 요구 사항은 사용자 로그인 한 사용자를 캐시하는 것이며 코드를 사용하여 다음에 검색합니다. 서비스 방법을 다시 조정하는 대신! 모든 정보가 발견 된 것 같습니다! 어쩌면 아무도 그것을 만나지 않았을 것입니다.
계획을 탐구하십시오
이전 프로젝트에서는 Ehcache가 사용되었으며 물론 해당 Ehcacheutils 방법도 있습니다. SpringBoot 및 Ehcache의 통합에 대해 이야기 해 봅시다.
실제 작동 후 Ehcache를 통합하는 것이 매우 간단하고 세 단계가 있습니다.
Maven 패키지 가져 오기
<pectionency> <groupid> net.sf.ehcache </groupid> <artifactid> ehcache </artifactid> <버전> 2.10.1 </version> </fectionency>
스타트 업 클래스에서 캐시 메커니즘을 활성화하십시오
image.png
ehcache 구성 파일을 추가하고 리소스에서 새 ehcache.xml 파일을 만듭니다. 파일 구성은 다음과 같습니다.
<? xml version = "1.0"encoding = "utf-8"?> <ehcache> <cache name = "객체 카시"maxelementsInmemory = "1000"> </cache> </ehcache>
캐시를 사용하십시오
현재 SpringBoot는 EhcacheManager를 위해 Bean을 생성했습니다. 우리는 필요한 곳에 직접 주입 할 수 있습니다. 아래는 내 간단한 Utils 파일과 참조를 위해 데이터를 저장하고 검색하는 장소입니다. 잘못된 것이 있다면 저를 바로 잡으십시오.
Util은 다음과 같습니다. 설정 및 GET 방법 만 제공됩니다.
공개 클래스 EHCACHEUTILS { / ** * 캐시 객체 세트 * @Param CacheManager * @Param Key * @Param 객체 * / public static void setCache (CacheManager cachemanager, String Key, Object Object) {cache cache = cachemanager.getCache ( "Objebcache"); 요소 요소 = 새 요소 (키, 객체); cache.put (요소); } / ** * 캐시에서 객체 제거 * @param cachemanager * @param key * @return * / public static 객체 getCache (Cachemanager cachemanager, String key) {Object Object = null; 캐시 캐시 = Cachemanager.getCache ( "ObjectCache"); if (cache.get (key)! = null &&! cache.get (key) .equals ( "")) {object = cache.get (key) .getObjectValue (); } 반환 객체; }}캐시 증착 방법은 다음과 같습니다.
@autowiredPrivate CacheManager CacheManager; // 일부 주요 코드 ehcacheutils.setcache (Cachemanager, "op", searchop);
캐시를 제거하는 방법은 다음과 같습니다.
@autowiredPrivate CacheManager CacheManager; Operator SearchOp = (운영자) ehcacheutils.getCache (Cachemanager, "op");
마지막에 작성되었습니다
개인적으로 SpringBoot에서 제공하는 주석 기반 방법은 인터셉터 처리에 더 적합하다고 생각합니다. 캐시 메커니즘이있는 서비스 메소드는 지정된 요청에 대한 서비스 메소드를 설정하는 데 사용됩니다. 서비스는 실제 상황에 따라 캐시를 직접 검색하거나 데이터베이스를 쿼리합니다.
요약
위의 것은 소개 된 ehcache를 통합하는 Springboot의 실제 계획입니다. 나는 그것이 당신에게 도움이되기를 바랍니다. 궁금한 점이 있으면 메시지를 남겨 주시면 편집자가 제 시간에 답장을 드리겠습니다. Wulin.com 웹 사이트를 지원해 주셔서 대단히 감사합니다!