Что не так с кодом, при отладке много ошибок. Я пишу код для одноэлементного класса для подключения к базе данных mysql.
Вот мой код
package com.glomindz.mercuri.util;
import java.sql.Connection;
import java.sql.Driver;
import java.sql.DriverManager;
import java.sql.SQLException;
public class MySingleTon {
String url = "jdbc:mysql://localhost:3306/";
String dbName = "test";
String driver = "com.mysql.jdbc.Driver";
String userName = "root";
String password = "";
private static MySingleTon myObj;
private Connection Con ;
private MySingleTon() {
System.out.println("Hello");
Con= createConnection();
}
@SuppressWarnings("rawtypes")
public Connection createConnection() {
Connection connection = null;
try {
// Load the JDBC driver
Class driver_class = Class.forName(driver);
Driver driver = (Driver) driver_class.newInstance();
DriverManager.registerDriver(driver);
connection = DriverManager.getConnection(url + dbName);
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (InstantiationException e) {
e.printStackTrace();
}
return connection;
}
/**
* Create a static method to get instance.
*/
public static MySingleTon getInstance() {
if (myObj == null) {
myObj = new MySingleTon();
}
return myObj;
}
public static void main(String a[]) {
MySingleTon st = MySingleTon.getInstance();
}
}
Я новичок в java. Пожалуйста помоги.
java
jdbc
mysql-connector
Атикуль Хуссейн
источник
источник
Ответы:
Кажется, библиотека подключения mysql не включена в проект. Решите проблему, следуя одному из предложенных решений:
Добавьте зависимость mysql-connector в файл проекта pom.xml:
<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.39</version> </dependency>
Вот вам все версии: https://mvnrepository.com/artifact/mysql/mysql-connector-java
Добавьте в проект библиотеку jar вручную.
Щелкните правой кнопкой мыши проект -> путь сборки -> настроить путь сборки
В
Libraries Tab
прессеAdd External Jar
иSelect
твоя баночка.Вы можете найти zip для mysql-коннектора здесь
При сборке проекта java выдает исключение, потому что файл (класс com.mysql.jdbc.Driver) из библиотеки подключения mysql не найден. Решением является добавление библиотеки в проект, и java найдет com.mysql.jdbc.Driver
источник
mysql-connector-java-8.0.15.jar
файл вapache-tomcat-9.0.16\lib
папку, как это предлагает @Asad.Если вы получили ошибку в вашей среде IDE (ошибка времени компиляции), вам необходимо добавить файл jar-файла mysql-connector в ваши библиотеки и добавить его в свою библиотеку проекта, на которую вы ссылаетесь.
Если вы получаете эту ошибку при запуске, то, вероятно, это потому, что вы не включили файл JAR mysql-connector в папку lib вашего веб-сервера.
Добавьте
mysql-connector-java-5.1.25-bin.jar
в свой путь к классам, а также в каталог lib вашего веб-сервера. Путь к библиотеке Tomcat приведен в качестве примераTomcat 6.0\lib
источник
Для проектов на основе Gradle вам нужна зависимость от MySQL Java Connector :
dependencies { compile 'mysql:mysql-connector-java:6.0.+' }
источник
runtime 'mysql:mysql-connector-java:6.0.+'
.Каждый написал ответ, но я до сих пор удивлен, что никто не ответил на него самым простым способом.
Народ отвечает, что включает файл jar. Но ошибка все равно возникнет.
Люди здесь столько раз ответили, что поместили этот файл jar в папку lib WEB-INF. Вроде нормально, но зачем делать это вручную? Есть простой способ. Проверьте следующие шаги:
Но это все равно не решит проблему, потому что добавление внешнего jar-файла через путь сборки помогает только при компиляции классов, и jar не будет развернут при запуске проекта. Для этого выполните этот шаг
источник
Вам нужно будет включить jar-файл драйвера для MySQL Connector Jar в свой путь к классам.
Если вы используете Eclipse: как добавить зависимые библиотеки в Eclipse
Если вы используете командную строку, укажите путь к jar-файлу драйвера с помощью параметра -cp файла java.
источник
-cp
дает Не удалось найти или загрузить ошибку основного класса. Мне нужно поместить основной класс в другую папку?проверьте наличие jar
(mysql-connector-java-bin)
в вашем пути к классам, загрузите отсюдаисточник
JDBC API в основном состоит из интерфейсов, которые работают независимо от любой базы данных. Для каждой базы данных, которая реализует JDBC API, требуется специальный драйвер базы данных.
Сначала загрузите jar-файл коннектора MySQL с www.mysql.com, затем:
Right Click the project -- > build path -- > configure build path
На вкладке библиотеки нажмите
Add External Jar
и выберите свою банку.источник
Для проектов на основе Maven вам нужна зависимость.
<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.38</version> </dependency>
источник
В проекте в папку Libraries -> щелкните правой кнопкой мыши -> Add Library -> Mysqlconnector 5.1
источник
Разъем драйвера отсутствует в пути сборки. Настройте путь сборки и укажите его на mysql-connector-java-5.1.25-bin.jar (проверьте версию, которую вы используете). В качестве альтернативы вы можете использовать maven: D
источник
Для IntelliJ Idea перейдите в структуру вашего проекта (Файл, Структура проекта) и добавьте файл коннектора mysql .jar в вашу глобальную библиотеку. Оказавшись там, щелкните его правой кнопкой мыши и выберите «Добавить в модули». Нажмите Применить / ОК, и все готово.
источник
Как ни банально это может показаться, в моем случае версия netbeans maven project 7.2.1 была другой. В проекте есть папка dependencies. Щелкните правой кнопкой мыши, а затем появится всплывающее окно, в котором вы можете искать пакеты. В области запроса введите
Он выведет совпадения (кажется, что это происходит с каким-то репозиторием). Дважды щелкните, затем установите.
источник
Это связано с тем, что папка WEB-INF не существует в подкаталоге с ошибкой. Вы либо скомпилируете приложение для использования папки WEB-INF в public_html, либо скопируете папку WEB-INF в подпапку, как в приведенной выше ошибке.
источник
Исключение также может возникнуть из-за того, что путь к классу не определен.
После нескольких часов исследований и буквально просмотра сотен страниц проблема заключалась в том, что путь к классам библиотеки не был определен.
Установите путь к классу на вашем компьютере с Windows следующим образом
источник
Я понял вашу проблему, добавьте эту зависимость в свой pom.xml, ваша проблема будет решена,
https://mvnrepository.com/artifact/mysql/mysql-connector-java/5.1.38
источник
Если вы используете tomcat, то вместе с каталогом проекта вы также должны скопировать файл jar коннектора базы данных в tomcat / lib. это сработало для меня
источник
Это необходимо использовать с 2020 г.
<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.18</version> </dependency>
источник
Я разрабатываю простое приложение JavaFX11 с базой данных SQLite в Eclipse IDE . Для создания отчета я добавил банки Jasper. Вдруг выдает ошибку "ЭТА" .
Он работал хорошо (ДО ЭТОГО ДОБАВЛЕНИЯ). Но внезапно!
Я не использую maven или другие менеджеры для этого простого приложения. Я добавляю баночки вручную.
Я создал «Пользовательскую библиотеку» и добавил свои банки из внешних папок.
ОБЛАСТЬ ВОЗНИКНОВЕНИЯ ПРОБЛЕМЫ: Моя «Пользовательская библиотека» помечена как системная. Я просто снял маркировку. Теперь это не системная библиотека. "ТЕПЕРЬ МОЙ ПРОЕКТ РАБОТАЕТ ХОРОШО".
ОТЛАДИТЬ СЕБЯ: Пробовал другие вещи: НА ЗАПУСКНОЙ КОНФИГУРАЦИИ: Попробуйте удалить библиотеку и добавить один за другим и посмотрите. - здесь вам нужно удалить все банки по одному, сейчас в конфигурации запуска нет select all and remove in eclipse. Таким образом, сообщения об ошибках меняются от одной банки к другой.
Надеюсь, это кому-то поможет.
источник