一、项目前提步骤

1>、创建键空间

CREATE KEYSPACE mykeyspace

WITH REPLICATION = { 'class' : 'SimpleStrategy', 'replication_factor' : 1 };

2>、创建表

和关系数据库一样,开发前需要先建表,再操纵

CREATE TABLE tweet (

id uuid PRIMARY KEY,

nickName text,

message text,

createTime timestamp

);

二、demo项目源代码

源代码:   http://yunpan.cn/QiXyTBeHLEqGm

访问密码: 06a8

三、bug集锦

1> IncompatibleClassChangeError

Caused by: java.lang.IncompatibleClassChangeError: Found interface com.datastax.driver.core.Session, but class was expected

 at org.easycassandra.persistence.cassandra.FixKeySpace.verifyKeySpace(FixKeySpace.java:52)

解决办法:把easy.cassandra.version升级到2.0.2或以上,并且cassandra.driver.core.version升级到2.0.0或以上(2.0.0-rc等版不算)。

2> ClassFormatError

java.lang.ClassFormatError: Absent Code attribute in method that is not native or abstract in class file javax/ws/rs/core/Response

解决办法:删掉

<dependency>

<groupId>javax</groupId>

<artifactId>javaee-web-api</artifactId>

<version>6.0</version>

</dependency>


3> Unsupported major.minor version 51.0

Exception in thread "main" java.lang.UnsupportedClassVersionError: org/easycassandra/persistence/cassandra/EasyCassandraManager : Unsupported major.minor version 51.0

Caused by: java.lang.UnsupportedClassVersionError: org/easycassandra/persistence/cassandra/ClusterInformation : Unsupported major.minor version 51.0

原因分析:表明系统引用的jar包有的是jdk1.6编译的、有的是jdk1.7编译的,而运行环境是jdk1.7,从而有些包不能运行造成该错误;

解决办法:把关联jar包的jdk版本统一到统一版本,比如选择jdk1.7.0(编译目标为:1.6)

注意:maven build的运行项配置中jdk的版本也要选择jdk1.7.0