基于Java代码操作Redis过程详解

网友投稿 223 2022-12-25


基于Java代码操作Redis过程详解

Jedis简介

实际开发中,我们需要用Redis的连接工具连接Redis然后操作Redis,

对于主流语言,Redis都提供了对应的客户端;

提供了很多客户端 官方推荐的是Jedis 托管地址:https://github.com/xetorthio/jedis

要使用redis首先得下载pom依赖

redis.clients

jedis

2.9.0

连接redis

Jedis jedis = new Jedis("192.168.234.131",6379);

jedis.auth("123456");

//jedis.close(); //使用完关闭连

System.out.println(jedis.ping());

使用Jedis连接池之后,在每次用完连接对象后一定要记得把连接归还给连接池。Jedis对close方法进行了改造,如果是连接池中的连接对象,调用Close方法将会是把连接对象返回到对象池,若不是则关闭连接。

操作Redis常用的三种数据类型 ,还有两种不常用的就不介绍了

package com.wp;

import redis.clients.jedis.Jedis;

/**

* @author 小李飞刀

* @site xiaomage.com

* @company zhuojing

* @create 2019-10-13 10:43

*/

public class javaDome {

public static void main(String[] args) {

//链接操作

Jedis jedis = new Jedis("192.168.234.131",6379);

jedis.auth("123456");

System.out.println(jedis.ping());

//操作字符串

jedis.set("aaa","张三");

czgBD System.out.println(jedis.get("aaa"));

//对哈希czgBD进行操作

jedis.hset("user1","uname","李四");

jedis.hset("user1","sex","男");

System.out.println(jedis.hgetAll("user1"));

System.out.println(jedis.hget("user1", "uname"));

//对list进行操作

jedis.lpush("hobby","a","b","c","d","e","f");

System.out.println(jedis.lpop("hobby"));

System.out.println(jedis.lpop("hobby"));

System.out.println(jedis.rpop("hobby"));

}

}

项目中的应用演示例子

查询中使用redis的逻辑

如图所示:

bookservlet.java

代码如下:

package web;

import redis.clients.jedis.Jedis;

import javax.servlet.ServletException;

import javax.servlet.annotation.WebServlet;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import java.io.IOException;

/**

* @author 小李飞刀

* @site xiaomage.com

* @company zhuojing

* @create 2019-10-13 10:43

*/

@WebServlet("/wp")

public class Bookservlet 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.234.131",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("/index.jsp").forward(req,resp);

}

}

}

index.jsp

<%-- Created by IntelliJ IDEA. User: machenike

Date: 2019/10/13 Time: 11:53 To change this

template use File | Settings | File Temhttp://plates.

--%>

<%@ page contentType="text/html;charset=UTF-8"

language="java" %>

<%@ page isELIgnored="false" %>

${mag}:${booklist}


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:springboot 热启动的过程图解
下一篇:Java中的Map集合简单汇总解析
相关文章

 发表评论

暂时没有评论,来抢沙发吧~