cassandra get set同步问题

import quicktime.std.clocks.Clock;

import com.sun.corba.se.spi.orbutil.fsm.Guard.Result;

import me.prettyprint.cassandra.serializers.StringSerializer;
import me.prettyprint.cassandra.service.CassandraHostConfigurator;
import me.prettyprint.hector.api.Cluster;
import me.prettyprint.hector.api.Keyspace;
import me.prettyprint.hector.api.beans.HColumn;
import me.prettyprint.hector.api.factory.HFactory;
import me.prettyprint.hector.api.mutation.Mutator;
import me.prettyprint.hector.api.query.ColumnQuery;
import me.prettyprint.hector.api.query.QueryResult;

public class ExampleClient {

public static void main(String[] args) throws IllegalStateException,Exception {
CassandraHostConfigurator cassandraHostConfigurator=new CassandraHostConfigurator("192.168.100.108:9160,192.168.100.110:9160");
cassandraHostConfigurator.setMaxActive(20);
cassandraHostConfigurator.setMaxIdle(5);
cassandraHostConfigurator.setCassandraThriftSocketTimeout(3000);
cassandraHostConfigurator.setMaxWaitTimeWhenExhausted(4000);

StringSerializer stringSerializer=new StringSerializer();
Cluster cluster=HFactory.createCluster("cluster_name", cassandraHostConfigurator);

Keyspace ks=HFactory.createKeyspace("OBS", cluster);
String columnFamily = "bucket";
Mutator mutator =HFactory.createMutator(ks, stringSerializer);

mutator.insert("bucket_key", columnFamily, HFactory.createStringColumn("object_name", "object_value"));

ColumnQuery columnQuery =HFactory.createColumnQuery(ks, stringSerializer, stringSerializer, stringSerializer);
columnQuery.setColumnFamily(columnFamily).setKey("bucket_key").setName("object_name");
QueryResult> queryResult=columnQuery.execute();


//若对象存在,打印对象key-value
System.out.println("object_name: "+queryResult.get().getName());
System.out.println("object_value: "+queryResult.get().getValue());
System.out.println("object_clock: "+queryResult.get().getClock());


//测试一个不存在的对象
System.out.println("测试一个不存在的对象");
columnQuery.setColumnFamily(columnFamily).setKey("bucket_key").setName("object_name1");
queryResult=columnQuery.execute();
try{
System.out.println("queryResult: "+queryResult.get().getClock());
}catch(NullPointerException e){
System.out.println("the object you query does not exist!");
e.printStackTrace();
}

//测试获取一个删除的对象
System.out.println("测试一个删除的对象");
columnQuery.setColumnFamily(columnFamily).setKey("bucket_name").setName("object_name");
queryResult=columnQuery.execute();
try{
System.out.println("queryResult: "+queryResult.get().getClock());
}catch(NullPointerException e){
System.out.println("the object you query does not exist!");
e.printStackTrace();
}

//测试写入一个对象后,在写入一个比当前对象时间戳要小的对象
//exist object_name_tw object_value_tw 1310661932412000L
long clock =1210661994080000L;
//mutator.insert("bucket_key", columnFamily, HFactory.createStringColumn("object_name_tw", "object_value_tw"));
HColumn column=HFactory.createColumn("object_name_tw", "object_value_tw", clock, stringSerializer, stringSerializer);
mutator.insert("bucket_key", columnFamily, column);
cluster.getConnectionManager().shutdown();
//result:clock 小于当前对象 则当前对象仍保留;clock大于当前对象,新的对象被写入

}
}

[@more@]

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/23937368/viewspace-1052469/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/23937368/viewspace-1052469/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值