Das Verfahren für den Titel lief nicht gut und es dauerte lange, bis es gelöst war. Deshalb werde ich es als Memorandum schreiben. Grundsätzlich https://cloud.google.com/sql/docs/postgres/connect-external-app?hl=ja#java Wenn Sie wie folgt vorgehen, wird es funktionieren.
Die Umgebung habe ich zu dieser Zeit besucht Windows Subsystem for Linux Java8 sbt ist. Mach dir keine Sorgen, warum du sbt aber Java verwendest. Scala studiert.
Zunächst müssen Sie das Cloud SDK installieren und authentifizieren, aber ich werde es hier weglassen. Schreiben Sie als Nächstes die erforderlichen Bibliotheken in build.sbt. Bitte verwenden Sie die jeweils aktuellste Version. Das Folgende ist die neueste Version vom 26. Dezember 2017.
libraryDependencies ++= Seq(
"org.postgresql" % "postgresql" % "42.1.4",
"com.google.cloud.sql" % "postgres-socket-factory" % "1.0.4"
)
Schreiben Sie dann eine Java-Datei wie die folgende und `` `sbt run```, um eine Verbindung zu PostgreSQL von Cloud SQL herzustellen.
import java.sql.*;
public class App {
public static void main(String[] args) throws Exception {
Connection connection = null;
String jdbcUrl = String.format(
"jdbc:postgresql://google/%s?socketFactory=com.google.cloud.sql.postgres.SocketFactory&socketFactoryArg=%s",
dbName,
instanceConnectionName);
try {
connection = DriverManager.getConnection(jdbcUrl,
userName,
password);
} finally {
if (connection != null) {
connection.close();
}
}
}
}
Hier ist `` `instanceConnectionName``` der Name der Instanzverbindung von Cloud SQL und wird auf dem Bildschirm mit der Liste der Cloud SQL-Instanzen aufgeführt.
Recommended Posts