【Redis】09 Jedis 03 Hash与Java对象
创建一个普通对象类:
public class User implements Serializable { private String name; private String password; private int age; private boolean gender; // 省略 getter & setter constructor & toString ... }
测试:
@Test public void testRedisHashtStructureWithJavaObject(){ User user = new User("entity-user", "123456", 23, false); Jedis jedis = CustomJedisPool.getJedis(); /* 写入方式 */ // 方式一 jedis.hset("user:01", "name", user.getName()); jedis.hset("user:01", "password", user.getPassword()); jedis.hset("user:01", "age", String.valueOf(user.getAge())); jedis.hset("user:01", "gender", Boolean.toString(user.isGender())); // 方式二 Map<String, String> objectMap = new HashMap<String, String>(); objectMap.put("name", user.getName()); objectMap.put("password", user.getPassword()); objectMap.put("age", String.valueOf(user.getAge())); objectMap.put("gender", Boolean.toString(user.isGender())); jedis.hmset("user:02", objectMap); /* 读取方式 */ if (jedis.exists("user:01")) { Map<String, String> stringStringMap = jedis.hgetAll("user:01"); for (String s : stringStringMap.keySet()) { System.out.println(s + " : " + stringStringMap.get(s)); } } if (jedis.exists("user:02")) { Map<String, String> stringStringMap = jedis.hgetAll("user:02"); for (String s : stringStringMap.keySet()) { System.out.println(s + " : " + stringStringMap.get(s)); } } }
结果:
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder". SLF4J: Defaulting to no-operation (NOP) logger implementation SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
name : entity-user gender : false password : 123456 age : 23
name : entity-user gender : false password : 123456 age : 23

浙公网安备 33010602011771号