1. maven  依赖

  1. <dependency>
  2. <groupId>org.springframework.data</groupId>
  3. <artifactId>spring-data-cassandra</artifactId>
  4. </dependency>
  5. <dependency>
  6. <groupId>org.springframework.data</groupId>
  7. <artifactId>spring-cql</artifactId>
  8. </dependency>
 
2. 创建 Cassandra  keysapce,表定义
  1. CREATE KEYSPACE dalong WITH replication = {'class': 'SimpleStrategy', 'replication_factor': 1};
  2. CREATE TABLE userapp(user_id text PRIMARY KEY ,firstname text ,lastname text );
 
3. 实体映射定义
 
  1. package com.yonyou.op.Enties;
  2. import java.io.Serializable;
  3. import org.springframework.data.cassandra.mapping.PrimaryKey;
  4. import org.springframework.data.cassandra.mapping.Table;
  5. @Table(value = "userapp")
  6. public class Person implements Serializable{
  7. private static final long serialVersionUID = 1L;
  8. @PrimaryKey
  9. private String user_id;
  10. private String firstname;
  11. private String lastname;
  12. public Person() {
  13. // TODO Auto-generated constructor stub
  14. }
  15. public Person(String id, String name, String age) {
  16. this.user_id = id;
  17. this.firstname = name;
  18. this.lastname = age;
  19. }
  20. public String getUser_id() {
  21. return user_id;
  22. }
  23. public String getFirstname() {
  24. return firstname;
  25. }
  26. public String getLastname() {
  27. return lastname;
  28. }
  29. @Override
  30. public String toString() {
  31. return "Person [user_id=" + user_id + ", firstname=" + firstname
  32. + ", lastname=" + lastname + "]";
  33. }
  34. }
4. 添加,查询代码
 
  1. public class Appdemo2 {
  2. private static final Logger LOGGER = LoggerFactory
  3. .getLogger(Appdemo2.class);
  4. protected static Person newPerson(String name, String age) {
  5. return newPerson(UUID.randomUUID().toString(), name, age);
  6. }
  7. protected static Person newPerson(String id, String name, String age) {
  8. return new Person(id, name, age);
  9. }
  10. public static void main(String[] args) {
  11. Cluster cluster = Cluster.builder().addContactPoints("XXXXXX")
  12. .build();
  13. Session session = cluster.connect("dalong");
  14. CassandraOperations template = new CassandraTemplate(session);
  15. Person jonDoe = template.insert(newPerson("Jon Doe", "dddd"));
  16. Select selectStatement = QueryBuilder.select()
  17. .from("dalong", "userapp");
  18. selectStatement.allowFiltering();
  19. selectStatement
  20. .where(QueryBuilder.eq("lastname", jonDoe.getLastname()));
  21. List<Person> selectpersons = template.select(selectStatement,
  22. Person.class);
  23. for (Person p : selectpersons) {
  24. LOGGER.info(p.toString());
  25. }
  26. session.close();
  27. cluster.close();
  28. }
  29. }
5. 常见问题:
 
   a. spring data  Cassandra  版本问题,目前已经支持3.0 但是需要使用新版本的spring 
       不然会出现比较怪异的问题 
 

