java - 如何为liferay定义'java.lang.ClassNotFoundException:com.mysql.cj.jdbc.Driver'
问题描述
请帮我在这里修复 ClassNotFoundException:java.lang.ClassNotFoundException: com.mysql.cj.jdbc.Driver
以下是它的一些细节:
我正在从 hibernate.cfg.xm 加载配置
SessionFactoryConnection.java
public class SessionFactoryConnection {
private static SessionFactory sessionFactory;
static {
Configuration configuration = new Configuration();
configuration = configuration.configure("hibernate.cfg.xml");
sessionFactory = configuration.buildSessionFactory();
}
private SessionFactoryConnection() {
}
public static SessionFactory getSessionFactory() {
return sessionFactory;
}
}
休眠.cfg.xm
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<property name="hibernate.connection.url">jdbc:mysql://localhost:3306/company?serverTimezone=UTC</property>
<property name="hibernate.connection.username">root</property>
<property name="hibernate.connection.password">1</property>
<property name="hibernate.connection.driver_class">com.mysql.cj.jdbc.Driver</property>
<property name="hbm2ddl.auto\">update</property>
<property `enter code here`name="hibernate.dialect">org.hibernate.dialect.MySQL5Dialect</property>
<mapping class="com.aimprosoft.model.Department"/>
<mapping resource="hbm/Department.hbm.xml"/>
<mapping class="com.aimprosoft.model.Employee"/>
<mapping resource="hbm/Employee.hbm.xml"/>
</session-factory>
</hibernate-configuration>
我在用着
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.15</version>
</dependency>
堆栈跟踪:
2019-04-09 12:20:52.063 ERROR [http-nio-8080-exec-1][DriverManagerConnectionProvider:88] JDBC Driver class not found: com.mysql.cj.jdbc.Driver
java.lang.ClassNotFoundException: com.mysql.cj.jdbc.Driver
at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1309)
at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1138)
........
at com.liferay.portal.kernel.portlet.PortletFilterUtil.doFilter(PortletFilterUtil.java:71)
at com.liferay.portal.kernel.servlet.PortletServlet.service(PortletServlet.java:108)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:741)
解决方案
请检查您是否在 hibernate.cfg.xml 文件中添加了此属性。
<property name = "hibernate.connection.driver_class">
com.mysql.jdbc.Driver
</property>
推荐阅读
- javascript - Spark AR 脚本无法将补丁与场景合并
- java - 如何在 JSch 中使用 sudo 然后命令
- typescript - 为什么找不到导出的类型?
- google-apps-script - Google Sheet + Apps 脚本在对话框中添加更多链接锚
- javascript - 查找距开始日期的每一步距离 X 天的最近日期
- extjs - Ext JS 7 TreeStore 未正确配置为使用代理进行加载
- kubernetes - 如何使用 Artifactory 直通能力处理对外部注册表的身份验证
- blob - 从 Chromium blob 中提取音频文件
- android - 使用 API 登录并在 Android 中保存令牌的最佳方式
- python - 为什么这是 for 循环在输出中复制数据 - Python?