0

redis キャッシュを使用して、スプリング ブートで @Cacheable をどの位置で使用できますか?どの方法でも使用できますか?

public UserDTO findByUserID(Long userID) {

    User user = findUser(userID);
    if (user != null) {
        Password password = findPassword(userID);
        return userMapper.mapToDTO(user, password);
    }
    return null;

}

private Password findPassword(Long userID) {
    Password password = passwordRepository.findPasswordBasedOnUserID(userID);
    return password;
}

@Cacheable("users")
private User findUser(Long userID) {
    User user = userRepository.findByUserID(userID);
    return user;
}

findByUserID は明らかにエンティティではない DTO を返すため、メソッド findUser でそれを使用しました。それを取り除くために、ドメインを返す 2 つのメソッドを作成しましたが、問題は、それが保存されていないか、redis キャッシュを使用していないことです。問題または解決策は?

4

1 に答える 1