mongodb bi-connector spring boot 集成试用

实际上没多少技术含量,就是spring data jdbc+mysql 数据访问而且,主要就是几个参数配置

spring boot 项目结构

使用官方的初始化器

  • 代码结构
├── HELP.md
├── demo.iml
├── mvnw
├── mvnw.cmd
├── pom.xml
└── src
    ├── main
    ├── java
    └── com
    └── dalong
    └── mongobi
    └── demo
    ├── CntArticleDAO.java
    ├── DemoApplication.java
    └── RestApi.java
    └── resources
    ├── application.properties
    ├── static
    └── templates
    └── test
        └── java
            └── com
                └── dalong
                    └── mongobi
                        └── demo
                            └── DemoApplicationTests.java
 
  • 代码说明
    RestApi.java 为简单查询,CntArticleDAO.java 为数据访问,application.properties 为jdbc 配置
    pom.xml
 
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
 <modelVersion>4.0.0</modelVersion>
 <parent>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-starter-parent</artifactId>
  <version>2.2.4.RELEASE</version>
  <relativePath/> <!-- lookup parent from repository -->
 </parent>
 <groupId>com.dalong.mongobi</groupId>
 <artifactId>demo</artifactId>
 <version>0.0.1-SNAPSHOT</version>
 <name>demo</name>
 <description>Demo project for Spring Boot</description>
 <properties>
  <java.version>1.8</java.version>
 </properties>
 <dependencies>
  <dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-data-jdbc</artifactId>
  </dependency>
  <dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-jdbc</artifactId>
  </dependency>
  <dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-web</artifactId>
  </dependency>
  <dependency>
   <groupId>mysql</groupId>
   <artifactId>mysql-connector-java</artifactId>
   <version>5.1.42</version>
  </dependency>
  <dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-test</artifactId>
   <scope>test</scope>
   <exclusions>
    <exclusion>
     <groupId>org.junit.vintage</groupId>
     <artifactId>junit-vintage-engine</artifactId>
    </exclusion>
   </exclusions>
  </dependency>
 </dependencies>
 <build>
  <plugins>
   <plugin>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-maven-plugin</artifactId>
   </plugin>
  </plugins>
 </build>
</project>
 

CntArticleDAO.java

package com.dalong.mongobi.demo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Repository;
import java.util.List;
import java.util.Map;
@Repository
public class CntArticleDAO {
    @Autowired
    JdbcTemplate jdbcTemplate;
    public List<Map<String, Object>> search() {
        String sql = "select * from cntArticle";
        return jdbcTemplate.queryForList(sql);
    }
}
 

RestApi.java

package com.dalong.mongobi.demo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class RestApi {
    @Autowired
    CntArticleDAO cntArticleDAO;
    @RequestMapping("/cns")
    public Object users(){
       return cntArticleDAO.search();
    }
}
 

启动效果

mvn spring-boot:run

 

 

主要说明

jdbc 的版本以及ssl 配置参数,是最重要的,按照官方的介绍8以及最新的是不可以的(测试也是),支持ssl 的
jdbc 配置为jdbc:mysql://localhost:3307/appdemos?useSSL=true,同时官方也提供了一个auth 的扩展,可以参
https://docs.mongodb.com/bi-connector/master/reference/auth-plugin-jdbc/

参考资料

https://docs.mongodb.com/bi-connector/master/reference/auth-plugin-jdbc/
https://github.com/rongfengliang/mongobi-java

posted on   荣锋亮  阅读(540)  评论(0编辑  收藏  举报

编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
历史上的今天:
2019-02-15 简单 babel plugin 开发-使用lerna 工具

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示