ClassNotFoundException в Class.forName ("com.mysql.jdbc.Driver"). NewInstance (), связанный с Java-апплетом - PullRequest
1 голос
/ 09 января 2012

Я создал Applet, который подключается к базе данных MySQL и вставляет строки в БД.На локальном хосте запущен файл.Но когда я опубликовал то же самое на веб-сервере php, jar подключения mysql не был найден.Я запускаю Applet с этого сервера в виде файла HTML и получаю исключение ClassNotFoundException.Я уже положил mysql-connector-java-5.1.12-bin.jar в то же место, где существуют HTML и другие файлы классов.Также я создал web-inf/lib в корне и поставил туда банку, но не повезло.Ниже приведен код.

Connection conn=null;
try {
    String url = "jdbc:mysql://<ipaddress of domain>:3306/db_name";
    String driver = "com.mysql.jdbc.Driver";
    String userName = "username"; 
    String password = "password";
    try {
        Class.forName(driver).newInstance();
        conn = DriverManager.getConnection(url,userName,password);
        Statement statement = conn.createStatement();
        statement.executeUpdate("insert query");
        conn.close();
    } catch (SQLException e) {
        showAlert("Error=" + e.getMessage() + ",ErrorCode="+e.getErrorCode() + "," + e.getSQLState());
    }
} catch (InstantiationException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    showAlert("InstantiationException=" + e.getMessage());
} catch (IllegalAccessException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    showAlert("IllegalAccessException=" + e.getMessage());
} catch (ClassNotFoundException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    showAlert("ClassNotFoundException=" + e.getMessage());
}

Ниже приведен код HTML-файла

<HTML>
<BODY>
<APPLET CODE=app_test.class WIDTH=200 HEIGHT=100 archive='mysql-connector-java-5.1.12-bin.jar'>
</APPLET>
</BODY>
</HTML>

1 Ответ

0 голосов
/ 24 апреля 2012

Maneesh, Существуют концепции, называемые MVC, которые необходимо применять при разработке веб-приложений.

Апплетам никогда не следует обращаться к базе данных, что нарушает парадигму MVC.

Ваш апплет должен, по меньшей мере, взаимодействовать с сервлетом, который, в свою очередь, обращается к вашему контроллеру (код базы данных).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...