public void init() {
userCache = this;
userCache.redisService = this.redisService;
userCache.userDao = this.userDao;
}
/**
-
@param userDtos
-
@return
-
@将数据库查询出来的数据 进行格式化 并存入 map和redis
*/
public static void init(List userDtos) {
userCache.redisService.del(Constant.REDIS_USER);
for (UserDto userDto : userDtos) {
userCache.redisService.hSet(Constant.REDIS_USER, String.valueOf(userDto.getId()), userDto);
}
}
/**
-
@param id
-
@param value
-
@修改缓存中的数据
*/
public static void modify(Integer id, U 《一线大厂Java面试题解析+后端开发学习笔记+最新架构讲解视频+实战项目源码讲义》无偿开源 威信搜索公众号【编程进阶路】 serDto value) {
if (value == null && id == null) {
new Throwable(“id and value is not null!”);
}
//修改
userCache.redisService.hSet(Constant.REDIS_USER, String.valueOf(id), value);
}
/**
-
@param id
-
@删除缓存中的数据
*/
public static void delete(Integer id) {
if (id == null) {
new Throwable(“id is not null!”);
}
userCache.redisService.hDel(Constant.REDIS_USER, String.valueOf(id));
}
/**
-
@param users
-
@删除缓存中的数据
*/
public static void deleteList(List users) {
if (users == null) {
new Throwable(“id is not null!”);
}
for (Integer id : users) {
userCache.redisService.hDel(Constant.REDIS_USER, String.valueOf(id));
}
}
/**
-
@param id
-
@return
-
@从缓存中获取appid对应的value
*/
public static UserDto userDto(Integer id) {
if (id != null) {
new Throwable(“id is not null!”);
}
if (userCache.redisService.hGet(Constant.REDIS_USER, String.valueOf(id)) != null) {
return JSONObject.parseObject(JSONObject.toJSONString(userCache.redisService.hGet(Constant.REDIS_USER, String.valueOf(id))), UserDto.class);
}
UserDto userDto = new UserDto();
userDto.setId(id);
userDto = userCache.userDao.findOne(userDto, null);
modify(id, userDto);
return userDto;
}
}
[](()1.2.创建DemoRunner
@Order(3)
@Component
public class DemoRunner implements ApplicationRunner {
@Autowired
private UserDao userDao;
@Override
public void run(ApplicationArguments applicationArguments) throws Exception {
UserCache.init(userDao.findAll(new User(), null));
}
}