我一直在开发和应用程序,我使用谷歌端点创建所有的Web服务。
默认情况下使用Cloud DataStorage,我想将其更改为Cloud SQL存储。我正在从文档https://cloud.google.com/appengine/docs/java/cloud-sql/
中执行此步骤 import java.util.Map;
import java.util.HashMap;
import com.google.appengine.api.utils.SystemProperty;
...
// Set the persistence driver and url based on environment, production or local.
Map<String, String> properties = new HashMap();
if (SystemProperty.environment.value() ==
SystemProperty.Environment.Value.Production) {
properties.put("javax.persistence.jdbc.driver",
"com.mysql.jdbc.GoogleDriver");
properties.put("javax.persistence.jdbc.url",
"jdbc:google:mysql://your-project-id:your-instance-name/demo");
} else {
properties.put("javax.persistence.jdbc.driver",
"com.mysql.jdbc.Driver");
properties.put("javax.persistence.jdbc.url",
"jdbc:mysql://127.0.0.1:3306/demo");
}
// Create a EntityManager which will perform operations on the database.
PersistenceManagerFactory pmf = JDOHelper.getPersistenceManagerFactory(propertiesMap, "persistence-unit-name");
“持久性单位名称”在最后一行中的含义是什么?
答案 0 :(得分:1)
根据定义,持久性单元定义了一组由应用程序中的EntityManager实例管理的所有实体类。
有关详细信息,请参阅以下link。
现在,一旦构建了应用程序并且因为这是一个Web应用程序,按照上面的链接&#34;如果将持久性单元打包为WAR文件中的一组类,则persistence.xml应位于WAR文件的WEB-INF / classes / META-INF目录。&#34;查看META-INF
目录下的src
文件夹,您应该看到一个persistence.xml
文件,该文件的持久单元名称定义为您在获取PMF时指定的单位名称。
希望这有帮助。