스프링 캐시 예제

실행 된 시간을 검토, 지연이 없습니다. 또한 “findByDirector가 실행 중입니다…” 이 메서드는 한 번만 실행되므로 후속 호출은 캐시에서 개체를 가져옵니다. ehcache를 구성하려면 개발자는 스프링 응용 프로그램에 캐시 구현을 제공하는 구성 파일 즉 ehcache.xml을 구현해야 합니다. 스프링 캐시 / SRC / 메인 / 리소스 폴더, New -> 기타를 마우스 오른쪽 버튼으로 클릭하십시오. 이제 Eclipse IDE를 열고 스프링 프레임 워크에서 캐시를 구현하는 방법을 살펴보겠습니다! 스프링 프레임워크 4.1 이후 스프링의 캐싱 추상화는 JCache 사양을 완전히 지원하며 특별한 구성 없이 JCache 주석을 사용할 수 있습니다. 다음은 스프링 및 JCache 사양의 주석 목록을 비교하는 표입니다. 캐시 관리자 이름 문제: 캐시 관리자에서 캐시 이름을 지정하지 않고 @Cacheable 어구에서 캐시 이름을 사용하려고 하는 경우 예를 들어 다음 항목을 살펴봅니다: 응용 프로그램은 emp_id 값을 처음으로 인수로 전달하여 getEmployeeName() 메서드를 적게 합니다. 그러나 다음 히트의 경우 개발자가 동일한 인수 값을 전달하면 응용 프로그램은 작업 메서드를 실행하지 않고 캐시에서 결과를 가져옵니다. 코드는 다음 상태를 출력으로 표시합니다. 문제는 크기입니다 – 우리는 자주 필요하지 않은 값으로 캐시를 채우고 싶지 않습니다. 캐시는 매우 크고 빠르게 증가할 수 있으며 오래되거나 사용되지 않는 많은 데이터를 보유할 수 있습니다.

따라서 첫 번째 사용자를 업데이트하고 @CachePut 개의 추가가 달린 적절한 메서드가 캐시 자체를 업데이트하고 findAll()에 대한 요청이 최근에 업데이트된 데이터를 반환합니다. 다시 말하지만, 그것은 매우 빠르게 실행됩니다. 고유한 캐싱 클래스를 작성할 수 있습니다. 어쩌면 캐시와 그것에 대 한 동기화 된 getter로 지도 클래스 및 캐시에 대 한 값을 포함 하지 않는 경우 공용 클래스 캐시 { 개인 정적 지도 캐시 처럼 추가 얻을 것 이다; 만약 (!cache.containKey (키)) { // 원하는 대로 가져오기 위해 호출 캐시 cache.put(키, fetched_value) } 동일한 형식의 여러 주석을 함께 그룹화하는 데 사용되는 주석을 @Caching 하나의 주석이 적절한 조건을 지정하기에 충분하지 않은 경우 함께 합니다. 예를 들어 @Caching 내부에 mutiple @CacheEvict ot @CachePut 개의 @CachePut 개의 어노미를 넣어 필요에 따라 조건을 좁힐 수 있습니다. 대부분의 Spring 시작하기 가이드와 마찬가지로 처음부터 시작하여 각 단계를 완료하거나 이미 익숙한 기본 설정 단계를 우회할 수 있습니다.

02 August, 2019
Posted in Uncategorized

Author: wolff