springboot整合couchbase集群的步骤
作者:风也温柔
couchbase是一款开源的,分布式的nosql数据库,主要用于分布式缓存和数据存储领域,本文给大家介绍springboot整合couchbase集群的步骤,感兴趣的朋友一起看看吧
1、Couchbase
1.1、介绍
1.2、Bucket
在 Couchbase 中,bucket 是一个重要的概念,类似于传统数据库中的数据库或表。它是 Couchbase 存储数据的基本单位,主要用于组织和管理数据。
- Bucket 是 Couchbase 中存储文档的容器。每个 bucket 可以包含多个文档,文档可以是 JSON 格式的数据。
1.3、Couchbase SDK
- Couchbase SDK(Software Development Kit)是一个用于与 Couchbase数据库进行交互的开发工具包。
- 它提供了一组 API 和工具,允许开发者通过编程语言(如 Java、Python 等)与Couchbase数据库进行连接、数据操作、查询、集群管理等操作。
2、(key,value)写入couchbase集群
2.1、总体图
2.2、依赖
couchbase服务器的版本是4.0
<dependency> <groupId>com.fasterxml.jackson.datatype</groupId> <artifactId>jackson-datatype-jsr310</artifactId> <version>2.13.0</version> </dependency> <dependency> <groupId>com.couchbase.client</groupId> <artifactId>java-client</artifactId> <version>2.7.23</version> </dependency> <dependency> <groupId>org.springframework.data</groupId> <artifactId>spring-data-couchbase</artifactId> <version>4.2.0</version> </dependency>
2.3、CouchbaseConfig 配置文件
package com.baafs.amtiot.couchbase; import com.baafs.amtiot.Models.VehiclePosition; import com.couchbase.client.java.Bucket; import com.couchbase.client.java.CouchbaseCluster; import com.couchbase.client.java.document.JsonDocument; import com.couchbase.client.java.document.json.JsonObject; import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule; import com.fasterxml.jackson.databind.ObjectMapper; public class CouchbaseUtils { private static final ObjectMapper objectMapper = new ObjectMapper() .registerModule(new JavaTimeModule()); public static void couchbaseVehiclePosition(String vmeid, VehiclePosition vehiclePosition) { // 创建 cluster // 连接 couchbase集群 //<couchbase> C#中couchbase集群配置文件,免密码登录 // 重点 ===== ip:端口:池 buckets // <servers> // <add uri="http://192.168.23.37:8091/pools" /> // <add uri="http://192.168.23.38:8091/pools" /> // </servers> // <buckets> // <add name="default" useSsl="false"> // </add> // </buckets> //</couchbase> // 1、自动选择端口(池):CouchbaseCluster.create() 会自动使用 8091 端口与集群进行通信,不需要显式指定端口号或 pools ///2、集群发现和负载均衡:Couchbase SDK 会自动进行集群拓扑发现并且会自动负载均衡。 CouchbaseCluster cluster = CouchbaseCluster.create("192.168.23.37,192.168.23.38"); // 连接 bucket 并打开 Bucket bucket = cluster.openBucket("default"); System.out.println("Connected to bucket: " + bucket.name()); try { // 将 VehiclePosition 对象转换为 JSON JsonObject content = JsonObject.fromJson(objectMapper.writeValueAsString(vehiclePosition)); JsonDocument inserted = bucket.upsert(JsonDocument.create(vmeid, content)); // 确认插入成功,获取一下 System.out.println("Document inserted with ID: " + inserted.id()); // content JsonDocument found = bucket.get("SA21009005"); System.out.println("Couchbase is the best database in the " + found.content().toString()); } catch (Exception e) { System.out.println("Error processing vehicle position: " + e.getMessage()); } finally { cluster.disconnect(); } } }
2.4、代码使用
到此这篇关于springboot整合couchbase集群的步骤的文章就介绍到这了,更多相关springboot整合couchbase内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!