cha*_*ang 4 java coldfusion cassandra cassandra-2.0
我正在尝试在我使用Coldfusion进行编码的项目中使用Apache Cassandra.由于Coldfusion没有Apache Cassandra的驱动程序,反之亦然,我试图使用Cassandra的Java驱动程序.
我几乎是一个Java新手,所以请耐心等待.
我已经设法将必要的.jar文件复制到/ opt/railo/lib /(我正在使用Railo),并使用下面的代码设法使用Coldfusion连接到Cassandra.我需要帮助的是循环查看Cassandra在运行查询时返回的结果.我在下面列出了非常简单的代码:
<cfset MyClusterInit = CreateObject("java", "com.datastax.driver.core.Cluster")>
<cfset MyCluster = MyClusterInit.builder().addContactPoint("127.0.0.1").build()>
<cfset MySession = MyCluster.connect("mytest")>
<cfset GetCustomer = MySession.execute("SELECT * FROM customer")>
<cfdump var="#GetCustomer#">
Run Code Online (Sandbox Code Playgroud)
如何循环返回的结果?cfdump返回Java方法ArrayBackedResultSet $ SinglePage.这不是我可以使用Coldfusion循环的东西.
从"Cassandra和Java入门"帖子中,我看到如下代码:
ResultSet results = session.execute("SELECT * FROM users WHERE lastname='Jones'");
for (Row row : results) {
System.out.format("%s %d\n", row.getString("firstname"), row.getInt("age"));
}
Run Code Online (Sandbox Code Playgroud)
我如何在Coldfusion中复制上述内容?
非常感谢您抽出宝贵时间提供帮助.
正如上面的Leigh和Mark A Kruger所指出的,使用JDBC驱动程序是连接Coldfusion/Railo中Cassandra的更智能的方法.只需按照以下说明操作:
通过https://code.google.com/a/apache-extras.org/p/cassandra-jdbc/下载JDBC驱动程序.它适用于最新版本的Cassandra(撰写本文时)
确保还要下载Cassandra JDBC依赖项
将jar文件复制到Coldfusion lib目录
重启Coldfusion/Railo
创建数据源类型"其他"
对于Driver Class,输入" org.apache.cassandra.cql.jdbc.CassandraDriver "
连接字符串应为" jdbc:cassandra:// host1 - host2 - host3:9160/keyspace1?primarydc = DC1&backupdc = DC2&consistency = QUORUM "
而已!您现在可以像查询任何其他数据库一样查询Cassandra
不仅.我设法让Java驱动程序直接工作,JDBC驱动程序的性能比直接调用Java驱动程序要好得多.我的测试只是一个非常简单的表,有3条记录,使用Java直接连接需要50ms,而使用JDBC驱动程序需要不到5ms.
感谢Leigh和Mark A Kruger提示!
| 归档时间: |
|
| 查看次数: |
544 次 |
| 最近记录: |