spring data 整合 couchbase

来源:互联网 发布:软件项目实施进度计划 编辑:程序博客网 时间:2024/06/08 00:57

1.在spring命名空间中添加couchbase命名空间

xmlns:couchbase="http://www.springframework.org/schema/data/couchbase"

xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
   
                            http://www.springframework.org/schema/data/couchbase http://www.springframework.org/schema/data/couchbase/spring-couchbase-2.0.xsd">


2.配置couchbase信息

<couchbase:env connectTimeout="6000000" />
 
        <couchbase:cluster>
<couchbase:node>127.0.0.1</couchbase:node>
       </couchbase:cluster>
    
       <couchbase:clusterInfo login="*****" password="*****"/>
    
       <couchbase:bucket bucketName="*****" bucketPassword="*****"/>
    
       <couchbase:repositories base-package="com.*****.*****.persistence.repositories.couchbase" />
    
       <couchbase:template/>
    
       <couchbase:indexManager/>


3.实体配置 (实体类@id是必须的)

@Documentpublic class CouchSession {    @Id     private String id;    @Field    private String sessionid;     @Field    private String acckey;

public interface CouchSessionDao extends  **** <CouchSession, String>();

**** 代表可以继承一下几个接口:

(1)  Repository : 如果持久层接口较多,且每一个接口都需要声明相似的增删改查方法,直接继承 Repository 就显得有些啰嗦,这时可以继承 CrudRepository,它会自动为      域对象创建增删改查方法,供业务层直接使用。开发者只是多写了 "Crud" 四个字母,即刻便为域对象提供了开箱即用的十个增删改查方法。

(2)  CrudRepository :使用 CrudRepository 也有副作用,它可能暴露了你不希望暴露给业务层的方法。比如某些接口你只希望提供增加的操作而不希望提供删除的方法。针        对这种情况,开发者只能退回到 Repository 接口,然后到 CrudRepository 中把希望保留的方法声明复制到自定义的接口中即可。

(3)  PagingAndSortingRepository:分页查询和排序是持久层常用的功能,Spring Data 为此提供了 PagingAndSortingRepository 接口,它继承自 CrudRepository 接口,在        CrudRepository 基础上新增了两个与分页有关的方法。但是,我们很少会将自定义的持久层接口直接继承自 PagingAndSortingRepository,而是在继承 Repository 或                   CrudRepository 的基础上,在自己声明的方法参数列表最后增加一个 Pageable 或 Sort 类型的参数,用于指定分页或排序信息即可,这比直接使用                                   PagingAndSortingRepository 提供了更大的灵活性。

(4) JpaRepository 是继承自 PagingAndSortingRepository 的针对 JPA 技术提供的接口,它在父接口的基础上,提供了其他一些方法,比如 flush(),saveAndFlush(),         deleteInBatch() 等。如果有这样的需求,则可以继承该接口。


4. 调用

使用@Autoward注入接口使用

0 0
原创粉丝点击