1.在Pom.xml添加spring-boot-starter-data-cassandra依赖:

        <dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-cassandra</artifactId>
</dependency>

启动spring boot应用,出现错误:

org.springframework.boot.SpringApplication: 815 - Application startup failed
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'session' defined in class path resource [org/springframework/boot/autoconfigure/data/cassandra/CassandraDataAutoConfiguration.class]:
Invocation of init method failed;
nested exception is com.datastax.driver.core.exceptions.NoHostAvailableException:
All host(s) tried for query failed (
tried:
localhost/127.0.0.1:9042 (com.datastax.driver.core.exceptions.TransportException: [localhost/127.0.0.1:9042] Cannot connect),
localhost/0:0:0:0:0:0:0:1:9042 (com.datastax.driver.core.exceptions.TransportException: [localhost/0:0:0:0:0:0:0:1:9042] Cannot connect))

意思是说应用启动失败。是由于在CassandraDataAutoConfiguration类中创建bean时失败了。内部原因是应用启动过程中发现cassandra不可访问,抛出了NoHostAvailableException异常。

默认情况下boot中的自动配置的Cassandra的host是127.0.0.1和0:0:0:0:0:0:0:1,两次尝试都失败了。

=>在本地的C:\Windows\System32\drivers\etc目录中的hosts文件中添加:

192.168.99.100 localhost

将127.0.0.1映射到实际配置的ip,这里使用了在Docker中启用的Cassandra容器。

=>spring boot提供了可以改配置的方式:

在src/main/resources目录下添加application.properties文件,在其中添加:

spring.data.cassandra.contact-points=192.168.99.100

来修改配置信息。

Spring boot cassandra - nested exception is com.datastax.driver.core.exceptions.NoHostAvailableException的更多相关文章

  1. spring boot rest api exception解决方案

    1.控制器级别@ExceptionHandler public class FooController{           //...     @ExceptionHandler({ CustomE ...

  2. spring boot 使用thymeleaf模版 报错:org.thymeleaf.exceptions.TemplateInputException

    错误: org.thymeleaf.exceptions.TemplateInputException: Error resolving template "Hello", tem ...

  3. nested exception is java.io.FileNotFoundException: class path resource [spring/spring-datasource-mog

    spring单元測试时发现的问题: org.springframework.beans.factory.BeanDefinitionStoreException: IOException parsin ...

  4. Spring Boot学习随记

    由于早年在管理领域耕耘了一段时间,完美错过了Spring的活跃期, 多少对这个经典的技术带有一种遗憾的心态在里面的, 从下面的我的生涯手绘图中大概可以看出来我的经历. 最近由于新介入到了工业数字化领域 ...

  5. nested exception is org.xml.sax.SAXParseException; lineNumber: 8; columnNumber: 56; cvc-complex-type.2.4.c通配符的匹配很全面, 但无法找到元素 'dubbo:application' 的声明

    严重: Exception sending context initialized event to listener instance of class org.springframework.we ...

  6. spring boot学习(2) SpringBoot 项目属性配置

    第一节:项目内置属性 application.properties配置整个项目的,相当于以前的web.xml: 注意到上一节的访问HelloWorld时,项目路径也没有加:直接是http://loca ...

  7. Spring Boot (26) RabbitMQ延迟队列

    延迟消息就是指当消息被发送以后,并不想让消费者立即拿到消息,而是等待指定时间后,消费者才拿到这个消息进行消费. 延迟队列 订单业务: 在电商/点餐中,都有下单后30分钟内没有付款,就自动取消订单. 短 ...

  8. Spring Boot (25) RabbitMQ消息队列

    MQ全程(Message Queue)又名消息队列,是一种异步通讯的中间件.可以理解为邮局,发送者将消息投递到邮局,然后邮局帮我们发送给具体的接收者,具体发送过程和时间与我们无关,常见的MQ又kafk ...

  9. Spring Boot 2 实战:常用读取配置的方式

    1. 前言 在Spring Boot项目中我们经常需要读取application.yml配置文件的自定义配置,今天就来罗列一下从yaml读取配置文件的一些常用手段和方法. 2. 使用@Value注解 ...

随机推荐

  1. [容器]docker-ce安装最新版-docker常用操作

    社区: http://www.dockerinfo.net/rancher http://dockone.io/ https://www.kubernetes.org.cn/ 1,docker安装配置 ...

  2. java - day13 - UnionPay

    银行功能实现,主要为抽象类及接口的运用 package com.javatest.bankimple; /* UnionPay */ //银联接口 public interface UnionPay ...

  3. js中级系列:模块化(转载 学习中。。。。)

    从 CommonJS 到 Sea.js https://github.com/seajs/seajs/issues/269 CMD(Common Module Definition) 模块定义规范 h ...

  4. UI-2-UILabel&UIImageView-补充

    课程要点: 控件之间的继承关系. UILabel UIImageView 利用UIImageView实现帧动画 补充 试图之间的继承关系 昨天学习UIView的时候,了解到UIView里面有以下几个常 ...

  5. CenOS下安装Memcache和PHP Memcache扩展.

    I.安装Memcahce 1. 安装依赖包libevent Memcache需要安装libevent,所以安装前可能需要执行 yum install libevent-devel 2.安装memcac ...

  6. JS判断不同的浏览器,不同的浏览器版本

    JS判断不同的浏览器,不同的浏览器版本

  7. java 读取world的图片 并把图片路径存入数据库

    package World; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundExcep ...

  8. Eclipse 创建 Java 包

    打开新建 Java 包向导 你可以使用新建 Java 包向导来创建 Java 包.Java 包向导打开方式有: 通过点击 "File" 菜单并选择 New > Package ...

  9. es6 async与await实战

    在使用js的时候,我们经常会遇到一个问题,就是我们需要等待请求返回再做下一步处理,之前的处理方式是通过ajax的success或者callback之类的方法,不过一层一层真的恶心,而且只是针对单个页面 ...

  10. Python将数据保存到CSV中

    #coding:utf-8import csv headers = ['ID','UserName','Password','Age','Country'] rows = [(1001,'qiye', ...