在Eclipse中新建一个Clojure工程clj01

clojure 操作mysql需要依赖mysql-connector-java、clojure-contrib与java.jdbc三个jar包。

project.clj配置信息如下:配置完:dependencies 保存,系统会自动下载所配置的jar包信息。

(defproject clj01 "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.2.3"]
[org.clojure/clojure-contrib "1.2.0"]
[mysql/mysql-connector-java "5.1.26"]
])

新建mysql.clj

(ns clj01.mysql
(:require [clojure.java.jdbc :as sql])) ;配置参数
(def mysql-db{
:classname "com.mysql.jdbc.Driver"
:subprotocol "mysql"
:subname "//127.0.0.1:3306/test"
:user "root"
:password "" }) ;链接数据库
(sql/with-connection mysql-db) ;插入数据
(sql/with-connection mysql-db
(sql/insert-records :user
{:name "测试1" :age 25}
{:name "测试2" :age 26})) ;删除记录
(sql/with-connection mysql-db
(sql/delete-rows :user ["id > ?" 8])) ;更新记录
(sql/with-connection mysql-db
(sql/update-values :user
["id = ?" 8]
{:name "测试" :age 35})) ;查询记录
(println (sql/with-connection mysql-db
(sql/with-query-results rows
["select id,name,age from user where age > ?" 25]
(dorun (map #(println %) rows)))))

表结构:

mysql> desc user;
+-------+-------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+----------------+
| id | int() | NO | PRI | NULL | auto_increment |
| name | varchar() | YES | | NULL | |
| age | int() | YES | | NULL | |
+-------+-------------+------+-----+---------+----------------+

问题:在第一次运行代码时控制台提示如下异常:

otFoundException Could not locate clojure/java/jdbc__init.class or clojure/java/jdbc.clj on classpath:   clojure.lang.RT.load (RT.java:)

重启Eclipse之后问题解决,好像是Eclipse工具问题引起的。

最新文章

  1. java io流之字节流
  2. 【Tyvj 1060】【NOIP 2005】等价表达式
  3. 【BZOJ1270】1270: [BeijingWc2008]雷涛的小猫 DP
  4. JAVA 网格布局管理器
  5. 思维认知-读mindhacks杂记
  6. 如何使用iframe实现隐藏的CSRF
  7. Servlet 中使用POI生成Excel
  8. 用C++语言开发Android程序 配置开发环境
  9. OGC 的WCS WFS 及WMS 服务
  10. 常用的redis命令
  11. python3 分布式爬虫
  12. 2019秋招Java面经(未完待续)
  13. 百度ueditor的图片上传,前后端交互使用
  14. 【进阶2-3期】JavaScript深入之闭包面试题解
  15. [IDE - Eclipse] JSP报错:The superclass “javax.servlet.http.HttpServlet” was not found on the Java Build Path
  16. AJAX请求状态码返回200却跳到error的function
  17. 吴裕雄 04-mysql创建数据库
  18. vue实现左侧滑动删除
  19. SpringBoot整合EHcache学习笔记
  20. 将ASP.NET用户控件转化为自定义控件

热门文章

  1. hdu 3191 How Many Paths Are There
  2. LeetCode_Container With Most Water
  3. C#.NET利用ContextBoundObject和Attribute实现AOP技术--AOP事务实现例子
  4. bitmap 内存溢出OOM的解决办法分享
  5. java设计模式--创建型模式--抽象工厂
  6. bzoj1379 [Baltic2001]Postman
  7. 如何实现异步调用WCF
  8. tcp 状态示码 及 三次握手
  9. 【转】网络视频监控P2P解决方案
  10. mysql常用操作命令