首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

java-spring与mongodb的整合方式一 自动注入xml(2)

java-spring与mongodb的整合方式一 自动注入xml(2)

接口:GenericReposity

    package com.mongo.reposity.Impl;
     
     
    import java.util.List;
     
     
    import org.springframework.data.mongodb.core.MongoTemplate;
    import org.springframework.data.mongodb.core.query.Criteria;
    import org.springframework.data.mongodb.core.query.Query;
    import org.springframework.data.mongodb.core.query.Update;
     
     
    import com.mongo.reposity.GenericReposity;
    import com.mongodb.Mongo;
    import com.mongodb.WriteResult;
     
     
    public class GenericReposityImpl<T> extends MongoTemplate implements GenericReposity<T> {
     
     
        public GenericReposityImpl(Mongo mongo, String databaseName) {
            super(mongo, databaseName);
        }
     
     
        public List<T> getAllObjects(Class<T> clazz) {
            return findAll(clazz);
        }
     
     
        public void saveObject(Object obj) {
            insert(obj);
        }
     
     
        public void saveObjects(List<T> objects) {
            for (T t : objects) {
                insert(t);
            }
        }
     
     
        public T getObject(Class<T> clazz, String id) {
            return findOne(new Query(Criteria.where("id").is(id)), clazz);
        }
     
     
        public WriteResult updateObject(Class<T> clazz, String id, String name) {
            return updateFirst(new Query(Criteria.where("id").is(id)),
                    Update.update("name", name), clazz);
        }
     
     
        public void deleteObject(Class<T> clazz, String id) {
            remove(new Query(Criteria.where("id").is(id)), clazz);
        }
     
     
        public void createDbCollection(Class<T> clazz) {
            if (collectionExists(clazz)) {
                createCollection(clazz);
            }
        }
     
     
        public void dropDbCollection(Class<T> clazz) {
            if (collectionExists(clazz)) {
                dropCollection(clazz);
            }
        }
    }
返回列表