56,687
社区成员
发帖
与我相关
我的任务
分享
<Resource name="jdbc/DBpool"
auth="Container"
type="javax.sql.DataSource"
username="root"
password="root"
maxIdle="50"
maxActive="500"
maxWait="5000"
driverClassName="com.mysql.jdbc.Driver"
removeAbandoned="true" //这里已经写了 为什么空闲的连接不会自己断开
removeAbandonedTimeout="20"
url="jdbc:mysql://localhost:3306/oasystem?useUnicode=true&characterEncoding=UTF-8"/>
@SuppressWarnings("unchecked")
public ArrayList<FileCategory> getFileCategoryByName(String branch)
{
ActionContext.getContext().getSession().put("branchAddress", branch);
//当前浏览的地址
ArrayList<FileCategory> fclist=new ArrayList<FileCategory>();
try {
state = conn.createStatement();
String sql ="select * from filecategory where branch='"+branch+"'";
rs = state.executeQuery(sql);
while(rs.next())
{
FileCategory fc = new FileCategory();
fc.setId(rs.getInt("id"));
fc.setFilename(rs.getString("filename"));
fc.setCreatemenid(rs.getString("createmenid"));
fc.setCreatetime(rs.getString("createtime"));
fc.setShopname(rs.getString("shopname"));
fc.setBranch(rs.getString("branch"));
fclist.add(fc);
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
state.close();
conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
com.mysql.jdbc.exceptions.MySQLNonTransientConnectionException: Data source rejected establishment of connection, message from server: "Too many connections"
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:921)
at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:997)
at com.mysql.jdbc.Connection.createNewIO(Connection.java:2670)
at com.mysql.jdbc.Connection.<init>(Connection.java:1531)
at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:266)
at org.apache.tomcat.dbcp.dbcp.DriverConnectionFactory.createConnection(DriverConnectionFactory.java:38)
at org.apache.tomcat.dbcp.dbcp.PoolableConnectionFactory.makeObject(PoolableConnectionFactory.java:294)
at org.apache.tomcat.dbcp.pool.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:974)
at org.apache.tomcat.dbcp.dbcp.AbandonedObjectPool.borrowObject(AbandonedObjectPool.java:84)
at org.apache.tomcat.dbcp.dbcp.PoolingDataSource.getConnection(PoolingDataSource.java:96)
at org.apache.tomcat.dbcp.dbcp.BasicDataSource.getConnection(BasicDataSource.java:880)
at com.xinhe.db.DBpool.getConnection(DBpool.java:23)
at com.xinhe.db.SubFileCategoryDAO.<init>(SubFileCategoryDAO.java:28)
at com.xinhe.action.FileCategoryAction.<init>(FileCategoryAction.java:38)
at sun.reflect.GeneratedConstructorAccessor25.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at java.lang.Class.newInstance0(Class.java:355)
at java.lang.Class.newInstance(Class.java:308)
at com.opensymphony.xwork2.ObjectFactory.buildBean(ObjectFactory.java:123)
at com.opensymphony.xwork2.ObjectFactory.buildBean(ObjectFactory.java:154)
at com.opensymphony.xwork2.ObjectFactory.buildBean(ObjectFactory.java:143)
at com.opensymphony.xwork2.ObjectFactory.buildAction(ObjectFactory.java:113)
at com.opensymphony.xwork2.DefaultActionInvocation.createAction(DefaultActionInvocation.java:275)
at com.opensymphony.xwork2.DefaultActionInvocation.init(DefaultActionInvocation.java:365)
at com.opensymphony.xwork2.DefaultActionInvocation.access$000(DefaultActionInvocation.java:38)
at com.opensymphony.xwork2.DefaultActionInvocation$1.doProfiling(DefaultActionInvocation.java:83)
at com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:455)
at com.opensymphony.xwork2.DefaultActionInvocation.<init>(DefaultActionInvocation.java:74)
at com.opensymphony.xwork2.DefaultActionProxy.prepare(DefaultActionProxy.java:189)
at org.apache.struts2.impl.StrutsActionProxyFactory.createActionProxy(StrutsActionProxyFactory.java:41)
at org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:494)
at org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:422)
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:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:619)
@SuppressWarnings("unchecked")
public ArrayList<FileCategory> getFileCategoryByName(String branch) {
ActionContext.getContext().getSession().put("branchAddress", branch);
// 当前浏览的地址
ArrayList<FileCategory> fclist = new ArrayList<FileCategory>();
try {
System.out.println("state :" +state);
if(state==null)
state = conn.createStatement();
String sql = "select * from filecategory where branch='" + branch
+ "'";
rs = state.executeQuery(sql);
while (rs.next()) {
FileCategory fc = new FileCategory();
fc.setId(rs.getInt("id"));
fc.setFilename(rs.getString("filename"));
fc.setCreatemenid(rs.getString("createmenid"));
fc.setCreatetime(rs.getString("createtime"));
fc.setShopname(rs.getString("shopname"));
fc.setBranch(rs.getString("branch"));
fclist.add(fc);
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
try {
System.out.println(" before rs : "+rs+" || state : "+state+ " || conn: "+conn);
rs.close();
state.close();
conn.close();
System.out.println(" closeafter rs : "+rs+" || state : "+state+ " || conn: "+conn);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
return fclist;
}
before rs : org.apache.tomcat.dbcp.dbcp.DelegatingResultSet@1f8bd0d || state : com.mysql.jdbc.Statement@33788d || conn: jdbc:mysql://localhost:3306/oasystem?useUnicode=true&characterEncoding=UTF-8, UserName=root@localhost, MySQL-AB JDBC Driver
closeafter rs : org.apache.tomcat.dbcp.dbcp.DelegatingResultSet@1f8bd0d || state : com.mysql.jdbc.Statement@33788d || conn: null