Redis的入门案例!

我们先看一下入门案例的小小要求!

​ 假如你是一个java用户,请定义一个用户信息结构体,然后使用fastjson对用户信息对象进行序列化,然后将序列化的对象用jedis存入redis中。接着用jedis将刚刚存入的用户信息从redis中取出,再经过fastjson反序列化后输出到控制台上!

​ 在我简单地学习了redis基础知识之后,《Redis深度历险》这本书给我出了这样一道思考题,我就把它当作我入门redis的最基本案例了。在题中已经很清楚的给出了提示和要求,主要有几点:用fastjson序列化用jedis存用jedis取用fastjson反序列化输出

​ 第一个问题: 所以首先我们得明了,怎么用fastjson进行序列化和反序列化,当然最简单的就是用到JSON.toJSONString()和JSON.parseObject()了。

举例:
String JsonUser = JSON.toJSONString(user); //序列化对象user
JSON.parseObject(JsonUser,User.class);      //反序列化user

​ 第二个问题:怎么搭建一个最简单方便的jedis环境。这里用到了ShardedJedisPool连接池。

举例:private static ShardedJedisPool pool;static {JedisPoolConfig config = new JedisPoolConfig();config.setMaxTotal(100);config.setMaxIdle(50);config.setMaxWaitMillis(3000);config.setTestOnBorrow(true);config.setTestOnReturn(true);JedisShardInfo jedisShardInfo = new JedisShardInfo("localhost", 6379);jedisShardInfo.setPassword("123456");List<JedisShardInfo> list = new LinkedList<JedisShardInfo>();list.add(jedisShardInfo);pool = new ShardedJedisPool(config,list);}

有了以上的准备 ,我们就可以开始解决问题啦!

  1. 先导入环境依赖。
 <dependency><groupId>redis.clients</groupId><artifactId>jedis</artifactId><version>2.8.0</version></dependency><dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId><version>1.2.75</version></dependency>
  1. 然后定义一个User类。
public class User {private String name;private Integer age;private String sex;//以下省略构造函数,getset方法,以及toString方法
}
  1. 在建立连接redis的jedis环境。
public class JedisConfig {private static ShardedJedisPool pool;static {JedisPoolConfig config = new JedisPoolConfig();config.setMaxTotal(100);config.setMaxIdle(50);config.setMaxWaitMillis(3000);config.setTestOnBorrow(true);config.setTestOnReturn(true);JedisShardInfo jedisShardInfo = new JedisShardInfo("120.55.36.148", 6379);jedisShardInfo.setPassword("123456");List<JedisShardInfo> list = new LinkedList<JedisShardInfo>();list.add(jedisShardInfo);pool = new ShardedJedisPool(config,list);}
}
  1. 最后在该类中创建一个main方法实现业务。
