Skip to content

Commit be06b12

Browse files
authored
Merge pull request #208 from Runnect/fix/public-course-cache-eviction
fix: 곡개 μ½”μŠ€ μ“°κΈ° μž‘μ—… μ‹œ κ΄€λ ¨ μΊμ‹œ μ¦‰μ‹œ λ¬΄νš¨ν™”
2 parents b145d2e + 9dc200f commit be06b12

2 files changed

Lines changed: 11 additions & 0 deletions

File tree

β€Žsrc/main/java/org/runnect/server/course/service/CourseService.javaβ€Ž

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727
import org.runnect.server.user.exception.userException.NotFoundUserException;
2828
import org.runnect.server.user.repository.UserRepository;
2929
import org.runnect.server.user.service.UserStampService;
30+
import org.springframework.cache.annotation.CacheEvict;
3031
import org.springframework.stereotype.Service;
3132
import org.springframework.transaction.annotation.Transactional;
3233

@@ -136,6 +137,9 @@ public UpdateCourseResponseDto updateCourse(Long userId, Long courseId, String t
136137
return UpdateCourseResponseDto.of(course);
137138
}
138139

140+
// μ‘°κ±΄λΆ€λ‘œ 곡개 μ½”μŠ€κ°€ 같이 μ‚­μ œλ  수 μžˆμ–΄(λΉ„κ³΅κ°œ μ½”μŠ€λ©΄ μŠ€ν‚΅), 맀번 λ¬΄νš¨ν™”ν•΄λ„
141+
// μ•ˆμ „ν•œ μͺ½(κ³Όλ‹€ λ¬΄νš¨ν™”)을 택함 β€” 곡개 μ½”μŠ€ λͺ©λ‘ μΊμ‹œ(μ „μ²΄νŽ˜μ΄μ§€μˆ˜/λ§ˆλΌν†€/μΆ”μ²œ) λŒ€μƒ
142+
@CacheEvict(value = {"publicCourseTotalPageCount", "marathonPublicCourse", "recommendPublicCourse"}, allEntries = true)
139143
@Transactional
140144
public DeleteCoursesResponseDto deleteCourses(List<Long> courseIdList, Long userId) {
141145
courseIdList.forEach(courseId -> {

β€Žsrc/main/java/org/runnect/server/publicCourse/service/PublicCourseService.javaβ€Ž

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@
3838
import org.runnect.server.user.exception.userException.NotFoundUserException;
3939
import org.runnect.server.user.repository.UserRepository;
4040
import org.springframework.beans.factory.annotation.Value;
41+
import org.springframework.cache.annotation.CacheEvict;
4142
import org.springframework.cache.annotation.Cacheable;
4243
import org.springframework.data.domain.Page;
4344
import org.springframework.data.domain.PageRequest;
@@ -300,6 +301,9 @@ public GetPublicCourseDetailResponseDto getPublicCourseDetail(final Long userId,
300301

301302
}
302303

304+
// μ½”μŠ€ λͺ©λ‘μ— 영ν–₯을 μ£ΌλŠ” μ“°κΈ° μž‘μ—…μ΄λΌ, μž‘μ„±μž 본인 μΊμ‹œλ§Œμ΄ μ•„λ‹ˆλΌ
305+
// 전체 μœ μ €κ°€ λ³΄λŠ” λͺ©λ‘ μΊμ‹œ(μ „μ²΄νŽ˜μ΄μ§€μˆ˜/λ§ˆλΌν†€/μΆ”μ²œ)λ₯Ό λ‹€ μ§€μ›Œμ•Ό 함
306+
@CacheEvict(value = {"publicCourseTotalPageCount", "marathonPublicCourse", "recommendPublicCourse"}, allEntries = true)
303307
@Transactional
304308
public CreatePublicCourseResponseDto createPublicCourse(
305309
final Long userId,
@@ -344,6 +348,7 @@ public CreatePublicCourseResponseDto createPublicCourse(
344348

345349
}
346350

351+
@CacheEvict(value = {"publicCourseTotalPageCount", "marathonPublicCourse", "recommendPublicCourse"}, allEntries = true)
347352
@Transactional
348353
public DeletePublicCoursesResponseDto deletePublicCourses(
349354
Long userId,
@@ -389,6 +394,8 @@ public DeletePublicCoursesResponseDto deletePublicCourses(
389394
return DeletePublicCoursesResponseDto.from(publicCourses.size());
390395
}
391396

397+
// 제λͺ©/μ„€λͺ…λ§Œ λ°”λ€Œκ³  μ½”μŠ€ κ°œμˆ˜λŠ” κ·ΈλŒ€λ‘œλΌ μ „μ²΄νŽ˜μ΄μ§€μˆ˜ μΊμ‹œλŠ” μ§€μšΈ ν•„μš” μ—†μŒ
398+
@CacheEvict(value = {"marathonPublicCourse", "recommendPublicCourse"}, allEntries = true)
392399
@Transactional
393400
public UpdatePublicCourseResponseDto updatePublicCourse(Long userId, Long publicCourseId, String title, String description) {
394401
PublicCourse publicCourse = publicCourseRepository.findById(publicCourseId)

0 commit comments

Comments
Β (0)