专栏首页米扑专栏Clojure 学习入门(9)—— 连接redis

Clojure 学习入门(9)—— 连接redis

clojure 连接 redis 示例

project.cli 添加redis依赖: [clj-redis "0.0.12"]

(defproject myClojure "0.1.0-SNAPSHOT"
  :description "FIXME: write description"
  :url "http://example.com/FIXME"
  :license {:name "Eclipse Public License"
            :url "http://www.eclipse.org/legal/epl-v10.html"}
  :dependencies [
                 [org.clojure/clojure "1.5.1"]
                 [org.clojure/java.jdbc "0.0.6"]
                 [org.clojure/clojure-contrib "1.2.0"]
                 [mysql/mysql-connector-java "5.1.26"]
                 
                 [com.novemberain/monger "1.5.0"]
                 
                 [com.taoensso/carmine "1.2.1"]
                 [clj-redis "0.0.12"]
                 ])

示例代码:

(ns myClojure.redis2
  (require [clj-redis.client :as redis]))

;; 连接redis
(def db (redis/init))

(println (redis/ping db))

(println (redis/set db "foo" "BAR"))
(println (redis/get db "foo"))

(println)  ;; 空一行

(println (redis/set db "blog" "http://blog.ithomer.net"))
(println (redis/get db "blog"))

运行结果:

PONG OK BAR OK http://blog.ithomer.net

redis 数据内容:

Carmine 示例

Carmine, a Clojure Redis client

project.clj 添加依赖: [com.taoensso/carmine "2.4.0"]

示例代码:

(ns myClojure.redis
  (:require [taoensso.carmine :as car]
            [taoensso.carmine.message-queue :as carmine-mq])
  (:gen-class :main true))

(def pool         (car/make-conn-pool)) ; See docstring for additional options
(def spec-server1 (car/make-conn-spec)) ; ''

(defmacro wcar [& body] `(car/with-conn pool spec-server1 ~@body))

(defn -main [& args]
  (println "rd01 run!")
  ;; 
   (wcar (car/ping)
      (car/set "foo" "hello ithomer")
      (car/get "foo")) 
  )

(-main)

运行结果: rd01 run!

["PONG" "OK" "hello ithomer"]

参考推荐:

Carmine, a Clojure Redis client(github)

clj-redis(github)

clojure操作redis

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 聊聊flink的consecutive windowed operations

    本文主要研究一下flink的consecutive windowed operations

    codecraft
  • Android动画详解

    Android动画分为视图动画(View Animation)和属性动画(Property Animation),视图动画分为补间动画(Tween Animat...

    黄林晴
  • Java连接MnogoDb数据库

    添加:mongo-java-driver-3.2.2.jar   驱动地址:http://central.maven.org/maven2/org/mongod...

    黄林晴
  • Kotlin语法基础

    定义常量与变量 可变变量定义:var 关键字 var <标识符> : <类型> = <初始化值> 不可变变量定义:val 关键字,只能赋值一次的变量(类似...

    黄林晴
  • 使用Retrofit + RxJava 网络请求

     Retrofit: Retrofit是Square 公司开发的一款正对Android 网络请求的框架。底层基于OkHttp 实现,OkHttp 已经得到...

    黄林晴
  • POJ 3259 Wormholes(Floyd判负环)

           题意是有一个n*n的地图,输入m条无向边,输入k条单向的虫洞(它的权值是负的,因为可以让时间倒流...),然后问能不能从一个点出发转一圈后回到这个...

    Ch_Zaqdt
  • 勾股数组

          一般地,若三角形三边长a,b,c都是正整数,且满足a,b的平方和等于c的平方,那么数组(a,b,c)称为勾股数组。勾股数组是人们为了解出满足勾...

    Ch_Zaqdt
  • 7个你现在应该学习python的理由

    Python 是一门更注重可读性和效率的语言,尤其是相较于 Java,PHP 以及 C++ 这样的语言,它的这两个优势让其在开发者中大受欢迎。

    用户4322765
  • Android Activity的四种启动模式

    记得第一次探讨Activity的启动模式,是在2017年8月份,那个时候对一年后走出校门的未来很是憧憬,时间真快,已经毕业四个月,工作和生活也都趋于稳定。

    黄林晴
  • Android蓝牙开发(三)之蓝牙通信

    上篇文章:https://blog.csdn.net/huangliniqng/article/details/82187966

    黄林晴

扫码关注云+社区

领取腾讯云代金券