文档章节

clojure 的访问数据库操作

mi-la-king
 mi-la-king
发布于 2016/06/01 11:12
字数 191
阅读 22
收藏 0

项目构建工具 用Leiningen

Clojure的数据库接口clojure.java.jdbc 

使用Korma来进行数据库操作

首先要在project.clj文件中添加依赖项:

:dependencies [[org.clojure/clojure "1.7.0"]
               [org.clojure/java.jdbc "0.3.6"]
               [c3p0/c3p0 "0.9.1.2"]
               [mysql/mysql-connector-java "5.1.25"]
               [korma "0.3.0"]
               ])

数据库表:

create table blog (
    id varchar(32) not null primary key,
    title varchar(50) not null,
    content varchar(500) not null
);

其次引入 Korma:

(ns test.java.com.core
  (:use korma.db
        korma.core))

定义数据库连接的配置信息:

(defdb korma-db (mysql {:db "test",
                        :host "127.0.0.1",
                        :port "3307",
                        :user "root",
                        :characterEncoding "utf8",
                        :zeroDateTimeBehavior "convertToNull",
                        :password "root15"}))

然后定义一下要使用的entity,也就是表名:

(declare blog)
(defentity blog)

插入一条数据:

(insert courses
  (values { :id "2", :title "test", :connect "hello"})))

使用Clojure内置的map类型。

查询操作: 

(println (select blog
           (where {:id 2})
           (order :id :asc)))

© 著作权归作者所有

mi-la-king
粉丝 8
博文 5
码字总数 2664
作品 0
东城
程序员
私信 提问
Clojure使用Korma 来访问数据库

使用Korma 来访问数据库 本章源代码: https://github.com/LightSwordSpringBoot/clj-web 访问数据库 Java 提供了标准的 JDBC 接口访问数据库,Clojure 的数据库接口 是对 Java JDBC 的封装。...

东海陈光剑
2016/07/04
78
0
生活在REPL中,工具与程序一体

最近对《On Lisp》中提到的“自底向上程序设计”——通过改造语言来接近问题领域——有了新的体会:生活在REPL中,工具与程序一体。 开发一个项目,除了用编辑器敲代码、编译器编译代码、命令...

redraiment
2016/01/31
71
0
通过 Clojure 使用 CouchDB

本文展示如何使用 Clojure 访问 CouchDB API,Clojure 是一种面向 JVM 的动态语言。本文通过一些使用 Clutch API 和 clj-http 库的示例,分别展示一个高级 CouchDB API 和一些基于 REST 的低...

IBMdW
2011/06/22
787
1
Clojure语言 vs Scala 语言

本文是从 Clojure vs Scala - anecdote 这篇文章翻译而来。 我在这里是想跟大家分享一些从World Singles 系统里获得的经验 … 早在2009年11月,我们就开始使用Scala语言了。我们有一个需要运...

红薯
2011/09/20
3.3K
18
luminus web框架学习(1)

第一章 你的第一个程序 由于我是mac电脑所以我暂时以我的操作为基础(clojure对windows不友好 jdk和maven资料由于太多了我这里就不多介绍安装方式了) 首先使用brew install leiningen 和 br...

超级大黑猫
2018/12/01
0
0

没有更多内容

加载失败,请刷新页面

加载更多

在优麒麟中运行英雄联盟LOL

sudo apt install wine-stable sudo add-apt-repository ppa:lutris-team/lutris sudo apt install lutris 在lutris官网的game分类里找到英雄联盟这个游戏,然后进去那个页面, https://lutr......

gugudu
19分钟前
3
0
Mysql主从

一、mysql主从介绍 MySQL主从又叫做Replication、AB复制。简单讲就是A和B两台机器做主从后,在A上写数据,另外一台B也会跟着写数据,两者数据实时同步的,MySQL主从基于binlog,主上须开启b...

wxy丶
22分钟前
2
0
商品SKU规格算法

思想 定义规格属性数据格式 定义生成SKU数据格式 完成点击多选框后生成的数据源 根据数据源生成SKU数据 根据生成的SKU数据做展示 代码示例 <!DOCTYPE html><html><head> <!-- 页面met...

chinahufei
31分钟前
0
0
面试点:Java 中 hashCode() 和 equals() 的关系

Java 中 hashCode() 和 equals() 的关系是面试中的常考点,如果没有深入思考过两者设计的初衷,这个问题将很难回答。除了应付面试,理解二者的关系更有助于我们写出高质量且准确的代码。 一....

爱码仕i
32分钟前
3
0
传智播客JNI第七讲 – JNI中的全局引用/局部引用/弱全局引用、缓存jfieldID和jmethodID的两种方式

讲解JNI中的全局引用/局部引用/弱全局引用、缓存jfieldID和jmethodID的两种方式,并编写两种缓存方式的示例代码。 1.从Java虚拟机创建的对象传到本地C/C++代码时会产生引用,根据Java的垃圾回...

shzwork
43分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部