如何创建通用数据库连接服务

Posted

技术标签:

【中文标题】如何创建通用数据库连接服务【英文标题】:How to create a generic DB connection service 【发布时间】:2019-04-24 19:59:07 【问题描述】:

我必须创建一个能够连接到数据库并且不应该有任何实体类的微服务,我不希望这个微服务是特定于数据库的,我希望它能够连接到给定的任何数据库.

如何做到这一点?实体类甚至可能吗?

【问题讨论】:

这个问题太宽泛了。 由于您必须在最后连接到数据库,因此您的服务将是特定于数据库的。你为什么不试试工厂模式? 【参考方案1】:

您可以创建一个“通用”类来创建连接

 class DbConnector 
    private final String url;
    private final String driver;
    private final String user;
    private final String pass;

    public DbConnector(String url, String driver, String user, String pass) 

        this.url = url;
        this.driver = driver;
        this.user = user;
        this.pass = pass;
    

    public Connection connection() throws SQLException, ClassNotFoundException 
        Class.forName(this.driver);
        return DriverManager.getConnection(this.url, this.user, this.pass);
    

那么你可以这样使用它:

Connection conn = new DbConnector(
            "jdbc:mysql://localhost:3306/db_oopproject",
            "com.mysql.jdbc.Driver",
            "user","12345"
    ).connection();

它必须根据您的需要进行改进,但它是一个起点。

【讨论】:

以上是关于如何创建通用数据库连接服务的主要内容,如果未能解决你的问题,请参考以下文章

Java 微服务 day02 源代码 SpringBoot 实战开发 整合Mybatis(数据库连接池),通用Mapper整合,业务层整合

Java 微服务 day02 源代码 SpringBoot 实战开发 整合Mybatis(数据库连接池),通用Mapper整合,业务层整合

如何创建 DataSource

跨服务器的表连接,通用方法

如何将 Web 仪表板与 Android 应用程序连接并发送数据

如何远程连接服务器,服务器远程连接技巧