1.导入需要的pom依赖
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>2.9.0</version>
</dependency>
2.开启虚拟机
3.java代码操作redis
package com.zking.likang;
import redis.clients.jedis.Jedis;
import redis.clients.jedis.ScanResult;
import redis.clients.jedis.Tuple;
import sun.awt.SunHints;
import javax.swing.*;
import java.util.List;
import java.util.Map;
/**
* @author 木子康
*
* java代码操作redis
* string,hash,list
*
* 1,加载驱动
* 2,建立连接(url/uanme/pwd)
* 3,preparestatement
* 4,执行sql
* 5处理结果
* 6,关闭资源
*
*
* redis连接步骤
* 1,建立连接,连接后授权
* 2,使用redis
*/
public class Demo1 {
public static void main(String[] args) {
Jedis jedis=new Jedis("192.168.58.131",6379);
jedis.auth("123456");
System.out.println(jedis.ping());
/*
string
*/
// jedis.set("name","mz");
// jedis.set("age","19");
// System.out.println(jedis.get("name"));
/*
hash
*/
// jedis.hset("user1","uname","mz");
// jedis.hset("user1","pwd","123456");
// jedis.hset("user1","sex","nan");
// System.out.println(jedis.hget("user1", "uname"));
// Map<String,String> user1=jedis.hgetAll("user1");
// for (Map.Entry<String, String> entry : user1.entrySet()) {
// System.out.println("key:" + entry.getKey() + ",value:" + entry.getValue());
// }
/*
list
*/
// jedis.lpush("hobby","a","b","c","d","e","f","g");
// System.out.println(jedis.lpop("hobby"));
// System.out.println(jedis.rpop("hobby"));
}
}
redis在实际项目中的运用模拟
redis在增删改中的使用:
Demoservlet:
package com.zking.likang;
/**
* @author 木子康
*
* redis 在项目中使用
* 查询
* 增删改
*/
public class DemoServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
doPost(req,resp);
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
// 首页第一次是读取数据库,后面读取缓存(在没有增删改的情况)
//首页第一次是读取数据库,后面读取缓存
Jedis jedis=new Jedis("192.168.58.132",6379);
jedis.auth("123456");
String booklist = jedis.get("booklist");
if(booklist==null || "".equals(booklist)){
//模拟实际项目开发需求,在项目中运用redis
//查询数据库
String mysqlData="data";
//将mysqldata数据源转成json数组串
jedis.set("booklist",mysqlData);
booklist = jedis.get("booklist");
//第一次登录,访问数据库
req.setAttribute("mag","从数据库拿数据");
req.setAttribute("booklist",booklist);
req.getRequestDispatcher("/booklist.jsp").forward(req,resp);
}else{
//从缓存获取当前信息
req.setAttribute("mag","从redis里面拿了数据");
req.setAttribute("booklist",booklist);
req.getRequestDispatcher("/booklist.jsp").forward(req,resp);
}
}
}
booklist
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ page isELIgnored="false" %>
<html>
<head>
<title>Title</title>
</head>
<body>
${mag}:${booklist}
</body>
</html>