java - 通过代理使用 JDBC 驱动程序连接到 MySQL

标签 java mysql jdbc proxy

<分区>

在 Java 中,我想从位于 http 代理后面的客户端计算机连接到 Web 上的 MySQL 服务器。我读过一些解决方案,有些人说 http 隧道可能有效,有些人建议使用非常旧的 link。来自不再可用的 oracle。所以问题是:

我们如何从位于 http 代理后面的计算机连接到 MySQL 服务器?

最佳答案

您可以尝试下面的代码,看看是否有效。它通过 TCP 为我工作

package indika.jdbc.connectivity;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Properties;

public class ConnectOverProxy {
    public static void main(String[] args) {
        new ConnectOverProxy();
    }

    public ConnectOverProxy() {
        try {
            Class.forName("com.mysql.jdbc.Driver");
            Connection conn = null;
            Properties info = new Properties();
            //info.put("proxy_type", "4"); // SSL Tunneling
            info.put("proxy_host", "[proxy host]");
            info.put("proxy_port", "[proxy port]");
            info.put("proxy_user", "[proxy user]");
            info.put("proxy_password", "[proxy password]");
            info.put("user", "[db user]");
            info.put("password", "[db pass word]");
            conn = DriverManager.getConnection("jdbc:mysql://[db host]/",info);


            Statement stmt = conn.createStatement();
            ResultSet rs = stmt.executeQuery("Select NOW()");
            rs.next();
            System.out.println("Data- " + rs.getString(1));
            rs.close();
            stmt.close();
            conn.close();

        } catch (SQLException er) {
            er.printStackTrace();
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        }

    }
}

另见“http://www.idssoftware.com/jdbchttps.html”,不过我个人没有用过。

关于java - 通过代理使用 JDBC 驱动程序连接到 MySQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20318702/

相关文章:

java - 我可以在 INSERT PreparedStatement 中使用命名参数吗?

java - 无效状态,ResultSet 对象关闭

java - 移动平台上的 JasperReports

java - 扩展 NavigationDrawer Activity

MySQL 根据时间戳按月计算记录

mysql - 如何配置 processmaker(3.0.7) 以使用 postgresql (9.3)?

java - 设计实现作业调度

java - 如何使用注册码保护手机应用程序?

mysql - for 循环中的逻辑与运算符

java - 通过 JDBC/ODBC/Microsoft Access 进行字符编码