在传智播客下了一个web项目,但是报错,请各位大神指教(初学java)

log4j:WARN No appenders could be found for logger (com.mchange.v2.log.MLog).
log4j:WARN Please initialize the log4j system properly.
2015-9-23 14:16:25 org.apache.catalina.core.StandardWrapperValve invoke
严重: Servlet.service() for servlet CategoryServlet threw exception
java.lang.RuntimeException: java.lang.reflect.InvocationTargetException
at cn.itcast.servlet.BaseServlet.service(BaseServlet.java:60)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:723)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at cn.itcast.filter.EncodingFilter.doFilter(EncodingFilter.java:30)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:879)
at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:617)
at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1778)
at java.lang.Thread.run(Thread.java:619)
Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at cn.itcast.servlet.BaseServlet.service(BaseServlet.java:44)
... 16 more
Caused by: java.lang.RuntimeException: java.sql.SQLException: Connections could not be acquired from the underlying database!
at cn.itcast.goods.category.service.CategoryService.findAll(CategoryService.java:89)
at cn.itcast.goods.category.web.servlet.CategoryServlet.findAll(CategoryServlet.java:31)
... 21 more
Caused by: java.sql.SQLException: Connections could not be acquired from the underlying database!
at com.mchange.v2.sql.SqlUtils.toSQLException(SqlUtils.java:106)
at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutPooledConnection(C3P0PooledConnectionPool.java:615)
at com.mchange.v2.c3p0.impl.AbstractPoolBackedDataSource.getConnection(AbstractPoolBackedDataSource.java:128)
at cn.itcast.jdbc.JdbcUtils.getConnection(JdbcUtils.java:43)
at cn.itcast.jdbc.TxQueryRunner.query(TxQueryRunner.java:30)
at cn.itcast.goods.category.dao.CategoryDao.findAll(CategoryDao.java:69)
at cn.itcast.goods.category.service.CategoryService.findAll(CategoryService.java:87)
... 22 more
Caused by: com.mchange.v2.resourcepool.CannotAcquireResourceException: A ResourcePool could not acquire a resource from its primary factory or source.
at com.mchange.v2.resourcepool.BasicResourcePool.awaitAvailable(BasicResourcePool.java:1406)
at com.mchange.v2.resourcepool.BasicResourcePool.prelimCheckoutResource(BasicResourcePool.java:594)
at com.mchange.v2.resourcepool.BasicResourcePool.checkoutResource(BasicResourcePool.java:514)
at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutAndMarkConnectionInUse(C3P0PooledConnectionPool.java:681)
at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutPooledConnection(C3P0PooledConnectionPool.java:608)
... 27 more

个人觉得是数据库的原因,但不会改,多多指教

你数据库连接字符串改了么,应该是找不到连接的数据库了

数据库驱动程序打开了吗

加入buildpath了吗

把数据库给建好,然后修改webconfig里面的数据库配置信息,如果配置文件里面没有数据库配置信息就到DA里面修改数据库连接字符串

1,驱动配置有误:driver=com.mysql.jdbc.Driver
2,数据库连接地址有误:url=jdbc:mysql://localhost:3306/test?3useUnicode=true&characterEncoding=utf8
3,密码或帐号有误:
username=root
password=root
4,数据库未启动或无权访问
5,项目未引入对应的驱动jar包mysql-connector-java-5.1.6-bin.jar
6,mysql root没有远程访问的权限,需要增加权限,增加权限的步骤如下:
进入mysql数据库:
grant all privileges on . to 'root'@'%' identified by 'root' with grant option;
flush privileges;

c3p0配置文件
<?xml version="1.0" encoding="UTF-8" ?>



<![CDATA[
jdbc:mysql://localhost:3306/goods?useUnicode=true&characterEncoding=UTF8&useServerPrepStmts=true&prepStmtCacheSqlLimit=256&cachePrepStmts=true&prepStmtCacheSize=256&rewriteBatchedStatements=true
]]>

com.mysql.jdbc.Driver
root
123

    <property name="acquireIncrement">3</property>
    <property name="initialPoolSize">10</property>
    <property name="minPoolSize">2</property>
    <property name="maxPoolSize">10</property>
</default-config>

<?xml version="1.0" encoding="UTF-8" ?>



<![CDATA[
jdbc:mysql://localhost:3306/goods?useUnicode=true&characterEncoding=UTF8&useServerPrepStmts=true&prepStmtCacheSqlLimit=256&cachePrepStmts=true&prepStmtCacheSize=256&rewriteBatchedStatements=true
]]>

com.mysql.jdbc.Driver
root
123

    <property name="acquireIncrement">3</property>
    <property name="initialPoolSize">10</property>
    <property name="minPoolSize">2</property>
    <property name="maxPoolSize">10</property>
</default-config>

最后一个,你发的配置文件信息,保证都对么????