모든 쿼리를 캐시하기 위해 프로젝트의 저장소를 사용하고 있습니다.
BaseRepository가 있습니다.
으아아아그런 다음 이 저장소를 내 서비스에 사용했습니다
우편 서비스:
으아아아드디어 컨트롤러에서 PostService를 사용했습니다
후면 컨트롤러:
으아아아index 메소드는 처음 10개의 최신 레코드를 올바르게 반환합니다. 이제 모든 저장소 쿼리에 대해 고유한 CacheKey를 생성해야 합니다. 예를 들어
TableName concat FunctionName //posts.paginate
이 코드를 저장소의 모든 메소드에서 사용할 수 있습니다
으아아아좋습니다. 그런데 문제는 이 코드가 클래스의 모든 메소드에서 반복된다는 것입니다. 이 코드를 다른 클래스에서 사용하면 메서드 이름이 올바르지 않게 됩니다. 이 코드의 중복을 방지하기 위해 어떤 제안이 있습니까?
함수 이름을 다른 클래스에 전달하여 이 문제를 해결했습니다
CacheKey 클래스를 만들었습니다.
으아악그런 다음 저장소의 모든 메소드에서 다음과 같이 이 도우미 클래스를 사용할 수 있습니다.
으아악다음과 같은 방법으로 매직 메서드를 쉽게 사용할 수 있습니다.
으아아아