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. 黑客落网记:FBI如何抓捕Anonymous核心成员

    腾讯科技讯 美国新闻网站Daily Dot近日撰文,通过他们掌握的资料和实地采访,还原了Anonymous核心成员被捕的经过. 以下为文章全文: 哈蒙德被捕前夜 2012年3月,一个周六的下午,天气异 ...

  2. 浅谈java中源码常见的几个关键字(native,strictfp,transient,volatile)

    最近看源码总发现一些没见过的关键字,今天就来整理一下native,strictfp,transient,volatile native 本地 native是与C++联合开发的时候用的!java自己开发 ...

  3. 4.彻底理解synchronized

    1. synchronized简介 在学习知识前,我们先来看一个现象: public class SynchronizedDemo implements Runnable {    private s ...

  4. 1-17-Linux中计划任务与日志的管理

    本节所讲内容: 1-1 Linux中的计划任务 1-1-1 at计划任务的使用 1-1-2 cron 计划任务的使用 1-1 Linux服务器的日志管理 1-1-1 日志的种类和记录的方式 1-1-2 ...

  5. AOP(面向切面)的粗俗理解

    百度百科的解释:AOP主要实现的目的是针对业务处理过程中的切面进行提取,它所面对的是处理过程中的某个步骤或阶段,以获得逻辑过程中各部分之间低耦合性的隔离效果. 一个比较绕的概念,简单来说就是把不影响业 ...

  6. Java SHA256/Base64转.NET(C#)实现---(华为云云市场.NET版本加密方式)

    前言: 工作需要,对接华为云应用市场的 API 接口,由于维护团队都是 .NET 所以用 .NET 来开发. 简单了解一下 SHA256 加密算法,本质就是一个 Hash,与 MD5 相比就是计算量大 ...

  7. MySQl的group by 与排序

    aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAtoAAAFLCAIAAABnXrwfAAAgAElEQVR4nO2dT29jvZHu+WHnW8xqdl ...

  8. DNSmasq搭建DNS服务器

    原文地址:http://jirry.me/2016/04/19/dnsmasq-on-aliyun/ DNSmasq 是一个小巧且方便地用于配置 DNS 和 DHCP 的工具,适用于小型网络,它提供了 ...

  9. HDU 3172 Virtual Friends(map+并查集)

    Virtual Friends Time Limit : 4000/2000ms (Java/Other)   Memory Limit : 32768/32768K (Java/Other) Tot ...

  10. hdu 5802 Windows 10 (dfs)

    Windows 10 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total ...