打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
用spring托管couchbase
couchbase是一个很强大的nosql数据库,但现在几乎没有一个框架语言支持它,所以在javaweb中不能不能使用hibernate等orm框架来管理它,只能我们自己管理。
spring托管couchbase的方法
先创建一个couchbaseDB.properties文件来作为数据库的配置。
Java代码
couchBase.name=draw
couchBase.server=localhost:8091
couchBase.pwd=123
其中couchBase.server可能有很多个,如果有多个,那么多个值用“,”分隔开,比如
Java代码
couchBase.server=localhost:8091,192.168.0.3:8091
然后创建app_couchbase.xml文件来配置couchbase
Xml代码
<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的基本配置
Xml代码
<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的连接
Java代码
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的功能
Java代码
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没有自己的事务管理,所以我们还要为它单独写一个事务。
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
SSH实现的增删改查实例
Spring Acegi 各种加密方式详解
Spring-data-redis:特性与实例
SpringFramework(9)
Spring系列(十一):@Profile 注解用法介绍
C#:备份和恢复SQL Server数据库
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服