使用java实现从数据库查出来存redis 查的时候先查redis redis没有再读数据库的代码
时间: 2023-03-20 10:03:43 浏览: 151
REDIS缓存数据库在JAVA中的使用
可以使用以下Java代码实现从数据库查询数据,如果Redis缓存中不存在,则从数据库中读取数据并存储到Redis中:
```
// 导入必要的包
import redis.clients.jedis.Jedis;
import java.sql.*;
// Redis 服务器地址和端口
String redisHost = "localhost";
int redisPort = 6379;
// Redis 缓存键名
String cacheKey = "my_cache_key";
// 连接 Redis
Jedis jedis = new Jedis(redisHost, redisPort);
// 查询 Redis 缓存
String cacheData = jedis.get(cacheKey);
if (cacheData != null) {
// 如果缓存命中,直接返回缓存数据
return cacheData;
} else {
// 如果缓存未命中,从数据库中读取数据
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost/mydatabase", "myuser", "mypassword");
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM mytable");
// 将数据存储到 Redis 缓存中
while (rs.next()) {
jedis.set(cacheKey, rs.getString("data"));
}
// 关闭数据库连接
rs.close();
stmt.close();
conn.close();
// 返回查询结果
return jedis.get(cacheKey);
}
```
请注意,在实际生产环境中,您需要对代码进行修改以满足您的特定需求,并进行必要的错误处理和异常处理。
阅读全文