public static void main(String[] args) {User user = new User();user.setName("chenhang");user.setAge(1);user.setSex("man");//序列化后存入redisString s = JSON.toJSONString(user);ShardedJedis jedis = pool.getResource();jedis.set(user.getName(),s);//反序列化String user2 = jedis.get(user.getName());User user1 = JSON.parseObject(user2, User.class);System.out.println(user1.toString());}

以上就是redis的入门小案例啦!

Redis入门小案例相关推荐

  1. axios vue 回调函数_Vue 02 —— Vue 入门小案例~使用 Axios 中的GET、POST请求

    作为后端攻城狮,写前端代码是一种什么体验? 相信不少人和 @Python大星 一样,有写过前端代码的经历. 记录一下,Vue 框架开发中"啼笑皆非"的故事,非专业前端人员,该案例无 ...

  2. spring boot入门小案例

    spring boot 入门小案例搭建 (1) 在Eclipse中新建一个maven project项目,目录结构如下所示: cn.com.rxyb中存放spring boot的启动类,applica ...

  3. JavaWeb:shiro入门小案例

    学习原因:刚接触Javaweb的时候懂的很少(当然现在也不多),所以开发一个小项目都是自己从头写到尾,从登录界面一直到数据库,当时想以后开发要是都这么写那不是很枯燥?!-知道后来团队开发,接触的开发人 ...

  4. Axure的一些入门小案例

    Axure RP是一款专业的快速原型设计工具.上手入门比较简单,可以帮助我们快速的搭建一个网页原型.接下来我写一些自己入门时候写的小案例. 1.简单的表单 左下角的元件库可以直接拖拽使用以上元件即可, ...

  5. vue3.0网易云音乐及入门小案例

    前言 之前学习vue3.0时做了几个小案例,近段时间又找了几个案例想着把之前做的那些和现在做的放在一起于是休息的时候就搭建了一个vue3的项目.这个项目所用的数据都是页面上写死的,音乐播放器数据是调用 ...

  6. Hibernate 入门小案例

    前言: 学习学到现在终于要学习框架了,心里有点小激动呢,也不知道自己能不能学好呢,只能按着一步一个脚印的走下去,好了废话不多说.让我们打开hibernate 的大门吧!!! 肯定好多人都会问什么是hi ...

  7. SpringMVC 第一篇(SpringMVC入门小案例)

    1.SpringMVC简介 SpringMVC 是一种基于 Java 实现 MVC 设计模型的请求驱动类型的轻量级 Web 框架,它和Struts2 都属于表现层的框架,属于 Spring Frame ...

  8. React初体验-Hello React的组件化方式-React入门小案例

    文章目录 React初体验 Hello React案例演练 Hello React案例升级 Hello React的组件化 组件化的方式 数据依赖 事件绑定 其他案例练习 电影列表展示 计数器的案例 ...

  9. Android入门小案例,制作登陆页面跳转

    这个案例,主要目的是带着大家理解Android开发的基础知识,与UI布局以及点击事件,方便大家能更好的入门.至于如何创建一个Android项目这里就不在过多阐述.笔者这里使用的开发工具是IDEA,语言 ...

  10. Freemarker入门小案例(生成静态网页的其中一种方式)

    其实生成静态网页的方式有好多种,我昨天看了一下,Freemarker是其中一种,但是Freemarker现在我们都用得比较少了,现在用得ActiveMQ用来发送信息到静态页面,不过想了一下这个小东西, ...

最新文章

  1. 如何为jframe设置于右侧滑轮_如何为电脑设置屏保密码?
  2. java中mypoiexception_Java中使用POI读取大的Excel文件或者输入流时发生out of memory异常参考解决方案...
  3. pandas groupby 分组操作
  4. 强化学习笔记 experience replay 经验回放
  5. Python之网络图片爬取
  6. android 入门-android自定义控件
  7. c#中textbox属性_C#.Net中的TextBox.Visible属性与示例
  8. [MS Sql Server术语解释]预读,逻辑读,物理读
  9. vue样式中背景图片路径_vue打包css文件中背景图片的路径问题
  10. 云效支持自定义构建镜像 征集10家企业免费使用
  11. 非常简单的conda环境重命名方法
  12. 关于各操作系统对UVC协议支持的说明
  13. Ukey双因素身份认证步骤 安当加密
  14. Java实验-宠物商店(链表与接口的使用)
  15. Windows系统中owner owned 关系和 parent child关系
  16. 金融数据api接口记录
  17. 【kubernetes】k8s使用客户端连接haproxy访问高可用集群流程详细说明【使用kubeconfig连接haproxy】【kubeconfig配置全部流程】
  18. 【Python 每日一技】根据序列中每个元素共同的数据域进行分组迭代
  19. python三级考什么_什么是计算机三级考试?计算机三级考什么?
  20. 整理C语言和C++中常用输入输出函数

热门文章

  1. 淘宝电子面单怎么用CAINIAO打印组件调打印偏移
  2. 软件需求最佳实践笔记(一)
  3. 中国自由软件推广先锋的自述,心潮澎湃的一往无前,一定要看!作者:洪峰 ...
  4. MP3 Lame 转换 参数 设置(转)
  5. 凯撒密码中有数字怎么办_古典密码
  6. PPDE三星私有协议
  7. 科学计算器 c语言源代码,科学计算器C语言代码
  8. svn 删除文件 上传文件
  9. 数字信号的增益matlab,如何控制多频带滤波器通带增益?
  10. Python MySQL 教程