1.导入需要的pom依赖

<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>1.7</maven.compiler.source>
<maven.compiler.target>1.7</maven.compiler.target>
<!--servlet -->
<servlet.version>4.0.0</servlet.version>
<!--mysql-->
<mysql.version>5.1.44</mysql.version>
<!--6.jstl+standard -->
<jstl.version>1.2</jstl.version>
<standard.version>1.1.2</standard.version>
<!--7.tomcat-jsp-api -->
<tomcat.jsp.version>8.0.46</tomcat.jsp.version>
<!--jackson-->
<jackson.version>2.9.3</jackson.version>
</properties> <dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency> <dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>2.9.0</version>
</dependency> <!--servlet -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>${servlet.version}</version>
<scope>provided</scope>
</dependency> <!--6.jstl+standard -->
<!-- https://mvnrepository.com/artifact/jstl/jstl -->
<dependency>
<groupId>jstl</groupId>
<artifactId>jstl</artifactId>
<version>${jstl.version}</version>
</dependency> <!-- https://mvnrepository.com/artifact/taglibs/standard -->
<dependency>
<groupId>taglibs</groupId>
<artifactId>standard</artifactId>
<version>${standard.version}</version>
</dependency> <!--7.tomcat-jsp-api -->
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-jsp-api</artifactId>
<version>${tomcat.jsp.version}</version>
</dependency> <dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>${jackson.version}</version>
</dependency> <!-- https://mvnrepository.com/artifact/dom4j/dom4j -->
<dependency>
<groupId>dom4j</groupId>
<artifactId>dom4j</artifactId>
<version>1.6.1</version>
</dependency> <!-- https://mvnrepository.com/artifact/commons-beanutils/commons-beanutils -->
<dependency>
<groupId>commons-beanutils</groupId>
<artifactId>commons-beanutils</artifactId>
<version>1.9.4</version>
</dependency> <!-- https://mvnrepository.com/artifact/commons-logging/commons-logging -->
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<version>1.2</version>
</dependency>

2.开启虚拟机

 

3.java代码操作redis

package com.hmc.demo;

import redis.clients.jedis.Jedis;
import redis.clients.jedis.ScanResult;
import redis.clients.jedis.Tuple; import java.util.List; /**
* @author胡明财
* @site www.xiaomage.com
* @company xxx公司
* @create  2019-10-13 10:57
*/
public class Demo {
public static void main(String[] args) {
Jedis Jedis = new Jedis("192.168.197.128", 6379);
Jedis.auth("123456");
System.out.println(Jedis.ping()); //选择数据库
String select = Jedis.select(0);
// Jedis.del("booklist");
//Strng 字符串
//set
//Jedis.set("name","张三");
//get获取
System.out.println(Jedis.get("booklist"));
//type获取类型
//System.out.println(Jedis.type("name"));
//del删除
//Jedis.del("name");
//expire设置超时时间
//Jedis.expire("name",10); //hash(哈希) // Jedis.hset("student","name","李四");
// Jedis.hset("student","age","13");
// Jedis.hset("student","addres","长沙"); // System.out.println(Jedis.hget("student", "name")); //list列表
// Jedis.lpush("names","张三","李四","王五");
// Long names = Jedis.llen("names");
// for (int i=0;i<names;i++){
//从左到右
// System.out.println(Jedis.lpop("names"));
//从左到右
//System.out.println(Jedis.rpop("names"));
// } //set集合
// Jedis.sadd("username","admin","zs","ls");
// ScanResult<String> username = Jedis.sscan("username", 0);
// List<String> result = username.getResult();
// for (String s : result) {
// System.out.println(s);
// } //zset有序集合
// Jedis.zadd("sex",70,"男");
// Jedis.zadd("sex",80,"女");
// Jedis.zadd("sex",90,"不男不女");
// ScanResult<Tuple> zscan = Jedis.zscan("sex", 0);
// List<Tuple> result = zscan.getResult();
// for (Tuple tuple : result) {
// System.out.println("sex="+tuple.getElement()+",score="+tuple.getScore());
//
// } }
}

已缓存的数据

4.redis缓存数据库(利用查询进行缓存)

  public String list(HttpServletRequest request,HttpServletResponse response) throws Exception {
//建立连接
Jedis jedis = new Jedis("192.168.197.128", 6379);
jedis.auth("123456");
//获取缓存数据
String booklist = jedis.get("booklist");
if(booklist==null || "".equals(booklist)){
List<Book> list = this.bookdao.list(book, null);
System.out.println(list);
jedis.set("booklist",list.toString());
request.setAttribute("booklist", list);
return "list";
} else {
//[{"bid":33,"bname":"圣墟第33章","price":33.0}
System.out.println(booklist);
request.setAttribute("booklist", booklist);
return "list";
} }

这是查询出来的数据

看是否已经缓存成功

因缓存数据过大,无法在右侧显示

接下来用java代码看一下是否有数据

清空缓存策略(执行增删改的时候)del即可

java代码操作Redis的更多相关文章

