Redis做缓存MySQL登录实现
来源:互联网 发布:国外的知乎quora 编辑:程序博客网 时间:2024/05/17 02:25
package com.mind.core.db;import com.mind.core.db.impl.CacheService;import com.mind.core.db.impl.DBService;import redis.clients.jedis.Jedis;import java.io.IOException;import java.sql.Connection;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;/** * Created by Lovell on 16/6/22. */public class DaoTest { public static void main(String[] args) throws IOException, SQLException { Dao dao = new Dao(); dao.start(); String id="2"; String sql="select * from login where id='"+id+"'"; String name = null; Jedis jedis = CacheService.getInstance().getJedisPool().getResource(); if(jedis.hexists("id"+id, "name")){ name = jedis.hget("id"+id, "name"); System.out.println("Welcome Redis! User "+ name +" login success"); }else{ Connection conn = DBService.getInstance().getConnection(); Statement statement = conn.createStatement(); ResultSet rs = statement.executeQuery(sql); if(rs.next()==false){ System.out.println("MySQL no register, Please register first"); }else{ name = rs.getString("name"); System.out.println("Welcome MySQL ! User "+name+" login success"); jedis.hset("id"+id, "name", name); // 十秒钟就过期 jedis.expire("id"+id, 10); } } }}
1. 用户登录首先判断是否在redis缓存中,如果在rRedis缓存中,直接登录成功;
2. 若用户未在Redis缓存,则访问MySQL,判断用户是否存在,如果不存在,则提示用户注册;如果存在,则登录成功;
3. 在MySQL存在并登录成功的同时,将改条数据用Redis Hash类型进行缓存,并设置过期时间为10秒;
4. 设置Redis最大内存,若超出内存范围,则使用FIFO方式进行清除。
在redis.conf文件中找到并设置即可:maxmemory 10240000
0 0
- Redis做缓存MySQL登录实现
- Redis缓存Mysql模拟用户登录Java实现实例
- Redis缓存Mysql模拟用户登录Java实现实例
- 如何使用redis做mysql的缓存
- Redis 整合spring ,做mysql的缓存
- 使用redis做MySQL的缓存
- 如何使用redis做mysql的缓存
- 使用Redis做MySQL的缓存
- 使用redis做mysql的缓存
- Redis缓存Mysql技术实现
- gearman实现redis缓存mysql
- redis做缓存优势
- 如何用redis/memcache做Mysql缓存层?
- 如何用redis/memcache做Mysql缓存层?
- .NET基于Redis缓存实现单点登录SSO的解决方案
- .NET基于Redis缓存实现单点登录SSO的解决方案
- .NET基于Redis缓存实现单点登录SSO的解决方案
- web项目缓存配置及单点登录借助redis实现
- MXNET是这样压榨深度学习的内存消耗的
- android自带数据库SQLiteDatabase基础使用
- tar命令的详细解释
- react-redux-starter-kit 使用npm run deploy:prod 在ios8、safari、部分Android机上不显示的问题
- linux下mysql的root密码忘记
- Redis做缓存MySQL登录实现
- 【iOS开发】strong和weak区别
- 身份证号码合法性验证
- RecycleViewScrollHelper--RecyclerView滑动事件检测的辅助类
- java 位运算
- 将多行输出转化为一行输出
- 论文理解(二)
- APPSCAN之批量漏扫
- Linux菜鸟学make install