通过redis操作数据库(CUD)的时候可以返回对象实例吗?

业务考虑,本示例用的都是 @CacheEvict 清除缓存。如果你的 CUD 能够返回 City 实例,也可以使用 @CachePut 更新缓存策略。笔者推荐能用 @CachePut 的地方就不要用 @CacheEvict,因为后者将所有相关方法的缓存都清理掉,比如上面三个方法中的任意一个被调用了的话,provinceCities 方法的所有缓存将被清除。

出自:
http://blog.csdn.net/defonds/article/details/48716161

 // C  
@CacheEvict(value = { "provinceCities"}, allEntries = true)  
public void insertCity(String city_code, String city_jb,   
        String province_code, String city_name,  
        String city, String province) {  
    City cityBean = new City();  
    cityBean.setCityCode(city_code);  
    cityBean.setCityJb(city_jb);  
    cityBean.setProvinceCode(province_code);  
    cityBean.setCityName(city_name);  
    cityBean.setCity(city);  
    cityBean.setProvince(province);  
    this.cityMapper.insertCity(cityBean);  
}  
// U  
@CacheEvict(value = { "provinceCities", "searchCity" }, allEntries = true)  
public int renameCity(String city_code, String city_name) {  
    City city = new City();  
    city.setCityCode(city_code);  
    city.setCityName(city_name);  
    this.cityMapper.renameCity(city);  
    return 1;  
}  

// D  
@CacheEvict(value = { "provinceCities", "searchCity" }, allEntries = true)  
public int deleteCity(String city_code) {  
    this.cityMapper.deleteCity(city_code);  
    return 1;  
} 

原作者的demo里返回的是1,redis里是不是可以返回实例

redis中可以存放hash对象数据来序列化