java redis实战
Redis實戰
- java Redis實戰
- 基礎回顧
- Redis的數據類型
- String
- Hash
- List
- Set
- Zset
- 在java中使用redis
- 引入redis驅動包:
- 測試服務連接
- 存儲數據
系列文章
Redis第一天
Redis第二天
Redis第三天
Redis第四天
Redis第五天
java Redis實戰
? 很多人,可能看過Redis相關的教程,或者書籍,知道了一些關于Redis的基礎知識,但是也只是了解了Redis是什么,但是并沒有在實際的編寫代碼的過程中使用到Redis,現在就跟隨者我的步伐,進入到Redis實戰中吧。
基礎回顧
Redis的數據類型
? Redis支持五種數據類型,分別是:String、Hash、List、Set以及Zset
String
? 是redis中的最基本的數據類,可以理解成和Memcached(一套分布式的高速緩存系統)一模一樣的類型,一個key對應一個value
? 是二進制安全的,即可以包含任何數據,比如jpg圖片或者序列化的對象,一個鍵可以最大存儲512MB
set a “b”
get a
Hash
? Redis hash是一個鍵名對集合,也是一個string類型的field和value的映射表,hash特別適合用于存儲對象
hmset users:1 userage 18 username zhonghu
hgetall user : 1
List
? Redis的列表是簡單的字符串列表,按照插入順序排列,可以添加一個元素到列表的頭部或尾部
Lpush 插入
Lrange 查看
Set
? Redis的Set是無序集合,集合是通過哈希表實現的,所以添加、刪除、查找的復雜度都是O(1)
sadd:添加一個String元素到key對應的set集合中,成功返回1已存在返回0 key對應的set不存在返回錯誤
smembers 查看
Zset
? Redis的Zset是string類型的有序集合,不允許重復的成員,每個元素都會關聯一個double類型的分數
? zset的成員是唯一的,但是分數(score)卻可以重復
在java中使用redis
引入redis驅動包:
Redis驅動包地址
或者在maven中直接引入
<!-- https://mvnrepository.com/artifact/redis.clients/jedis --> <dependency><groupId>redis.clients</groupId><artifactId>jedis</artifactId><version>2.9.0</version> </dependency>測試服務連接
? 首先引入jar包:
import redis.clients.jedis.Jedis;? 通過ping命脈測試服務狀態
public class RedisTest {public static void main(String[] args) {// 連接到笨的的redis服務Jedis jedis = new Jedis("127.0.0.1");System.out.println("連接成功");System.out.println("服務器正在運行"+jedis.ping());} }結果:
存儲數據
import redis.clients.jedis.Jedis;import java.util.Iterator; import java.util.List; import java.util.Set;public class RedisTest {public static void main(String[] args) {// 連接到笨的的redis服務Jedis jedis = new Jedis("127.0.0.1");System.out.println("連接成功");System.out.println("服務器正在運行"+jedis.ping());// 設置redis 字符串數據jedis.set("name","zhonghu");System.out.println("redis 存儲的字符串為:"+jedis.get("name"));System.out.println("============================================");// 設置redis list數據jedis.lpush("list","redis");jedis.lpush("list","java");jedis.lpush("list","zhonghu");// 獲取存儲的數據并輸出List<String> list = jedis.lrange("list",0,2);for(String i:list){System.out.println(i);}System.out.println("============================================");// 設置redis set數據jedis.sadd("set","hello");jedis.sadd("set","world");jedis.sadd("set","zhonghu");// 獲取數據并輸出Set<String> keys=jedis.smembers("set");// 定義迭代器輸出Iterator<String> it = keys.iterator();while (it.hasNext()){System.out.println(it.next());}} }結果
總結
以上是生活随笔為你收集整理的java redis实战的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: HDU 4777 Rabbit King
- 下一篇: 使用JDBC进行数据库的事务操作(2)