返回顶部
首页 > 资讯 > 数据库 >SpringBoot2集成Couchbase
  • 734
分享到

SpringBoot2集成Couchbase

SpringBoot2集成Couchbase 2020-02-01 16:02:41 734人浏览 才女
摘要

CoucHBase 虽然是mongoDB最有潜力的竞争对手,但是其在数据库方面的开源程度还远远不够,很多高级特性都没有开放出来。目前虽然被SpringBoot加持有了一些光环,但是其文档和代码注释方面做的仍然逊色不少,这与其开源程度有着很大

SpringBoot2集成Couchbase

CoucHBase 虽然是mongoDB最有潜力的竞争对手,但是其在数据库方面的开源程度还远远不够,很多高级特性都没有开放出来。目前虽然被SpringBoot加持有了一些光环,但是其文档和代码注释方面做的仍然逊色不少,这与其开源程度有着很大的关系。开源这把双刃剑,在这里其利弊表现得真是淋漓尽致。

 

废话少说,接下来是springBoot2集成Couchbase的详细步骤,请仔细阅读,以免不小心入坑。

目前,本项目使用的是SpringBoot 2.3.x版本, Spring Data Couchbase 4.0版本,关于该版本的更新可以参考这里: https://my.oschina.net/crosschen/blog/4342796。   1) 加载依赖包  


	org.springframework.boot
	spring-boot-starter-WEB


	org.springframework.boot
	spring-boot-starter-data-couchbase

 

2) 配置连接信息 application.yml  

spring:
  couchbase:
    bucket-name: gate_way
    bootstrap-hosts: 172.17.3.111
    username: Administrator
    passWord: zaq1xsw2

 

3) 动态加载数据库。 SpringBoot2并不会在配置Couchbase连接信息后自动加载该配置,目前需要通过配置类进行加载。CouchConfig.java  

@Configuration
@EnableCouchbaseRepositories(basePackages = {"com.favccxx.gateway.repository"}, considerNestedRepositories = true)
public class CouchConfig extends AbstractCouchbaseConfiguration {

    @Value("${spring.couchbase.bootstrap-hosts}")
    private String host;

    @Value("${spring.couchbase.username}")
    private String userName;

    @Value("${spring.couchbase.password}")
    private String password;

    @Value("${spring.couchbase.bucket-name}")
    private String bucketName;


    @Override
    public String getConnectionString() {
        return host;
    }

    @Override
    public String getUserName() {
        return userName;
    }

    @Override
    public String getPassword() {
        return password;
    }

    @Override
    public String getBucketName() {
        return bucketName;
    }

    @Override
    protected boolean autoIndexCreation() {
        return true;
    }

    @Override
    public String typeKey() {
        return MappinGCouchbaseConverter.TYPEKEY_DEFAULT;
    }
}

 

4) 自定义Repository。   注意: Couchbase在序列化嵌套对象时,会在数据库中添加content的属性,因此在查询对应的字段时需要使用claxx.content 返回具体值。  

@Repository
public interface MessageRouteRepo extends CouchbaseRepository {


    List findByRouteName(String routeName);


    @Query("SELECT META().id AS __id, META().cas AS  __cas, fromRoute.content as fromRoute, routeName, status FROM gate_way")
    public List findByRoutes(String routeName);


}

 

5) 集成完成。   目前,Couchbase方面的文档在网上并不多,而且很多文档都已经过时了。如果读者需要使用Couchbase作为数据库,建议参考官方的资料,以免不必要的入坑。     参考资料:  Https://www.couchbase.com/ https://spring.io/projects/spring-data-couchbase        

 

您可能感兴趣的文档:

--结束END--

本文标题: SpringBoot2集成Couchbase

