Jedis简单操作,存储实体
来源:互联网 发布:蚁群算法背包问题 编辑:程序博客网 时间:2024/05/18 00:24
Jedis简单操作,如有疑问请加QQ群:83402555
Jedis操作实体需要序列化和反序列化,字符串不需要!
实体:
package com.redis.entity;import java.io.Serializable;/** * entity * @author zhoudong * */public class User implements Serializable{ /** * */private static final long serialVersionUID = 1L;private Integer id; private String userCode; private String userName; public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getUserCode() { return userCode; } public void setUserCode(String userCode) { this.userCode = userCode == null ? null : userCode.trim(); } public String getUserName() { return userName; } public void setUserName(String userName) { this.userName = userName == null ? null : userName.trim(); }}
package com.redis.utils;import java.io.ByteArrayInputStream;import java.io.ByteArrayOutputStream;import java.io.ObjectInputStream;import java.io.ObjectOutputStream;/** * 序列化和反序列化 * @author zhoudong * */public class SerializeUtil {public static byte[] serialize(Object object) {ObjectOutputStream oos = null;ByteArrayOutputStream baos = null;try {// 序列化baos = new ByteArrayOutputStream();oos = new ObjectOutputStream(baos);oos.writeObject(object);byte[] bytes = baos.toByteArray();return bytes;} catch (Exception e) {}return null;}public static Object unserialize(byte[] bytes) {ByteArrayInputStream bais = null;try {// 反序列化bais = new ByteArrayInputStream(bytes);ObjectInputStream ois = new ObjectInputStream(bais);return ois.readObject();} catch (Exception e) {}return null;}}
核心类:
package com.redis.utils;import com.redis.entity.User;import redis.clients.jedis.Jedis;/** * 方法2,Jedis * * 相关包: * <dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>2.1.0</version> <type>jar</type> <scope>compile</scope> </dependency> * @author zhoudong * */public class JedisUtils {// redis服务器主机private static String host = "localhost"; // 端口号private static int port = 6379; private static Jedis jedis = new Jedis(host, port); /*static{ Jedis jedis = new Jedis(host, port); }*/ public static void main(String[] args) { User user = new User(); user.setId(611); user.setUserCode("lilei"); user.setUserName("李磊"); //保存 set(String.valueOf(user.getId()), SerializeUtil.serialize(user)); //查询 User user1 =(User) get(String.valueOf(user.getId())); System.out.println(user1.getUserCode() +"----------"+ user.getUserName()); //更新 user.setUserCode("zhangsan"); update(String.valueOf(user.getId()), SerializeUtil.serialize(user)); user1 =(User) get(String.valueOf(user.getId())); System.out.println(user1.getUserCode() +"----------"+ user.getUserName()); //删除 delete(String.valueOf(user.getId())); //是否存在 System.out.println(exists(String.valueOf(user.getId()))); } /** * set * @param idkey * @param bytesvalue */ public static void set(String id,byte[] bytes){ // 添加key-value对象,如果key对象存在就覆盖该对象 jedis.set(id.getBytes(), bytes); } /** * get * @param id * @return */ public static Object get(String id){ // 添加key-value对象,如果key对象存在就覆盖该对象 byte[] bytes = jedis.get(id.getBytes()); return SerializeUtil.unserialize(bytes); } /** * update * @param idkey * @param bytesvalue */ public static void update(String id,byte[] bytes){ // 更新 set(id, bytes); } /** * delete * @param idkey * @param bytesvalue */ public static void delete(String id){ // 删除key-value对象,如果key不存在则忽略此操作 jedis.del(id.getBytes()); } /** * exists * @param idkey * @param bytesvalue */ public static boolean exists(String id){ // 判断key是否存在,不存在返回false存在返回true return jedis.exists(id.getBytes()); } }
spring data redis 请参照上一篇。有疑问加群问!
0 0
- Jedis简单操作,存储实体
- redis jedis存储对象简单操作,map list 自定义对象
- Jedis操作Redis简单测试
- jedis操作
- Jedis操作
- jedis 操作
- Redis入门很简单之六【Jedis常见操作】
- Redis入门很简单之六【Jedis常见操作】
- Redis入门很简单之六【Jedis常见操作】
- Jedis对Redis五大类型操作简单介绍
- jedis与spring整合及简单的使用RedisTemplate操作
- Redis入门很简单之六【Jedis常见操作】
- Redis入门很简单之六【Jedis常见操作】
- jedis与spring整合及简单的使用RedisTemplate操作
- Jedis——最简单的操作数据库方式
- Redis入门很简单之六【Jedis常见操作】
- 存储过程简单操作
- 存储过程简单操作
- Android开发之InstanceState详解
- redis和mysq数据同步和redi的一些设计
- liunx两台机器之间ssh无密码联通
- QML概念及框架--在组件中添加函数和信号
- TI AM335X处理器介绍
- Jedis简单操作,存储实体
- jackson 处理日期类型
- android上传文件到服务器的一个方法
- 【5/21】一般网站的访问过程
- IOS开发之__bridge,__bridge_transfer和__bridge_retained
- Oracle一列中有数字和文字比较大小
- 第一篇博客
- Offset UITableView Content When Keyboard Appears
- 树形DP--HihoCoder 1104 Suzhou Adventure