基于开源的JAVA mongodb jdbc 驱动 使用教程
2023-12-14 21:16:32
基于开源的JAVA mongodb jdbc 驱动 使用教程介绍
介绍
本文介绍一款开源的基于JAVA的 Mongodb JDBC 驱动使用教程
开源地址
https://gitee.com/bgong/jdbc-mongodb-driver
功能价值
- 与mybaits融合:复用mybatis的功能特性,如:缓存,if动态判断标签等特性
- 开发更加便捷: 统一dao层,使代码更具维护性,同时操作mongodb 便捷
- 产品融合能力: 作为底层组件,可以与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 追加
案例代码下载
文章来源:https://blog.csdn.net/gongbing798930123/article/details/135002530
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!