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

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

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

【问题讨论】:

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

标签: java hibernate spring-boot mybatis


【解决方案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();

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-09-24
    • 1970-01-01
    • 2020-12-19
    • 2017-11-01
    • 2023-03-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多