X Tutup
# Connecting to Cloud SQL - MySQL with Java 11 on Google App Engine Standard This sample demonstrates how to use [Cloud SQL - MySQL](https://cloud.google.com/sql/docs/mysql/) on Google App Engine Standard. ## Code The sample code is located in `java-docs-samples/cloud-sql/mysql/servlet`. This directory has the supplemental files needed to deploy to Google App Engine Standard with Java 11. ## Setup your Cloud SQL Database - Create a 2nd Gen Cloud SQL Instance by following these [instructions](https://cloud.google.com/sql/docs/mysql/create-instance). Note the connection string, database user, and database password that you create. - Create a database for your application by following these [instructions](https://cloud.google.com/sql/docs/mysql/create-manage-databases). Note the database name. - Create a service account with the 'Cloud SQL Client' permissions by following these [instructions](https://cloud.google.com/sql/docs/mysql/connect-external-app#4_if_required_by_your_authentication_method_create_a_service_account). Download a JSON key to use to authenticate your connection. ## Setup the App - See [Prerequisites](../README.md#Prerequisites). - Add the [appengine-simple-jetty-main](../README.md#appengine-simple-jetty-main) Main class to your classpath: ``` cd java-docs-samples/appengine-java11/appengine-simple-jetty-main mvn install ``` - Move into the sample directory: ``` cd ../../cloud-sql/mysql/servlet/ ``` - In the new Java 11 runtime, you must remove your `appengine-web.xml` file and create an `app.yaml` file to configure your application settings. Create an `src/main/appengine` directory and copy the `app.yaml` provided: ```bash mkdir src/main/appengine cp ../../../appengine-java11/cloudsql/app.yaml src/main/appengine/ ``` - Use the information from creating your database to replace the environment variables in your `app.yaml`: ```YAML CLOUD_SQL_CONNECTION_NAME: '::' DB_NAME: 'my_db' DB_USER: 'my-db-user' DB_PASS: 'my-db-pass' ``` - Java 11 has specific requirements on packaging your app. Replace the `pom.xml` with the Java 11 `pom.xml`: ```bash cp ../../../appengine-java11/cloudsql/pom.xml ./ ``` ### Deploy to Google Cloud The following command will deploy the application to your Google Cloud project: ``` mvn clean package appengine:deploy -DskipTests ``` View your application: ``` gcloud app browse ``` or by visiting `https://.appspot.com`.
X Tutup