  1. 使用java代码操作Redis

    1导入pom.xml依赖 <dependency> <groupId>redis.clients</groupId> <artifactId>jedis ...

  2. Java代码操作Redis的sentinel和Redis的集群Cluster操作

    总共四台机器,crxy99,crxy98分别是主节点和从节点.   crxy97和crxy96是两个监控此主从架构的sentinel节点. 看代码: import org.junit.Test; im ...

  3. 【转】Java代码操作Redis的sentinel和Redis的集群Cluster操作

    总共四台机器,crxy99,crxy98分别是主节点和从节点.   crxy97和crxy96是两个监控此主从架构的sentinel节点. 直接看代码: 1 import org.junit.Test ...

  4. 20190928-02使用Redis客户端Jedis连接Redis,以及用Java代码操作Redis 000 030

    启动redis package com.yujie.jedis; import java.util.HashMap; import java.util.Map; import java.util.Se ...

  5. java:redis(java代码操作redis,实体类mapper生成器(generator))

    1.redis_demo Maven  ItemMapper.xml: <?xml version="1.0" encoding="UTF-8" ?> ...

  6. Redis入门教程(三)— Java中操作Redis

    在Redis的官网上,我们可以看到Redis的Java客户端众多 其中,Jedis是Redis官方推荐,也是使用用户最多的Java客户端. 开始前的准备 使用jedis使用到的jedis-2.1.0. ...

  7. Java代码操作HDFS测试类

    1.Java代码操作HDFS需要用到Jar包和Java类 Jar包: hadoop-common-2.6.0.jar和hadoop-hdfs-2.6.0.jar Java类: java.net.URL ...

  8. Java代码操作zookeeper

    .personSunflowerP { background: rgba(51, 153, 0, 0.66); border-bottom: 1px solid rgba(0, 102, 0, 1); ...

  9. 分享知识-快乐自己:java代码 操作 solr

    POM 文件: <!-- solr客户端 --> <dependency> <groupId>org.apache.solr</groupId> < ...

随机推荐

  1. vue中引入百度地图

    xxx.vue <template> <div> <el-input v-model="inputaddr"> </el-input> ...

  2. Codeforces Round #580 (Div. 1) A-E

    Contest Page A Tag:构造 将$a_i$看做一个无穷数列,$i > 2n$时$a_i = a_{i - 2n}$.设$sgn_i = \sum\limits_{j=i+1}^{i ...

  3. 1005 继续(3n+1)猜想(C#)

    一.题目内容: 卡拉兹(Callatz)猜想已经在1001中给出了描述.在这个题目里,情况稍微有些复杂. 当我们验证卡拉兹猜想的时候,为了避免重复计算,可以记录下递推过程中遇到的每一个数.例如对 n= ...

  4. 2. matplotlib绘制散点图

    与绘制直线图的唯一区别:plt.scatter # coding=utf-8 from matplotlib import pyplot as plt from matplotlib import f ...

  5. NMS(non maximum suppression,非极大值抑制)

    """nms输入的数据为box的左上角x1,y1与右下角x2,y2+confidence,rows=batch_size,line=[x1,y1,x2,y2,confid ...

  6. 【开发工具】- Myeclipse10.7破解方法

    1.下载myeclipse 10,如果没有,可以使用链接:https://pan.baidu.com/s/1l9juqD4ALMuepVL6e5kgjA 密码:kpx6:当然时间久了可能链接失效,如有 ...

  7. 【开发笔记】- SSM使用velocity模板语言

    1.在pom.xml里添加velocity模板语言支持的依赖 <!-- velocity模板语言支持包 --> <dependency> <groupId>org. ...

  8. 1.live555源码分析----RSTPServer创建过程分析

    最近五一回家,终于有机会能安静的看一下流媒体这方面相关的知识,准备分析live555的源码,接下来会把我读源码的过程记录成博客,以供其他的同路人参考. 因为再读源码的过程中,并不是一路顺着读下来,往往 ...

  9. 尚学堂JAVA基础学习笔记

    目录 尚学堂JAVA基础学习笔记 写在前面 第1章 JAVA入门 第2章 数据类型和运算符 第3章 控制语句 第4章 Java面向对象基础 1. 面向对象基础 2. 面向对象的内存分析 3. 构造方法 ...

  10. Linux IO 概念(1)

    基础概念 文件描述fd 文件描述符(file description),用于表述指向文件引用的抽象话题概念 文件描述符在形式上是一个非负整数,实际上它是一个索引值,指向内核为每一个进程所维护的该进程打 ...