Cassandra spring data 试用的更多相关文章

  1. 两行代码玩转Spring Data排序和分页

    一:唠嗑 在实际项目中对Spring Data的各种使用相当多,简单的增删改查Spring Data提供了现成的方法,一些复杂的,我们可以在接口方法写And,Not等关键字来搞定,想写原生SQL,CQ ...

  2. Spring Data学习中心

    Spring Data 概览 Spring Data的使命是为数据访问提供熟悉且一致的基于Spring的编程模型,同时仍保留底层数据存储的特殊特性. 它使数据访问技术,关系数据库和非关系数据库,map ...

  3. 初探 spring data(一)--- spring data 概述

    由于自己一个项目要用多到Sql与NoSql两种截然不同的数据结构,但在编程上我希望统一接口API,让不同类型的数据库能在相同的编程接口模式下运作.于是找了一个spring的官网,发现一个spring ...

  4. Spring Data(一)概念和仓库的定义

    Spring Data(一)概念和仓库的定义 Spring Data的主要任务是为数据访问提供一个相似的.一致的.基于Spring的编程模型,同时又保留着下面各个数据存储的特征.它使得使用数据访问技术 ...

  5. Spring Boot使用Spring Data Jpa对MySQL数据库进行CRUD操作

    只需两步!Eclipse+Maven快速构建第一个Spring Boot项目 构建了第一个Spring Boot项目. Spring Boot连接MySQL数据库 连接了MySQL数据库. 本文在之前 ...

  6. Spring Data Redis 让 NoSQL 快如闪电 (1)

    [编者按]本文作者为 Xinyu Liu,详细介绍了 Redis 的特性,并辅之以丰富的用例.在本文的第一部分,将重点概述 Redis 的方方面面.文章系国内 ITOM 管理平台 OneAPM 编译呈 ...

  7. 初入spring boot(八 )Spring Data REST

    1. 什么是Spring Data REST Spring Data JPA是基于Spring Data 的Repository之上,可以将Repository自动输出为REST资源.目前Spring ...

  8. spring data jpa关联查询(一对一、一对多、多对多)

    在实际过往的项目中,常用的查询操作有:1.单表查询,2.一对一查询(主表和详情表)3.一对多查询(一张主表,多张子表)4.多对多查询(如权限控制,用户.角色多对多).做个总结,所以废话不多说. 使用i ...

  9. SpringBoot第九篇:整合Spring Data JPA

    作者:追梦1819 原文:https://www.cnblogs.com/yanfei1819/p/10910059.html 版权声明:本文为博主原创文章,转载请附上博文链接! 前言   前面几章, ...

随机推荐

  1. CSS3:@font-face规则

    前言 过去,Web设计师为了保证网站能够正常显示,只能使用“Web安全字体”,即每台机器都预装的字体.但Web安全字体有时并不好看... @font-face能够使得任何一台机器能够显示理想中的字体. ...

  2. word2016_统计字数

    统计字数 审阅->字数统计

  3. VMware虚拟机创建安装之后不出现VMnet1和VMnet8虚拟网卡

    大家可能遇到过安装虚拟机之后,不出现这两张虚拟网卡,造成一系列的网络问题 VMware虚拟机无法将网络改为桥接状态 本人亲试可行的解决办法 首先把你之前安装的VMware虚拟机卸载,清理得一干二净: ...

  4. 【zznu-2060】 Minsum Plus(最小正子段和)

    题目描述 题意简单到令人发指! 序列A由N个整数组成,从中选出一个连续的子序列,使得这个子序列的和为正数,且和为所有和大于零的子序列中的最小值. 将这个值输出,若无解,输出no solution. 输 ...

  5. spring 核心接口之 Ordered

    Spring中提供了一个Ordered接口.从单词意思就知道Ordered接口的作用就是用来排序的.Spring框架是一个大量使用策略设计模式的框架,这意味着有很多相同接口的实现类,那么必定会有优先级 ...

  6. scala学习之实现RPC通信

    最近学习scala,个人感觉非常灵活,实现rpc通信非常简单,函数式编程比较烧脑 1.搭建工程 创建scala maven 工程 项目pom文件 <project xmlns="htt ...

  7. iOS跳转支付宝付款码和扫一扫页面

    iOS跳转支付宝付款码和扫一扫页面 // 是否支持支付宝 NSURL * myURL_APP_A = [NSURL URLWithString:@"alipay://"]; if ...

  8. eclipse ndk 配置和简单开发demo

    记录下以备忘: android开发的各种资源国内镜像 http://www.androiddevtools.cn/ 前端时间尝鲜用android stuido1.5开发了个android的小项目,发现 ...

  9. CMD命令提示符下选中文字即可以复制和SecureCRT一样

    用过 SecureCRT 的都会觉得复制粘贴很方便.只要选中相应文字,会自动复制.然后点鼠标右键就可以粘贴,非常方便. 但是在windows系统下的CMD里面,每次都要点鼠标右键→标记,再选中相应文字 ...

  10. Gradle 1.12用户指南翻译——第六十五章. Maven 发布(新)

    其他章节的翻译请参见:http://blog.csdn.net/column/details/gradle-translation.html翻译项目请关注Github上的地址:https://gith ...