couchbase是一个很强大的nosql数据库,但现在几乎没有一个框架语言支持它,所以在javaweb中不能不能使用hibernate等orm框架来管理它,只能我们自己管理。
spring托管couchbase的方法
先创建一个couchbaseDB.properties文件来作为数据库的配置。
couchBase.name=draw
couchBase.server=localhost:8091
couchBase.pwd=123
其中couchBase.server可能有很多个,如果有多个,那么多个值用“,”分隔开,比如
couchBase.server=localhost:8091,192.168.0.3:8091
然后创建app_couchbase.xml文件来配置couchbase
<bean id="couchbaseConnector" class="com.impulse.couchbase.CouchbaseConnector"
destroy-method="close">
<property name="serverAddress">
<value>${couchBase.server}</value>
</property>
<property name="name">
<value>${couchBase.name}</value>
</property>
<property name="pwd">
<value>${couchBase.pwd}</value>
</property>
</bean>
<bean id="couchbaseTemplate" class="com.impulse.couchbase.CouchbaseTemplate">
<constructor-arg>
<ref bean="couchbaseConnector" />
</constructor-arg>
<!-- <property name="couchbaseConnector" ref="couchbaseConnector" /> -->
</bean>
以后操作couchbase就使用类com.impulse.couchbase.CouchbaseTemplate
然后创建app_common.xml用来做spring的基本配置
<context:annotation-config />
<aop:aspectj-autoproxy></aop:aspectj-autoproxy>
<bean id="porpertyLoder"
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="location">
<value>classpath:couchbaseDB.properties</value>
</property>
</bean>
<import resource="app_couchbase.xml"/>
再创建类文件CouchbaseConnector来用来创建对couchbase的连接
public class CouchbaseConnector {
private String serverAddress;
private String name;
private String pwd;
public CouchbaseConnectionFactory connect() {
CouchbaseConnectionFactory cf = null;
try {
String[] serverNames = serverAddress.split(",");
ArrayList<URI> serverList = new ArrayList<URI>();
for (String serverName : serverNames) {
URI base = null;
base = URI.create(String.format("http://%s/pools",serverName));
serverList.add(base);
}
cf = new CouchbaseConnectionFactory(
serverList, name, pwd);
return cf;
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
public void close(){
}
public String getServerAddress() {
return serverAddress;
}
public void setServerAddress(String serverAddress) {
this.serverAddress = serverAddress;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPwd() {
return pwd;
}
public void setPwd(String pwd) {
this.pwd = pwd;
}
}
再创建CouchbaseTemplate来封装CouchbaseClient的功能
public class CouchbaseTemplate extends CouchbaseClient{
public CouchbaseTemplate(CouchbaseConnector couchbaseConnector) throws IOException{
super(couchbaseConnector.connect());
}
public void add(String key,Object value){
this.add(key, 0, value);
}
//这里可以创建一些别的方法来封装CouchbaseClient
}
这样以后直接使用CouchbaseTemplate的实例就可以了。
由于spring没有自己的事务管理,所以我们还要为它单独写一个事务。
分享到:
相关推荐
Spring Data Couchbase API(Spring Data Couchbase 开发文档).CHM。 官网 Spring Data Couchbase API
特性:Spring 配置支持使用基于 Java 的 @Configuration 类,或者用于 Couchbase 驱动的 XML 命名空间。CouchbaseTemplate 帮助类,提高一般 Couchbase 操作的效率, 包含对文档和 POJO 集成对象的映射。集成 Spring...
使用 Spring Data Couchbase v1.0, 2014-10-05 这是集成的演示。 从,Spring Data Couchbase 是: Spring Data Couchbase 项目提供与 Couchbase Server 数据库的集成。 Spring Data Couchbase 的关键功能领域是...
Spring会议Couchbase Spring Session的Couchbase实现。 这只是为了娱乐,决不准备生产。...您可以在找到使用Spring Session的文档,问题管理,支持,示例和指南。 执照 Spring Session是在下发行的开放源代码软件。
oauth2-server-spring-couchbase 基于 Spring Security OAuth2 和 Couchbase 的 OAuth2 授权服务器 ![spring-oauth2-couchbase] ( ) 这是基于 Spring Security OAuth2 的基本授权服务器。 主要目标是向您展示如何...
java查看spring源码 Spring Data Couchbase 该项目的主要目标是使构建使用新数据访问技术(例如非关系数据库、map-reduce 框架和基于云的数据服务)的 Spring 驱动的应用程序变得更加容易。 Spring Data Couchbase ...
Spring会议Couchbase Spring Session Couchbase在Couchbase数据存储中提供了针对Spring Session的解决方案。 从任何环境(例如,Web,消息传递基础结构等)访问会话在网络环境中支持以供应商中立的方式进行集群用于...
Spring Data Couchbase 提供了一个抽象层,允许开发者使用熟悉的 Spring 模式来操作 Couchbase 数据库。这包括注解驱动的 CRUD 操作、查询方法的自动声明、以及对 Couchbase 客户端 API 的封装。 在 "spring-data-...
- **准备阶段**:在安装Couchbase Server之前,需要了解支持的平台、硬件需求、存储需求、管理用的Web浏览器以及网络端口等信息。 - **安装过程**:文档中列出了在不同操作系统上安装Couchbase Server的具体步骤。 ...
标签“源码”和“工具”暗示了这篇博客可能深入到Couchbase的内部工作原理,或者提供了使用Couchbase的开发工具或SDK的相关信息。对于“源码”,可能讨论了Couchbase的部分源代码结构,开发者如何阅读和理解源码,...
### Couchbase 使用说明文档4.10:关键知识点解析 #### 一、Couchbase Server 概览 **1.1 松散的数据组织方式** Couchbase Server 的一大特点在于其灵活的数据组织形式,主要表现为对JSON文档的支持。这意味着...
1. **Couchbase C++ SDK**: Couchbase提供了C++ SDK,允许开发者使用C++与Couchbase服务器通信。安装SDK后,可以通过头文件和库来集成到项目中。 2. **连接集群**: 首先,需要创建一个`Couchbase::Cluster`实例,...
Couchbase还支持索引和查询服务,其中N1QL(Couchbase SQL over JSON)是一种强大的查询语言,允许开发者使用类似SQL的方式来查询JSON文档。N1QL提供了一种熟悉且高效的查询方式,同时保留了NoSQL的灵活性。 对于...
Spring Data Couchbase 当前使用同步 Couchbase Java SDK 1.x。 Java SDK 2 提供批处理,大大提高了性能: : 但是 Java SDK 2.x 是相当低级的。 它包含一个像 Spring Data 这样的高级存储库,而 Spring Data 在 ...
5. SQL-like查询:N1QL(Couchbase Query Language)是Couchbase 4.5.1引入的一个重要特性,允许开发者使用类似SQL的语法来查询JSON文档,增强了开发者的效率和灵活性。 6. 安装与部署:描述中提到的“自动化安装包...
Couchbase是一款高性能的NoSQL数据库,以分布式内存为中心,支持文档型数据模型。它能够单独运行,也可以形成集群以实现更大规模的数据管理和处理。在Couchbase集群中,各个节点是平等的,它们共同承载数据,没有...
"Laravel开发-laravel-couchbase"这个项目专注于在Laravel 5.6版本中使用Couchbase作为数据存储解决方案。 Couchbase是一个分布式多模型数据库,支持文档型数据、键值对数据和图形数据。其特点是高度可扩展性和高...