您的位置 首页 java

六、MongoDB Java客户端

本节将讲解 MongoDB Java 中的使用,实践性比较强。因此,写个demo比较直观。直接上代码, mongodb -demo.git

1、先创建一个springboot项目。

2、引入需要 jar ,驱动包等

 <!-- mongodb 的驱动 -->
<dependency>
  <groupId>org.mongodb</groupId>
  <artifactId>mongo-java-driver</artifactId>
  <version>3.10.1</version>
</dependency>


<!-- 以下是 spring 管理的mongodb -->
<!--  -->
<dependency>
  <groupId>org.springframework.data</groupId>
  <artifactId>spring-data-mongodb</artifactId>
  <version>2.1.1.RELEASE</version>
</dependency>  

六、MongoDB Java客户端

3、MongoClient 直接创建客户端连接

 @Before
public  void  init() {
        client = new MongoClient("192.168.12.179", 27017);
    }


/**
     * @Description: 获取或新增数据库, 如果是新增,则在创建后,通过show dbs是看不到的,需要添加collection才能看到
     * @author: 
     * @Datetime: 2021/1/6 14:19
     */@Test
public void connectDB() {
// 连接数据库,你需要指定数据库名称,如果指定的数据库不存在,mongo会自动创建数据库。
        MongoDatabase database = client.getDatabase("yzfile");
        System.out.println("connect successful----" + database.getName());
    }  

六、MongoDB Java客户端

4、创建与查询集合操作

     @Test
public void createCollection() {
        MongoDatabase database = client.getDatabase("yzfile");
        database.createCollection("mycollection");
        System.out.println("集合创建成功");
    }


    @Test
public void getCollection() {
        MongoDatabase database = client.getDatabase("yzfile");
        MongoCollection<Document> collection = database.getCollection("mycollection");
        System.out.println("获取集合成功:" + collection.getNamespace());
        MongoIterable<String> collectionNames = database.listCollectionNames();
for (String string : collectionNames) {
            System.out.println("collection name : " + string);
        }
    }  

5、由springboot 来管理,首先创建配置文件

mongodb.properties

 mongo.host=192.168.12.179
mongo.port=27017
mongo.connectionsPerHost=8
mongo.threadsAllowedToBlockForConnectionMultiplier=4
#连接超时时间
mongo.connectTimeout=1000
#等待时间
mongo.maxWaitTime=1500
mongo.autoConnectRetry=true
mongo. socket KeepAlive=true
#socket超时时间
mongo.socketTimeout=1500
mongo.slaveOK=true
mongo.writeconcern=safe  


spring-mongodb.xml

 <!-- 加载mongodb的配置属性文件 -->
<context:property-placeholder location="classpath:mongodb.properties"/>


<!-- 扫描持久层 -->
<context:component-scan base-package="com.santy.mongodb.springdata"/>


<!-- 配置mongodb客户端连接服务器的相关信息 -->
<mongo:mongo-client host="${mongo.host}" port="${mongo.port}" id="mongo">
<mongo:client-options
write-concern="${mongo.writeconcern}"
connect-timeout="${mongo.connectTimeout}"
socket-keep-alive="${mongo.socketKeepAlive}"/>
</mongo:mongo-client>


<!-- mongo:db-factory dbname="database" mongo-ref="mongo" / -->
<mongo:db-factory id="mongoDbFactory" dbname="yzfile" mongo-ref="mongo"/>


<!-- 配置mongodb的模板类:MongoTemplate -->
<bean id="mongoTemplate" class="org.springframework.data.mongodb.core.MongoTemplate">
<constructor-arg name="mongoDbFactory" ref="mongoDbFactory"/>
</bean>  

6、spring-data-mongdb 使用跟操作普通数据库类型,都需要创建相应的实体层、数据持久层、业务逻辑层等。因为类似,就不一一列举,直接看代码。

文章来源:智云一二三科技

文章标题:六、MongoDB Java客户端

文章地址:https://www.zhihuclub.com/197489.shtml

关于作者: 智云科技

热门文章

网站地图