중간 Java 응용 프로그램을 개발 중이며 경험 부족으로 인해 작은 문제에 직면하고 있습니다.Java DAO 캐싱
데이터베이스에서 "아티클"개체를 가져 오는 사용자 지정 DAO가 있습니다. 나는 Article
클래스를 가지고 있고 DAO는 getArticle(int id)
이라는 메서드를 가지고 있습니다.이 메서드는 Article
을 반환합니다. Article
에는 Category
개체가 있고 지연로드가 사용됩니다.
따라서 기사 카테고리 (Article a = new Article(); a.getCategory();
)를 요청하면 Article
클래스는 DAO에서 Category
을 가져온 다음이를 반환합니다.
이제 캐시 할 생각입니다. 기사의 카테고리에 여러 번 요청하면 데이터베이스는 한 번만 쿼리됩니다.
내 질문 : 캐시를 어디에 두어야합니까? 나는 DTO의 Article
클래스에 넣을 수 있거나 DAO 클래스에 넣을 수 있습니다.
뭐라고 말합니까?
고마워요. 이건 정말 건축가 답입니다. 나는 Hibernate를 알고, 나는 실제로 JPA를 사용하지만, 나는 Hibernate를 사용했다. 나는 혼자서하려고 애쓰는 중이 야. 취미 같이. 엔티티 및 2 수준 캐시를 사용하고 일부 관찰자와 시간 초과가 있다고 생각합니다. 형제 다시 고마워! – santiagobasulto