基于开源的JAVA mongodb jdbc 驱动 使用教程

基于开源的JAVA mongodb jdbc 驱动 使用教程介绍

介绍

本文介绍一款开源的基于JAVA的 Mongodb JDBC 驱动使用教程

开源地址

https://gitee.com/bgong/jdbc-mongodb-driver

功能价值

  1. 与mybaits融合:复用mybatis的功能特性,如:缓存,if动态判断标签等特性
  2. 开发更加便捷: 统一dao层,使代码更具维护性,同时操作mongodb 便捷
  3. 产品融合能力: 作为底层组件,可以与BI、低代码平台等需要JDBC特性产品融合能力

基于 Mongodb jdbc+springboot+mybatis融合案例

https://blog.csdn.net/gongbing798930123/article/details/135003268
《【开源Mongdb驱动】SpringBoot+Mybatis+Mongdb融合使用教程》

代码操作指南

meavn pom文件依赖

 <dependency>
        <groupId>org.mongodb</groupId>
        <artifactId>mongodb-driver</artifactId>
        <version>3.11.2</version>
  </dependency>

<dependency>
    <groupId>org.mongodb</groupId>
    <artifactId>bson</artifactId>
    <version>3.11.2</version>
</dependency>

	<dependency>
		<groupId>com.google.code.gson</groupId>
		<artifactId>gson</artifactId>
		<version>2.8.2</version>
	</dependency>
	 
<dependency>
     <groupId>com.mongo.jdbc</groupId>
  <artifactId>jdbc-mongodb-driver</artifactId>
  <version>1.0.0</version>
      <scope>system</scope>
       <systemPath>${project.basedir}/src/main/resources/libs/mongo-connector-java-1.0.0.jar</systemPath>
</dependency>

POM文件说明
mongo-connector-java-1.0.0.jar 因为没有放到meavn的公共库里面去,所以需要在开源地址下载里面对应的驱动包放在项目里面或者本地meavn仓库中。

操作代码

package com.mongo.jdbc.example;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;

/**
 * 
 * @author:binggong
 * @createtime: 2023年12月10日 下午2:35:47 
 * @version:V.0.1
 * @tag:  mongodb jdbc 操作
 *
 */
public class JdbcMongoCommandExample {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		try {
			
			Class.forName("com.mongo.jdbc.Driver");
			
			/**
			 *  连接方案1
			 */
//			Properties properties = new Properties();
//			properties.put("user", "");
//			properties.put("password", "");
//			properties.put("address", "localhost:27017");
//			properties.put("dbname","demo_db");
//			properties.put("isSSL","false");
//			Connection conn = DriverManager.getConnection("", properties);
			
			
			/**
			 *  连接方案2
			 *  jdbc:mongo://localhost:27017/db_name?isSSL=false
			 */
			String jdbcUrl ="jdbc:mongo://localhost:27017/demo_db?isSSL=false";
			
			Connection conn = DriverManager.getConnection(jdbcUrl, null, null);
			 
			//写入操作
			String insertScript= "db.tb_user.insert({\"deptno\":?,\"dname\":?,\"loc\":?});";	
			PreparedStatement ps = conn.prepareStatement(insertScript);
			ps.setInt(1, 1);
			ps.setString(2, "数据中台部");
			ps.setString(3, "湖北武汉");
			
			ps.execute();
			
			
			//查询数据
			String queryScript = "db.tb_user.find()";
			
			 ps = conn.prepareStatement(queryScript);

			 ResultSet rs = ps.executeQuery();
			 
			 while(rs.next()) {
				String _id = rs.getString("_id");
				String deptno = rs.getString("deptno");
				String dname = rs.getString("dname");
				String loc = rs.getString("dname");
				
				System.out.println("_id:"+_id+"|deptno:"+deptno+"|dname:"+dname+"|loc:"+loc);

			 }
			 
			 //删除数据
			 String deleteScript = "db.tb_user.deleteMany({'loc':?})";
				
			 ps = conn.prepareStatement(deleteScript);
			 ps.setString(1, "湖北武汉");
				
			ps.execute();
			
			ps.close();
			
			
			
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		

	}

}

JDBC连接串说明

例如:jdbc:mongo://localhost:27017/db_name?isSSL=false
jdbc:mongo://为固定标示,标示为mongodb jdbc 驱动连接串
localhost:27017 :连接的主机和短裤
db_name :为数据库名称
isSSL=false :mongodb连接配置参数,如有多配置参加可以在后面用&keyxx=valuex 追加

案例代码下载

相关推荐
蓝黑20203 分钟前
IntelliJ IDEA常用快捷键
java·ide·intellij-idea
Ysjt | 深5 分钟前
C++多线程编程入门教程(优质版)
java·开发语言·jvm·c++
shuangrenlong17 分钟前
slice介绍slice查看器
java·ubuntu
牧竹子17 分钟前
对原jar包解压后修改原class文件后重新打包为jar
java·jar
数据小爬虫@28 分钟前
如何利用java爬虫获得淘宝商品评论
java·开发语言·爬虫
喜欢猪猪30 分钟前
面试题---深入源码理解MQ长轮询优化机制
java
Jacky(易小天)41 分钟前
MongoDB比较查询操作符中英对照表及实例详解
数据库·mongodb·typescript·比较操作符
草莓base1 小时前
【手写一个spring】spring源码的简单实现--bean对象的创建
java·spring·rpc
drebander1 小时前
使用 Java Stream 优雅实现List 转化为Map<key,Map<key,value>>
java·python·list
乌啼霜满天2491 小时前
Spring 与 Spring MVC 与 Spring Boot三者之间的区别与联系
java·spring boot·spring·mvc