Java 如何在GWT中连接MySql?(阿彭金)

Java 如何在GWT中连接MySql?(阿彭金),java,mysql,google-app-engine,gwt,connection,Java,Mysql,Google App Engine,Gwt,Connection,我有个奇怪的问题。 我在AppEngine上使用GWT,我想创建连接到MySql的RPC。一整天我都坐在上面。。这是我对RPC方法的实现: java.sql.Connection con = null; public DataBaseServiceImpl() { try { Class.forName("com.mysql.jdbc.Driver").newInstance(); } catch (Exception e) {

我有个奇怪的问题。 我在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类的成员 私人修饰符

我不知道那是什么。 有人能帮我吗


问候。

好吧,底线是你的代码非常混乱。有许多违反良好编码规范的行为

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

con = DriverManager.getConnection( url,"root", "");
因此,没有连接到您的数据库。您的异常情况是否表明该行

Statement st =  con.createStatement();

问题出在哪里?

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

这是从RemoteServiceServlet扩展并实现DataBaseService的类的唯一实现。你是对的。。我将其更改为:java.sql.Connection con=null;公共数据库ServiceImpl{try{String url=jdbc:mysql://localhost:8806/base;Class.forNamecom.mysql.jdbc.Driver.newInstance;con=DriverManager.getConnection url,root;}捕获异常e{//TODO自动生成的捕获块System.out.printbladd..+e.getMessage;e.printStackTrace;}但还是一样的问题。