Я столкнулся со следующей проблемой: мне нужно, чтобы мое веб-приложение работало с базой данных. Для этого я создал базу данных в MySQL. URL-адрес подключения для этой базы данных следующий: jdbc:mysql://localhost:3306/lab3?useUnicode=true&serverTimezone=UTC
. Кроме того, я создал источник данных в консоли управления WildFly:
Я проверил соединение, все в порядке. Но когда я запускаю проект, я получаю следующую ошибку:
java.sql.SQLException: No suitable driver found for jdbc:mysql://localhost:3306/lab3?useUnicode=true&serverTimezone=UTC
13:28:15,524 ERROR [stderr] (default task-1) at java.sql/java.sql.DriverManager.getConnection(DriverManager.java:702)
13:28:15,524 ERROR [stderr] (default task-1) at java.sql/java.sql.DriverManager.getConnection(DriverManager.java:228)
13:28:15,524 ERROR [stderr] (default task-1) at deployment.lab5_ear_exploded.ear.web.war//model.Model.<init>(Model.java:13)
13:28:15,525 ERROR [stderr] (default task-1) at deployment.lab5_ear_exploded.ear.web.war//controller.NewJSFManagedBean.<init>(NewJSFManagedBean.java:17)
13:28:15,525 ERROR [stderr] (default task-1) at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
13:28:15,525 ERROR [stderr] (default task-1) at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
13:28:15,526 ERROR [stderr] (default task-1) at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
13:28:15,526 ERROR [stderr] (default task-1) at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490)
13:28:15,526 ERROR [stderr] (default task-1) at java.base/java.lang.Class.newInstance(Class.java:584)
13:28:15,527 ERROR [stderr] (default task-1) at com.sun.jsf-impl@2.3.9.SP06//com.sun.faces.mgbean.BeanBuilder.newBeanInstance(BeanBuilder.java:162)
13:28:15,527 ERROR [stderr] (default task-1) at com.sun.jsf-impl@2.3.9.SP06//com.sun.faces.mgbean.BeanBuilder.build(BeanBuilder.java:76)
13:28:15,527 ERROR [stderr] (default task-1) at com.sun.jsf-impl@2.3.9.SP06//com.sun.faces.mgbean.BeanManager.createAndPush(BeanManager.java:387)
...
Вот как я пытаюсь подключиться к БД в коде:
@ApplicationScoped
public class Model {
private Statement statement;
public Model() {
try {
Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/lab3?useUnicode=true&serverTimezone=UTC", "root", "12345");
statement = connection.createStatement();
ResultSet resultSet = statement.executeQuery("SELECT * FROM customer");
if (resultSet.next()) {
System.out.println(resultSet.getString("address"));
}
} catch (SQLException e) {
e.printStackTrace();
}
}
}
Итак, возможно, кто-то знает в чем проблема? Я буду признателен за любую помощь. Заранее спасибо!
UPD
Вот что находится внутри моего артефакта развертывания: