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
Clojure 学习入门(9)- 连接redis相关推荐
- Clojure 学习入门(6)- 函数定义
一.创建函数: fn: fn是一个宏,用于定义一个简单的函数,如下: [python] view plaincopy print? user=> (fn [] "hello&quo ...
- Clojure 学习入门(6)—— 函数定义
一.创建函数: fn: fn是一个宏,用于定义一个简单的函数,如下: user=> (fn [] "hello") #<user$eval375$fn__376 us ...
- Clojure 学习入门(8)- 连接mongodb
clojure 连接 mongodb示例 project.clj 文件添加monger依赖: [com.novemberain/monger "1.5.0"] [css] view ...
- Clojure 学习入门(7)- 连接mysql
Clojure的contrib包中实现了对现有JDBC的封装,在wiki上有连接,该页面上包含了对不同的数据库的连接方法和基本的操作,但是这个页面上没有提供足够的信息,足够一个初学者能够使用Cloju ...
- Clojure 学习入门(8)—— 连接mongodb
clojure 连接 mongodb示例 project.clj 文件添加monger依赖: [com.novemberain/monger "1.5.0"] (defprojec ...
- Clojure 学习入门(1) - 学习资料
转自:http://blog.csdn.net/ithomer/article/details/17225813 Clojure(发音类似"closure",['kləʊʒə(r) ...
- Clojure 学习入门(13)- binding
Clojure里面是不支持变量的.Binding跟变量有点像,但是在被赋值之前是不允许改的,包括:全局binding, 线程本地(thread local)binding, 以及函数内的本地bindi ...
- Clojure 学习入门(10)- httpkit
Http-kit 是主要由Java 和 Clojure开发,为Clojure定制的零依赖的HTTP lib,仅用3000多行代码,实现了高性能 Server,Client,Timer.代码量少,实现简 ...
- Clojure 学习入门(18)—— 数据类型
如何表示和处理数据 Clojure是一种动态类型语言,这意味着你在程序中永远不需要明确定义符号.函数.或者参数的数据类型.但是,所有的值仍然有一个类型.字符串时是字符串,数字是数字,列表是列表,等等. ...
最新文章
- 如何在一个表达式中合并两个字典?
- 【11分钟训练完ImageNet】DNN训练再破纪录,1024 CPU Caffe开源
- priority queue
- python语言的语法_Python语言 中的一些特殊语法
- linux 修改消息队列大小
- 据说这是最受科研人员喜爱的春联
- Hbase的伪分布式安装
- jquery实现复选框checkbox全选,取消全选
- UVA 10003 Cutting Sticks (区间dp)
- python怎么比较两个列表 所有成员,Python从特定角色获取所有成员列表
- 一文搞懂PID控制算法
- java的fprintf_fprintf不接受一个字符数组吗?
- ireport 循环_ireport detail循环原理
- 如何看待花呗接入央行个人征信?
- 什么是抽象类,接口?他们的区别?(详解)
- macOS无法验证此App不包含恶意软件
- 物品冷启动问题解决办法
- Oj-NOI 1.8 20:反反复复
- synology nfs_如何为您的Synology NAS创建本地备份
- 平衡二叉树 treap