====デプロイ====
*pom.xml のディレクトリで
> > mvn appengine:deploy
*デプロイ後、ブラウザで開く
> > gcloud app browse
===静的コンテンツ===
*https://cloud.google.com/appengine/docs/standard/java/building-app/static-content?hl=JA
====静的ファイルの配置場所====
*webapp ディレクトリ内に置きます。フォルダも使用できますが、すべてのファイルパスと URI は webapp ディレクトリからの相対パスになります
*静的ファイルの場所を選択したら、その場所を appengine-web.xml ファイル内の <<static-files> > 要素で定義する必要があります。
===フォームデータの処理===
*https://cloud.google.com/appengine/docs/standard/java/building-app/handling-form-data?hl=JA
====入力ページへのリンク====
<<a href='/jsp/form'>>Form<</a><></td>>
====入力ページJsp====
<<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>> <<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>> <<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn"%> > <<!DOCTYPE html>> <<html>> <<head>> <<meta charset="UTF-8">> <<title>>HTTP Form<</title>> <</head>> <<body>> <<form method="POST" action="/form/save">> <<label for="save_content">>内容:<</label>> <<textarea name="save_content" rows="3" cols="50">>保存内容<</textarea> > <<button type="submit">>保存<</button>> <</form>> <</body>> <</html>>
====JSP用ディスパッチャー====
*JSPをWEB-INF配下においてリダイレクトする
====結果表示====
*JSP の escapeXml 機能を使用して、クロスサイト スクリプティング(XSS)攻撃に対する対抗措置をとる
<<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>> <<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>> <<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn"%> > <<!DOCTYPE html>> <<html>> <<head>> <<meta charset="UTF-8">> <<title>>Insert title here<</title>> <</head>> <<body>> <<p>>${fn:escapeXml(content)}<</p>> <</body>> <</html>>
*https://qiita.com/tora470/items/1695a8614551b7500c2a
[[http://typea.info/blg/glob/2019/04/google-app-engine-java-standard-spring-boot.html Google App Engine Java Standard 環境で手っ取り早くSpring Boot アプリケーションを開発する]]
===Cloud Data Store===
*https://cloud.google.com/appengine/docs/standard/java/building-app/cloud-datastore?hl=JA