本文链接: https://lsjlt.com/news/7308.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • SpringBoot2集成Couchbase
    Couchbase 虽然是MongoDB最有潜力的竞争对手,但是其在数据库方面的开源程度还远远不够,很多高级特性都没有开放出来。目前虽然被SpringBoot加持有了一些光环,但是其文档和代码注释方面做的仍然逊色不少,这与其开源程度有着很大...
    99+
    2020-02-01
    SpringBoot2集成Couchbase
  • Springboot2中如何集成pagehelper
    这篇文章主要介绍“Springboot2中如何集成pagehelper”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Springboot2中如何集成pagehelper”文章能帮助大家解决问题。1、...
    99+
    2023-06-08
  • SpringBoot2.x 集成 Thymeleaf的详细教程
    目录一、Thymeleaf简介二、集成Thymeleaf三、Thymeleaf常用语法一、Thymeleaf简介 Thymeleaf是面向Web和独立环境的现代服务器Java模板引擎...
    99+
    2024-04-02
  • SpringBoot2.x集成Dozer的示例代码
    目录一、引入依赖二、实体类三、编写配置文件四、创建测试类五、Dozer的基本使用代码示例Dozer是Java Bean到Java Bean的映射器,它以递归的方式将数据从一个对象复制...
    99+
    2024-04-02
  • Springboot2.x集成kafka2.2.0的示例代码
    目录引言基本环境代码编写1、基本引用pom2、基本配置3、实体类4、生产者端5、消费者6、测试效果展示遇到的问题引言 kafka近几年更新非常快,也可以看出kafka在企业中是用的频...
    99+
    2024-04-02
  • SpringBoot2.x 集成 Thymeleaf的详细步骤
    这篇文章主要介绍“SpringBoot2.x 集成 Thymeleaf的详细步骤”,在日常操作中,相信很多人在SpringBoot2.x 集成 Thymeleaf的详细步骤问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对...
    99+
    2023-06-20
  • SpringBoot2 集成测试组件的七种方法
    目录一、背景描述 二、PostMan工具 三、Swagger文档 四、TestRestTemplate类 五、Http请求模式 六、Service层测试 七、MockMvc方式 八、...
    99+
    2024-04-02
  • SpringBoot2.x 集成腾讯云短信的详细流程
    目录一、腾讯云短信简介二、准备工作 1.开通短信服务2.创建签名3.创建正文模板4.创建短信应用5.腾讯云API密钥三、集成腾讯云短信1.引入依赖2.编写配置类3.编写配置...
    99+
    2024-04-02
  • centos 7.4部署couchbase集群
           couchbase是一个较新的、发展迅速的nosql数据库技术。2014年,viber宣布使用couchbase替换mongodb,...
    99+
    2024-04-02
  • Couchbase支持插件扩展和集成其他系统吗
    是的,Couchbase支持插件扩展和集成其他系统。Couchbase提供了丰富的插件和API,可以与各种系统和工具进行集成,例如通...
    99+
    2024-04-09
    Couchbase
  • Couchbase与常见编程语言的集成方式有哪些
    Couchbase可以与多种常见编程语言集成,其中包括Java、Python、Node.js、C#、Ruby等。集成方式主要有以下几...
    99+
    2024-04-02
  • Springboot2 集成 druid 加密数据库密码的配置方法
    一:环境 springboot 2.x druid 1.1.21 二:druid加密数据库密码 本地下载druid-1.1.21.jar包,运行cmd,输入命令 java -cp...
    99+
    2024-04-02
  • SpringBoot2 高级应用(02):集成 JavaMail ,实现异步发送邮件
    本文源码:GitHub·点这里 || GitEE·点这里一、JavaMail的核心API1、API功能图解2、API说明(1)、Message 类:javax.mail.Message 类是创建和解析邮件的一个抽象类子类javax.mai...
    99+
    2023-06-02
  • Couchbase集群怎么扩展和缩减
    Couchbase集群可以通过添加或移除节点来扩展和缩减。以下是具体步骤: 扩展集群: 在要添加新节点的机器上安装Couchbas...
    99+
    2024-03-08
    Couchbase
  • 关于Springboot2.x集成lettuce连接redis集群报超时异常Command timed out after 6 second(s)
    背景:最近在对一新开发Springboot系统做压测,发现刚开始压测时,可以正常对redis集群进行数据存取,但是暂停几分钟后,接着继续用jmeter进行压测时,发现redis就开始...
    99+
    2024-04-02
  • SpringBoot2如何实现集成JPA持久层框架、简化数据库操作
    这篇文章主要为大家展示了“SpringBoot2如何实现集成JPA持久层框架、简化数据库操作”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“SpringBoot2如何实现集成JPA持久层框架、简化...
    99+
    2023-06-02
  • Couchbase怎么动态扩展和收缩集群
    Couchbase集群的动态扩展和收缩可以通过添加或移除节点来实现。下面是具体的步骤: 动态扩展集群: 在Couchbase控制台...
    99+
    2024-04-02
  • Couchbase怎么实现多节点集群部署
    在Couchbase中,要实现多节点集群部署,需要按照以下步骤操作: 安装Couchbase Server:首先需要在每个节点上...
    99+
    2024-04-02
  • 如何在Couchbase中管理和监控集群性能
    在Couchbase中管理和监控集群性能可以通过以下方式来实现: Couchbase Web控制台:Couchbase提供了一个...
    99+
    2024-04-02
  • SpringBoot2配置Swagger2生成API接口文档详情
    目录一、Swagger2介绍二、配置Swagger21、引入相关依赖2、创建swagger的配置类3、在启动类上添加注解扫描swagger的配置类,进行测试4、API模型5、定义接口...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作