redis存儲對象


使用redis+java(模仿數據庫)實現對象的存儲和讀取

實現前要引入Redis架包

  maven項目

<dependency>
            <groupId>redis.clients</groupId>
            <artifactId>jedis</artifactId>
            <version>2.9.0</version>
</dependency>

 

一、創建類:User

 1 package com.wbg.mr.entity;
 2 
 3 public class User {
 4     String uid;
 5     String userName;
 6     String passWord;
 7     String name;
 8 
 9     public User() {
10     }
11 
12     public User(String uid, String userName, String passWord, String name) {
13         this.uid = uid;
14         this.userName = userName;
15         this.passWord = passWord;
16         this.name = name;
17     }
18 
19     @Override
20     public String toString() {
21         return "User{" +
22                 "id='" + uid + '\'' +
23                 ", userName='" + userName + '\'' +
24                 ", passWord='" + passWord + '\'' +
25                 ", name='" + name + '\'' +
26                 '}';
27     }
28 
29     public String getUid() {
30         return uid;
31     }
32 
33     public void setUid(String uid) {
34         this.uid = uid;
35     }
36 
37     public String getUserName() {
38         return userName;
39     }
40 
41     public void setUserName(String userName) {
42         this.userName = userName;
43     }
44 
45     public String getPassWrod() {
46         return passWord;
47     }
48 
49     public void setPassWrod(String passWord) {
50         this.passWord = passWord;
51     }
52 
53     public String getName() {
54         return name;
55     }
56 
57     public void setName(String name) {
58         this.name = name;
59     }
60 }

 

二、創建UserDao類

 

 1 package com.wbg.mr.dao;
 2 
 3 import com.wbg.mr.entity.User;
 4 import redis.clients.jedis.Jedis;
 5 
 6 import java.util.*;
 7 
 8 public class UserDao {
 9     private static Jedis jedis;
10 
11     public UserDao(Jedis jedis) {
12         this.jedis = jedis;
13     }
14 
15     /**
16      * 添加
17      */
18     public void addUser(User user) {
19         //首先保存user-id
20         jedis.sadd("useradd", "user-" + user.getUid());
21         //-----添加數據----------
22         Map<String, String> map = new HashMap<String, String>();
23         map.put("uid", user.getUid());
24         map.put("userName", user.getUserName());
25         map.put("passWord", user.getPassWrod());
26         map.put("name", user.getName());
27         jedis.hmset("user-" + user.getUid(), map);
28     }
29 
30     /**
31      * 獲取單個User
32      *
33      * @return
34      */
35     public List<String> getById(String id) {
36         if (exists()) {
37             return jedis.hmget("user-" + id, "id", "userName", "passWord", "name");
38         }
39         return null;
40     }
41     /**
42      * 獲取全部
43      *
44      * @return
45      */
46     public List<User> listAll() {
47         List<User> list = new ArrayList<User>();
48         User user = null;
49         if (exists()) {
50             for (String useradd : jedis.smembers("useradd")) {
51                 user = new User();
52                 List<String> lists = jedis.hmget(useradd, "id", "userName", "passWord", "name");
53                 user.setUid(lists.get(0));
54                 user.setUserName(lists.get(1));
55                 user.setPassWrod(lists.get(2));
56                 user.setName(lists.get(3));
57                 list.add(user);
58             }
59             return list;
60         }
61         return null;
62     }
63 
64     //刪除全部
65     public boolean delAll() {
66         if (exists()) {
67             jedis.del("useradd");
68             return true;
69         }
70         return false;
71     }
72 
73     //判斷是否存在
74     public boolean exists() {
75         return jedis.exists("useradd");
76     }
77 }

三、測試

 1 public class Main {
 2     private static Jedis jedis =null;
 3     public static void main(String[] args) {
 4         //連接本地的 Redis 服務
 5          jedis = new Jedis("localhost");
 6         System.out.println("連接成功");
 7         //查看服務是否運行
 8         System.out.println("服務正在運行: "+jedis.ping());
 9         user();
10     }
11     public static void user(){
12         UserDao user = new UserDao(jedis);
13         user.delAll();
14         user.addUser(new User("21","ldl","123456","劉地林"));
15         user.addUser(new User("31","oyl","123456","歐一樂"));
16         user.addUser(new User("41","tyj","123456","唐玉棋"));
17         user.addUser(new User("51","cs","123456","陳勝"));
18         user.addUser(new User("61","gsq","123456","郭世棋"));
19         for (User user1 : user.listAll()) {
20             System.out.println(user1);
21         }
22 }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM