我正在一个基于struts framework 2.3.3和tomcat 7.0.26的项目中使用hibernate 4.1.2。我还使用mysql(和postgres)进行测试。这是我使用MySQL的hibernate.cfg.xml:
<session-factory>
<property name="c3p0.min_size">5</property>
<property name="c3p0.max_size">20</property>
<property name="c3p0.timeout">300</property>
<property name="c3p0.max_statements">50</property>
<property name="c3p0.idle_text_period">3000</property>
<property name="show_sql">true</property>
<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="connection.url">jdbc:mysql://localhost/struts2</property>
<property name="connection.username">semperEst</property>
<property name="connection.password">*******</property>
<property name="dialect">org.hibernate.dialect.MySQL5InnoDBDialect</property>
<!-- Enable Hibernate's automatic session context management -->
<property name="current_session_context_class">thread</property>
<!-- Disable the second-level cache -->
<property name="cache.provider_class">org.hibernate.cache.NoCacheProvider</property>
<!-- Drop and re-create the database schema on startup -->
<property name="hbm2ddl.auto">create-drop</property>
<mapping class="firstname.secondname.lesson2.User"/>
</session-factory>
我的WEB-INF/LIB包含:
antlr-2.7.7.jar
asm-3.3.jar
asm-commons-3.3.jar
asm-tree-3.3.jar
commons-fileupload-1.2.2.jar
commons-io-2.0.1.jar
commons-lang-2.4.jar
commons-lang3-3.1.jar
dom4j-1.6.1.jar
freemarker-2.3.19.jar
hibernate-commons-annotations-4.0.1.Final.jar
hibernate-core-4.1.2.Final.jar
hibernate-jpa-2.0-api-1.0.1.Final.jar
javassist-3.11.0.GA.jar
javassist-3.15.0-GA.jar
jboss-logging-3.1.0.GA.jar
jboss-transaction-api_1.1_spec-1.0.0.Final.jar
log4j-1.2.16.jar
mysql-connector-java-5.1.20-bin.jar
ognl-3.0.5.jar
postgresql-9.1-902.jdbc4.jar
slf4j-api-1.6.4-sources.jar
slf4j-log4j12-1.6.4.jar
struts2-core-2.3.3.jar
xwork-core-2.3.3.jar
*我已经在$CATALINA_HOME/lib*中添加了mysql-connector-java-5.1.20-bin.jar
at java.sql.DriverManager.getConnection(DriverManager.java:190)
at org.hibernate.service.jdbc.connections.internal.
DriverManagerConnectionProviderImpl.
getConnection(DriverManagerConnectionProviderImpl.java:192)
at org.hibernate.internal.
AbstractSessionImpl$NonContextualJdbcConnectionAccess.
obtainConnection(AbstractSessionImpl.java:278)
at org.hibernate.engine.jdbc.internal.LogicalConnectionImpl.
obtainConnection(LogicalConnectionImpl.java:297)
at org.hibernate.engine.jdbc.internal.LogicalConnectionImpl.
getConnection(LogicalConnectionImpl.java:169)
at org.hibernate.engine.transaction.internal.
jdbc.JdbcTransaction.doBegin(JdbcTransaction.java:67)
at org.hibernate.engine.transaction.spi.
AbstractTransactionImpl.begin(AbstractTransactionImpl.java:160)
at org.hibernate.internal.SessionImpl.
beginTransaction(SessionImpl.java:1363)
at firstname.lastname.lesson2.
PortfolioService.usernameExists(PortfolioService.java:122)
at firstname.lastname.lesson2.CreateUser.validate(CreateUser.java:255)
at com.opensymphony.xwork2.validator.ValidationInterceptor.
doBeforeInvocation(ValidationInterceptor.java:251)
at com.opensymphony.xwork2.validator.ValidationInterceptor.
doIntercept(ValidationInterceptor.java:263)
at org.apache.struts2.interceptor.validation.
AnnotationValidationInterceptor.
doIntercept(AnnotationValidationInterceptor.java:68)
at
.
.
.(struts activation frame...)
.
at org.apache.catalina.core.ApplicationFilterChain.
internalDoFilter(ApplicationFilterChain.java:243)
at org.apache.catalina.core.ApplicationFilterChain.
doFilter(ApplicationFilterChain.java:210)
at org.apache.catalina.core.StandardWrapperValve.
invoke(StandardWrapperValve.java:224)
at org.apache.catalina.core.StandardContextValve.
invoke(StandardContextValve.java:169)
at org.apache.catalina.authenticator.AuthenticatorBase.
invoke(AuthenticatorBase.java:472)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:927)
at org.apache.catalina.core.StandardEngineValve.
invoke(StandardEngineValve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
at org.apache.coyote.http11.AbstractHttp11Processor.
process(AbstractHttp11Processor.java:987)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.
process(AbstractProtocol.java:579)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.
run(JIoEndpoint.java:307)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:722)
提前致谢
当这种事情发生时(“找不到合适的驱动程序”),通常的问题是您的JDBC库不是在错误的地方(取决于您的需求),就是在太多的地方(比如在WEB-INF/lib中,以及在容器的lib/目录中)。
哪个组件实际上在创建您的JDBC连接池?如果是Tomcat(情况似乎并非如此),那么您的mysql.jar需要在Tomcat的lib/目录中(特别是不在WebApp的web-inf/lib目录中)。如果您在webapp中进行所有操作,那么您可能希望mysql.jar位于webapp中的web-inf/lib中,而/而不是/位于Tomcat的lib目录中。
如果您有多个WebApp,并且其中一些正在使用Tomcat的DataSource配置,那么最好将mysql.jar放入Tomcat的lib/目录中,并将其从所有webapps的WEB-INF/lib目录中删除。
问题内容: 我希望有一个人可以帮助我。我正在研究一个与SQLite数据库连接的简单应用程序。以下是我的连接代码: 这只是一个在数据库中加载用户名和密码的窗口。我的问题是,当我单击按钮时,出现以下异常: (我找到了一个有关如何使用Java连接到SQLite数据库的示例,我发现该示例运行良好) 这个程序我正在窗口构建器(日食)中做。我使用的示例中使用的驱动程序相同。我不知道我是否必须使用其他驱动程序。
问题内容: 这个问题已经在这里有了答案 : 臭名昭著的java.sql.SQLException:未找到合适的驱动程序 (13个答案) 4年前关闭。 我有一个Java类,该类通过在Tomcat上运行的JSP中使用的JDBC通过JDBC访问MySQL数据库,并且遇到“未找到驱动程序异常”的问题。 我有一个方法: 这会在“ 这是我从catalina.out的打印输出”上引发错误: 唯一重要的错误是一个
我正在开发一个android应用程序,它从SQL Server导入lat/long以在地图中显示为标记。我已经输入了jtds-1.21。jar到lib的路径,但我得到了错误 这是我的代码图。Java语言
我总是在数据库中发现“没有合适的驱动程序”,我无法确定connect类出了什么问题?有人帮忙吗?我已经把5个罐子都装进去了。我想连接到Microsoft Access数据库。
连接到sqlite数据库时遇到问题。在我的Windows PC上,一切正常,但如果我想在Linux(Raspberry PI)上运行我的程序,我会得到错误,如标题所示。 这是我在Windows上的连接: 在为Linux导出程序之前,我更改了连接字符串: 如果没有数据库,我使用以下代码创建它: 这是我的构建路径 这是我的项目 谁能帮帮我吗?THX
下面是我的代码: 导入com.opensymphony.xwork2.ActionSupport; 导入java.sql.DriverManager;导入java.sql.ResultSet; 附注。我使用Intellij Idea 14.1.4 有人知道原因吗?