1

我有奇怪的问题。我在 AppEngine 上使用 GWT,我想创建连接到 MySql 的 RPC。这一天我都坐在上面。这是我对 RPC 方法的实现:

java.sql.Connection con = null;
    public DataBaseServiceImpl() {
        try {
            Class.forName("com.mysql.jdbc.Driver").newInstance();
        } catch (Exception e) {
            // TODO Auto-generated catch block
            System.out.print("bladd..");
            e.printStackTrace();
        }

     String url ="jdbc:mysql://localhost:8806/base";
     try {
        con = DriverManager.getConnection( url,"root", "");
    } catch (SQLException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

    }
    @Override
    public ArrayList<String[]> getTables(int idUser) throws SQLException {

         Statement st =  con.createStatement();
         ResultSet retrive = st.executeQuery("query");
         ArrayList<String[]> result = new ArrayList<String[]>();
         while(retrive.next())
         {
             String[] s = new String[2];
             int theInt= retrive.getInt("ID__TABLE");
             String str = retrive.getString("LABEL");
             s[0]=Integer.toString(theInt);
             s[1]=str;
             result.add(s);
         }
        return result;
    }

我有这个错误:

java.sql.SQLException:由于 java.lang.IllegalAccessException,无法初始化驱动程序属性:com.google.appengine.tools.development.agent.runtime.Runtime 类无法访问 com.mysql.jdbc.ConnectionPropertiesImpl 类的成员修饰“私人”

我不知道它是什么。有人可以帮助我吗?

问候。

4

2 回答 2

0

我在 jre1.7.0_25 上运行时遇到了同样的问题。我通过升级到 jre1.7.0_45 解决了这个问题。

于 2014-01-03T07:32:56.310 回答
0

那么底线是你有非常混乱的代码。良好的编码实践有很多违规行为。

从您包含的代码中,这一行永远不会被执行:

con = DriverManager.getConnection( url,"root", "");

所以没有连接到你的数据库。您的异常是否表明这一行

Statement st =  con.createStatement();

是问题吗?

于 2013-07-10T13:56:32.923 回答