jsp中的JDBC连接以及bluemix中的MySQL挂起页面

时间:2015-08-29 20:36:02

标签: jsp jdbc ibm-cloud

index.html或myblumix.net中的任何普通jsp工作正常,但是在将JDBC代码放入JSP时,页面没有响应。 这是我的jSP:

Term

1 个答案:

答案 0 :(得分:0)

即使受到bluemix上Java自由运行时的支持,也不鼓励在JSP代码上使用硬编码数据库连接参数。 强烈建议使用VCAP_SERVICES,如bluemix教程中所述。 按照VCAP_SERVICES解析和使用的示例,

import com.ibm.nosql.json.api.*; 
  import com.ibm.nosql.json.util.*;

  // Block for parsing VCAP SERVICES
  String VCAP_SERVICES = System.getenv("VCAP_SERVICES");
  BasicDBObject sqldb;
  BasicDBObject credentials;
  String databaseUrl;
  if (VCAP_SERVICES != null) {
        BasicDBObject obj = (BasicDBObject) JSON.parse(VCAP_SERVICES);
        String thekey = null;
        Set<String> keys = obj.keySet();
        for (String eachkey : keys)
               if (eachkey.toUpperCase().contains("SQLDB"))
                              thekey = eachkey;
              }
        }
         BasicDBList list = (BasicDBList) obj.get(thekey);
         sqldb = (BasicDBObject) list.get("0");
         credentials = (BasicDBObject) sqldb.get("credentials");
         databaseUrl = credentials.get("jdbcurl");
   }
   else {
        // we are not executing inside bluemix, use a local DB
        databaseUrl = "jdbc:db2://" + databaseHost + ":" + port + "/" + databaseName;       
   }

您可以在此处找到有关获取VCAP_SERVICES的完整教程 https://www.ng.bluemix.net/docs/services/SQLDB/index.html 在该段 &#34;解析VCAP_SERVICES&#34;