连接到云时收到套接字错误 SQL
Receiving socket error while connecting to cloud SQL
我正在尝试使用 android 工作室连接到云 SQL。收到此错误
07-30 16:51:12.511 23120-23120/com.example.pratyush.geofencing W/System.err: java.sql.SQLException: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/google/cloud/sql/mysql/SslSocketFactory;
我的代码:
public void getDatafromSQL() {
Log.d("GeoL", "getSQL");
Connection connection;
String query = "Some query";
try {
String databaseName = "dbName";
String instanceConnectionName = "instnce name";
String jdbcUrl = String.format(
"jdbc:mysql://google/%s?cloudSqlInstance=%s&"
+ "socketFactory=com.google.cloud.sql.mysql.SocketFactory",
databaseName,
instanceConnectionName);
connection = DriverManager.getConnection(jdbcUrl, "user", "pwd");
Statement statement = connection.createStatement();
ResultSet resultSet = statement.executeQuery(query);
Log.d("GeoL", String.valueOf(resultSet));
} catch (SQLException e) {
e.printStackTrace();
}
}
我正在使用 mysql 连接器 jar 和 mysql 套接字工厂 jar 作为依赖项。
我也无法使用 compile 'com.google.cloud.sql:mysql-socket-factory:1.0.3' this 作为依赖项。
请帮忙。
提前致谢。
该库包含多个 jar。如果您手动添加 jar,您还需要添加其依赖项(例如 jdbc-socket-factory-core jar,也许其他)。
话虽如此,您确实不应该手动打包 jar,因为这是一个乏味且容易出错的过程。
最后,除非这是您自己的玩具应用程序,否则您不应直接从您的移动应用程序连接到数据库。您实际上是在向拥有该应用程序副本的任何人授予对您的数据库的直接访问权。
我正在尝试使用 android 工作室连接到云 SQL。收到此错误
07-30 16:51:12.511 23120-23120/com.example.pratyush.geofencing W/System.err: java.sql.SQLException: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/google/cloud/sql/mysql/SslSocketFactory;
我的代码:
public void getDatafromSQL() {
Log.d("GeoL", "getSQL");
Connection connection;
String query = "Some query";
try {
String databaseName = "dbName";
String instanceConnectionName = "instnce name";
String jdbcUrl = String.format(
"jdbc:mysql://google/%s?cloudSqlInstance=%s&"
+ "socketFactory=com.google.cloud.sql.mysql.SocketFactory",
databaseName,
instanceConnectionName);
connection = DriverManager.getConnection(jdbcUrl, "user", "pwd");
Statement statement = connection.createStatement();
ResultSet resultSet = statement.executeQuery(query);
Log.d("GeoL", String.valueOf(resultSet));
} catch (SQLException e) {
e.printStackTrace();
}
}
我正在使用 mysql 连接器 jar 和 mysql 套接字工厂 jar 作为依赖项。
我也无法使用 compile 'com.google.cloud.sql:mysql-socket-factory:1.0.3' this 作为依赖项。
请帮忙。
提前致谢。
该库包含多个 jar。如果您手动添加 jar,您还需要添加其依赖项(例如 jdbc-socket-factory-core jar,也许其他)。
话虽如此,您确实不应该手动打包 jar,因为这是一个乏味且容易出错的过程。
最后,除非这是您自己的玩具应用程序,否则您不应直接从您的移动应用程序连接到数据库。您实际上是在向拥有该应用程序副本的任何人授予对您的数据库的直接访问权。