首页 > 解决方案 > mysql驱动程序类未找到异常

问题描述

我在学习 Android 时尝试使用 MySQL,但出现此类未找到异常。我已经将 MySQL 连接器 jar 文件导入到我的项目中,并且我已经对其进行了设置。我用谷歌搜索了这个问题,但只得到了相同问题的 tomcat 解决方案,但我仍然不知道如何在 Android 中解决这个问题。

 private class GetData extends AsyncTask<String,String,String> {

    String msg = "";
    static final String JDBC_DRIVER = "com.mysql.jdbc.Driver";
    static final String DB_URL = "jdbc:mysql://"+
            DBStrings.DATABASE_URL +"/"+
            DBStrings.DATABASE_NAME;

    @Override
    protected void onPreExecute(){
    progressTextView.setText("Connecting to database");

    }

    @Override
    protected String doInBackground(String... strings) {
        Connection conn = null;
        Statement stmt = null;

        try {
            Class.forName(JDBC_DRIVER);
            conn = DriverManager.getConnection(DB_URL,DBStrings.USERNAME,DBStrings.PASSWORD);

            stmt = conn.createStatement();
            String sql = "SELECT * FROM medicine";
            ResultSet rs = stmt.executeQuery(sql);

            while(rs.next()){
                Integer ID = rs.getInt("ID");
                String name = rs.getString("Name");
                Integer date = rs.getInt("Date");
                medID.add(ID);
                names.add(name);
                medDate.add(date);

            }

            msg = "complete!";

            rs.close();
            stmt.close();
            conn.close();

        }catch (SQLException connERROR)
        {
            msg = "An exception was thrown for JDBC";
            connERROR.printStackTrace();
        }catch (ClassNotFoundException classERROR)
        {
            msg = "Class not found exception";
            classERROR.printStackTrace();
        }finally {

        }

        return null;
    }


}

标签: androidmysql

解决方案


不要在 android 设备上使用 JDBC,只需使用 J2EE servlet(如果您想用 JAVA 编写代码,最简单的解决方案),并通过 HTTP 从 android 调用这些 servlet(您可以使用 Retrofit Library 进行这些调用https://square. github.io/retrofit)。


推荐阅读