zoukankan      html  css  js  c++  java
  • mongodb spring 集成

    参考文档

    mongodb://[username:password@]host1[:port1][,host2[:port2],...[,hostN[:portN]]][/[database][?options]]

    依赖

            <dependency>
                <groupId>org.mongodb</groupId>
                <artifactId>mongo-java-driver</artifactId>
                <version>3.0.2</version>
            </dependency>

    beans-mongodb.xml

        <beans>
            <bean class="cn.zno.mongodb.CustomMongoClient" init-method="init" destroy-method="destroy" scope="singleton">
                <property name="uri">
                   <value><![CDATA[mongodb://xiaoming:123456@localhost:27017/?authSource=logtest&authMechanism=MONGODB-CR]]></value>
                </property>
                <property name="dbName" value="logtest"></property>
                <property name="collectionName" value="news"></property>            
            </bean>
        </beans>

    CustomMongoClient.java

    package cn.zno.mongodb;
    
    import org.bson.Document;
    import org.slf4j.Logger;
    import org.slf4j.LoggerFactory;
    
    import com.mongodb.MongoClient;
    import com.mongodb.MongoClientURI;
    import com.mongodb.client.MongoCollection;
    
    public class CustomMongoClient {
    
        private final Logger logger = LoggerFactory.getLogger(getClass());
        
        private MongoClient mongoClient;
        private MongoCollection<Document> mongoCollection;
    
        private String uri;
        private String dbName;
        private String collectionName;
    
        public void init() {
            MongoClientURI mongoClientURI = new MongoClientURI(uri);
            mongoClient = new MongoClient(mongoClientURI);
            mongoCollection = mongoClient.getDatabase(dbName).getCollection(collectionName);
            logger.info("MongoClient init");
        }
    
        public void destroy() {
            mongoClient.close();
            logger.info("MongoClient closed");
        }
    
        public MongoCollection<Document> getCollection() {
            return this.mongoCollection;
        }
    
        public String getUri() {
            return uri;
        }
    
        public void setUri(String uri) {
            this.uri = uri;
        }
    
        public String getDbName() {
            return dbName;
        }
    
        public void setDbName(String dbName) {
            this.dbName = dbName;
        }
    
        public String getCollectionName() {
            return collectionName;
        }
    
        public void setCollectionName(String collectionName) {
            this.collectionName = collectionName;
        }
    }

    如何使用:

        @Autowired
        private CustomMongoClient mongoClient;
    
        public void dd() {
            Document document = new Document();
            document.append("title", "天气日报");
            document.append("content", "晴");
            mongoClient.getCollection().insertOne(document);
        }
  • 相关阅读:
    处处留心皆学问,世事如棋局局新…
    【转载】2017 软件测试行业现状调查报告_From_51testing_On_20180625
    Hello World In Go ...
    C# 易错题整理
    C# 函数
    C# 哈希表,队列,栈
    C# 数组,集合,泛型集合
    C# 如何生成验证码
    C# 年月日时间题+Timespan
    闰年的一个BUG
  • 原文地址:https://www.cnblogs.com/zno2/p/4802762.html
Copyright © 2011-2022 走看看