@Service
public class RedisServiceImpl implements RedisService {
@Override
@Cacheable(value = "user", key = "#id") //id=123456,會在redis裏存一個key爲user::123456的對象,如沒有則創建,如有則讀取並且不會走業務代碼,直接返回對象
public User getUser(String id) {
System.out.println("模擬了數據庫查找"+id);
User user = new User();
user.setId(id);
user.setName("張三");
user.setAge(20);
user.setSex("男");
return user;
}
@Override
@CachePut(value = "user", key = "#user.id") //id=123456,更新key爲user::123456的對象
public User setUser(User user) {
System.out.println("模擬了數據庫存入");
return user;
}
@Override
@CacheEvict(value = "user", key = "#id") //id=123456,刪除key爲user::123456的對象
public int deleteUser(String id) {
System.out.println("模擬了數據庫刪除");
return 1;
}
}