java - 谷歌云sql未与我的项目连接(Java)

标签 java google-app-engine google-cloud-sql

LoginAuthServlet.java

            Class.forName("com.mysql.jdbc.GoogleDriver");
            String url="jdbc:google:mysql://Instance_connection_name/dbname?user=xyz&password=abc";
            Connection conn = DriverManager.getConnection(url);

            String query = "SELECT  "
                        + "  * "
                        + " FROM "
                        + "  users "
                        + " WHERE "
                        + "   user_username = ? AND user_password = ? AND user_status = '1' "
                        /*+ "     user_type = ? "*/
                        + " limit 0,1";
                PreparedStatement stmtLogin = conn.prepareStatement(query);
                stmtLogin.setString(1, username);
                stmtLogin.setString(2, userPassword);

                ResultSet resource = stmtLogin.executeQuery();
                if(resource.next()){
                        HttpSession sess = req.getSession();
                        sess.setAttribute("isLogin", "true");

                        sess.setAttribute("userId", resource.getString("user_id"));
                        sess.setAttribute("userName", resource.getString("user_username"));
                        sess.setAttribute("userType", resource.getString("user_type"));
                        sess.setMaxInactiveInterval(30*60);
                        resp.sendRedirect("BusinessList.jsp"); 
                    }

appengine-web.xml

 <use-google-connector-j>true</use-google-connector-j> 

当我部署此项目并尝试登录时,给出的响应是 {}..... 我包含了所有 jar 文件,如果我尝试使用 IPV4 地址在本地连接,那么它可以正常工作,但是如果我部署项目,那么它就不起作用,我完成了所有操作,但我的项目无法与 google cloud sql 连接。

最佳答案

如果您使用的是第二代实例,为了从 appengine 连接,您还需要包含区域 JDBC url,如下所示:

String url="jdbc:google:mysql://[PROJECT-ID]:[REGION]:[INSTANCE-NAME]/dbname?user=xyz&password=abc";

这里他们提供了一些例子: https://cloud.google.com/appengine/docs/java/cloud-sql/

关于java - 谷歌云sql未与我的项目连接(Java),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40068951/

相关文章:

forms - Google App Engine Go PostForm 不发送任何 url.Values?

mysql - Google SQL replica 需要上传 View 的程序和函数

postgresql - 无法使用 node-postgres 连接到 Cloud SQL

java - 如何在 Java 中访问内部类(在断言中)

java - 需要帮助制作按钮继电器信息

python - 通过 Nose 测试与多个实体组运行事务时出错

mysql - 将 Compute Engine 上的 PHP 代码安全地连接到 Cloud SQL

java - 使用 SAP Cloud SDK 中的 Java 生成 SFSF 的 VDM : Generated URI is wrong

java - Android - 如何以编程方式将证书存储在 keystore 中?

node.js - 使用 Google Cloud 端点进行 API 身份验证