cassandra 之 jdbc 使用【java、scala】
1、数据库创建
参考接上文cassandra入门 http://www.cnblogs.com/piaolingzxh/p/4197833.html
2、下载jdbc驱动源码,构建jar包
源码下载地址:https://bitbucket.org/openscg/cassandra2-jdbc/src,最新包可能会构建失败,请下载2.1.1版的
当然,你也可以使用我构建好的,地址:http://download.csdn.net/detail/piaolingzxh/8320131
注:使用maven构建,
3、使用java连接cassandra
创建java项目,引入这些jar包,

至于为啥要引入这些包,可以参看下载的jdbc源码示例,examples\runTest.sh

jar包位置说明:下图这两个包直接使用jdbc驱动源码下lib\目录里的版本,其他的使用cassandra安装目录\lib下的版本

最后编写代码,运行
代码如下:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.Statement; public class cassandra2 {
public static void main(String[] a) {
try {
Class.forName("org.bigsql.cassandra2.jdbc.CassandraDriver");
Connection con = DriverManager
.getConnection("jdbc:cassandra://127.0.0.1:9160/demo"); String query = "select * from demo.users"; Statement statement = con.createStatement();
ResultSet rs = statement.executeQuery(query); while (rs.next()) {
System.out.print(rs.getString(1) + ":" + rs.getString(2) + "\t"
+ rs.getString(3) + "\t" + rs.getString(4) + "\t"
+ rs.getString(5) + "\t" + rs.getString(6) + "\t"
+ "\n");
} rs.close();
statement.close();
} catch (Exception e) {
e.printStackTrace();
} }
}
运行结果

4、scala 连接cassandra
创建scala项目,引用jar包,(和使用java一样)
创建scala类,输入以下代码,
import java.sql.DriverManager
import org.bigsql.cassandra2.jdbc.CassandraDriver
object cassandra {
import java.sql.{ Connection, DriverManager, ResultSet }
def main(args: Array[String]): Unit = {
classOf[org.bigsql.cassandra2.jdbc.CassandraDriver]
val db = DriverManager.getConnection("jdbc:cassandra://127.0.0.1:9160/demo")
val st = db.createStatement
val res = st.executeQuery("select * from demo.users")
while (res.next) {
for (i <- 1 to res.getMetaData.getColumnCount) {
val r = res.getString(i).toString
print("\t" + r)
}
println
}
db.close
}
}
运行结果

cassandra 之 jdbc 使用【java、scala】的更多相关文章
- docker 通过commit方法创建镜像(Tomcat+Java+Scala)
前一阵试了试写Dockerfile创建docker image,但有时全靠Dockerfile写实在有些难度,退而求其次试一试使用commit来创建镜像: 想了想干脆创建一个Java+Scala+To ...
- Akka.NET是Java/Scala 流行框架Akka的一个 .NET 开源移植
Akka.NET v1.0 已发布,支持Mono Akka.NET 是Java/Scala 流行框架Akka的一个 .NET 开源移植.可用于构建高并发,分布式和容错事件驱动的应用在 .NET 和 M ...
- JDBC数据库连接JAVA和一些基本语句
连接JDBC 1)JDBC简介 - JDBC就是Java中连接数据库方式 - 我们可以通过JDBC来执行SQL语句. 2)获取数据库连接 ...
- J2EE学习从菜鸟变大鸟之五 JDBC(Java Data Base Connectivity)
JDBC刚开始学习这个的时候看到了,以为是ODBC呢,很是相似啊,总的来说还是基本上一类的东东,但是还有一些细微的区别,下面和大家一起分享学习. JDBC(Java Data Base Connect ...
- JDBC(Java Data Base Connectivity,java数据库连接)
JDBC概述 JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言 ...
- JDBC 数据库连接 Java操作数据库 jdbc快速入门
JDBC基本概念 Java DataBase Connectivity 数据库连接 java操作数据库 本质上(sun公司的程序员)定义的一套操作关系型数据库的规则 既接口 更新内容之前 代码 pa ...
- (1)JDBC基础-java链接mysql数据库
怎么操作数据库: 1,通过客户端(比如mac的终端,或者sql pro等专业工具)登陆数据库服务器(mysql -u root -p) 2,编写sql语句 3,发生sql语句到数据库服务器执行. JD ...
- JDBC在Java Web中的应用
JDBC在Java Web中的应用 制作人:全心全意 在Java Web开发中,JDBC的应用十分广泛.通常情况下,Web程序操作数据库都是通过JDBC实现,即使目前数据库方面的开源框架层出不穷,但其 ...
- 今天又犯了Java/Scala里面substring的错误
每次都误以为是 substring(startIndex, length) 其实是 substring(startIndex, endIndex) 嗯 Java/Scala 跟 C++ 是不一样的.
- JDBC(Java项目使用Oracle数据库)
Java项目中使用Oracle数据库(Eclipse) 前言 这学期选了Oracle数据库这门课,于是自己下载了Oracle11gR2版本的数据库.在这之前我一直用的是MySQL.虽然两者教程差不多, ...
随机推荐
- jquery中各个事件执行顺序如下:
jquery中各个事件执行顺序如下: 1.ajaxStart(全局事件) 2.beforeSend 3.ajaxSend(全局事件) 4.success 5.ajaxSuccess(全局事件) 6.e ...
- 关于如何查看mysql版本及其端口号
关于如何查看MySQL版本: 方法一: 进入mysql cmd, status; 1 status; 将显示当前mysql的version的各种信息. 方法二: 还是在mysql的cmd下,输入: s ...
- poj 2485 Highways 最小生成树
点击打开链接 Highways Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 19004 Accepted: 8815 ...
- (整理)RPC
今天研究了一下Webservice,然后就查到RPC,看到CSDN上有两篇很好的文章,就学习一下,并记录在此以便后续研究 http://blog.csdn.net/mindfloating/artic ...
- BeanDefinitionStoreException: Failed to read candidate component class: URL
如题,遇到这种情况一般都是引用jar包版本不一致或者编译后的class除了问题 解决办法: a.如果是maven项目,把项目全部clean一下,重新mvn install b.如果不是maven项目, ...
- HDU2176尼姆博弈
HDU2176 http://acm.hdu.edu.cn/showproblem.php?pid=2176 假设有3个数,a[0],a[1],a[2];那么ans=a[0]^a[1]^a[2];若a ...
- C++ 之旅:前言
日前,拿起了C++教材开始学习. 在大学二年级的时候,其实C++已经是我们的必修课程.然而,那时的我刚从C语言的噩梦中逃出来,对C++也不甚喜爱.刚接触编程的我当时实在无法理解譬如下面这段 int x ...
- 从AlphaGo谈通用型人工智能设计
最近赢了人机大战的AlphaGo火了,火得一塌糊涂,圈里圈外,是人都在谈AlphaGo.但是AlphaGo毕竟是为特定场景特定应用设计的特定型人工智能,和通用型人工智能还是有很大差别,离人工智能普及更 ...
- 软件测试入门——测试模型(V型 W型 H型)
软件测试工程师称为“QA”,质量保证者——这是入门的第一点要学习的. 首先看基本的测试模型 1.“V”型 特点:[活动串行]这是一种古老的瀑布模型,反映了实际和测试之间的关系. 局限:仅仅把测试过程作 ...
- 使用Donut Caching和Donut Hole Caching在ASP.NET MVC应用中缓存页面
Donut Caching是缓存除了部分内容以外的整个页面的最好的方式,在它出现之前,我们使用"输出缓存"来缓存整个页面. 何时使用Donut Caching 假设你有一个应用程序 ...