redis入门级例子:
- package com.liuxinglanyue.test;
- import java.util.ArrayList;
- import java.util.List;
- import org.jredis.JRedis;
- import org.jredis.RedisException;
- import org.jredis.ri.alphazero.JRedisClient;
- import org.jredis.ri.alphazero.support.DefaultCodec;
- import org.junit.Test;
- public class Demo
- {
- @Test
- public void addOne()
- {
- JRedis jredis = new JRedisClient("192.168.1.106", 6379);
- try {
- jredis.ping();
- } catch (RedisException e) {
- System.out.println("不能ping通");
- e.printStackTrace();
- jredis.quit();
- }
- /*
- * 构造一个User对象
- */
- User user = new User();
- user.setName("liuxinglanyue");
- user.setPass("liuxinglanyue");
- List<Image> imageList = new ArrayList<Image>();
- for(int i=0; i<2; i++)
- {
- Image image = new Image();
- image.setUrl("Image url "+i);
- imageList.add(image);
- }
- user.setImageList(imageList);
- /*
- * 向redis中加入数据
- */
- try {
- jredis.sadd("userOne", user);
- System.out.println("添加成功!");
- } catch (RedisException e) {
- e.printStackTrace();
- } finally{
- jredis.quit();
- }
- }
- @Test
- public void show()
- {
- JRedis jredis = new JRedisClient("192.168.1.106", 6379);
- try {
- jredis.ping();
- } catch (RedisException e) {
- System.out.println("不能ping通");
- e.printStackTrace();
- jredis.quit();
- }
- try {
- List<User> user = DefaultCodec.decode(jredis.smembers("userOne"));
- for(User u : user)
- {
- System.out.print("Name:"+u.getName());
- System.out.print(" Password:"+u.getPass());
- List<Image> imageList = u.getImageList();
- for(Image image : imageList)
- {
- System.out.print(" ImageUrl:"+image.getUrl());
- }
- System.out.println();
- }
- } catch (RedisException e) {
- e.printStackTrace();
- } finally{
- jredis.quit();
- }
- }
- @Test
- public void addAll()
- {
- JRedis jredis = new JRedisClient("192.168.1.106", 6379);
- try {
- jredis.ping();
- } catch (RedisException e) {
- System.out.println("不能ping通");
- e.printStackTrace();
- jredis.quit();
- }
- /*
- * 构造多个User对象
- */
- for(int j=0; j<100; j++)
- {
- User user = new User();
- user.setName("liuxinglanyue"+j);
- user.setPass("liuxinglanyue"+j);
- List<Image> imageList = new ArrayList<Image>();
- for(int i=0; i<2; i++)
- {
- Image image = new Image();
- image.setUrl("Image "+j+" url "+i);
- imageList.add(image);
- }
- user.setImageList(imageList);
- /*
- * 向redis中加入数据
- */
- try {
- jredis.sadd("userOne", user);
- System.out.println("添加"+j+"成功!");
- } catch (RedisException e) {
- e.printStackTrace();
- }
- }
- jredis.quit();
- }
- }
User类:
- package com.liuxinglanyue.test;
- import java.io.Serializable;
- import java.util.List;
- public class User implements Serializable
- {
- private static final long serialVersionUID = 1L;
- private String name;
- private String pass;
- private List<Image> imageList;
- public String getName()
- {
- return name;
- }
- public void setName(String name)
- {
- this.name = name;
- }
- public String getPass()
- {
- return pass;
- }
- public void setPass(String pass)
- {
- this.pass = pass;
- }
- public List<Image> getImageList()
- {
- return imageList;
- }
- public void setImageList(List<Image> imageList)
- {
- this.imageList = imageList;
- }
- }
Image类:
- package com.liuxinglanyue.test;
- import java.io.Serializable;
- /*
- * 这里 Serializable 一定要加
- * 如果不加运行之前不报错,运行的时候就会报错
- */
- public class Image implements Serializable
- {
- private static final long serialVersionUID = 1L;
- private String url;
- public void setUrl(String url)
- {
- this.url = url;
- }
- public String getUrl()
- {
- return url;
- }
- }