`
robert_liu
  • 浏览: 131569 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Proxool连接池在reload web容器时出现HouseKeeper的空指针异常

    博客分类:
  • Java
阅读更多

使用Proxool连接池, 当在关闭或重启Tomcat容器时,出现
   Exception in Thread "HouseKeeper" java.lang.NullPointerException
空指针异常错误。

 

原因是:

This is because Proxool is not being shutdown properly. If the JVM stops then Proxool recognises that and shuts down gracefully, but if you redeploy Proxool into some environments (for example, a servlet container) then Proxool needs to be explicitly told so by calling ProxoolFacade.shutdown() . If you have a servlet container then you could put it in the servlet's destroy() method. Alternatively, use the ServletConfigurator to both configure and shutdown Proxool

 

解决方法:

 

1. 在Servlet的destroy()方法中显式地proxool关闭连接池:ProxoolFacade.shutdown();

 

public class ProxoolServlet extends HttpServlet { 
    public void init() throws ServletException { 
    } 

    public void destroy() { 
        ProxoolFacade.shutdown(); 
    } 

    public void doPost(HttpServletRequest request, HttpServletResponse response) throws 
        ServletException, IOException { 
        doGet(request,response); 
    } 
    public void doGet(HttpServletRequest request, HttpServletResponse response) throws 
        ServletException, IOException { 
        
    } 

} 

 

2. 将该Servlet配置到web.xml中:

 

 
 <servlet> 
    <servlet-name>proxoolServlet </servlet-name> 
    <servlet-class>xxx.ProxoolServlet</servlet-class> 
    <load-on-startup>1</load-on-startup> 
  </servlet> 
 

 

 

分享到:
评论

相关推荐

    proxool连接池用户名密码加密

    在IT行业中,数据库连接池是优化数据库访问性能和资源管理的重要工具。Proxool是一个开源的、轻量级的Java数据库连接池实现,它提供了一种高效、灵活的方式来管理数据库连接。在某些场景下,为了保护敏感信息,如...

    proxool连接池使用详细说明

    应用程序在需要数据库连接时,从Proxool连接池中请求一个连接。使用完毕后,必须将连接归还给连接池,以便其他线程可以复用。这个过程是透明的,通常通过JDBC的`getConnection()`和`close()`方法实现。 5. **连接...

    proxool连接池配置文件

    项目实用的proxool连接池配置文件,每个标签都有注释,可以直接拿来使用

    在Hibernate中配置Proxool连接池

    在Java开发中,使用Hibernate作为持久层框架时,为了提高数据库操作的性能和资源利用率,通常会引入连接池技术。Proxool是Apache的一个开源项目,它提供了一个轻量级的数据库连接池实现。本篇将详细介绍如何在...

    proxool连接池配置详解

    - **配置细节**:通过配置JMX代理ID和其他相关信息,可以在运行时监控和管理Proxool连接池的状态。 - **示例配置**: ```properties jmx=jmx-agent-id jmx-agent-id=my-jmx-agent jndi-name=java:jboss/data...

    Proxool连接池使用方法

    Proxool连接池使用方法 首先, 你要把下载 proxool 的 lib 下面所有的 jar 文件, 放到 WEB-INF/lib 下面, 另外, 把你的 jdbc driver 也放到相同的 lib,

    proxool连接池配置

    允许最大连接数,超过了这个连接,再有请求时,就排在队列中等候,最大的 等待请求数由maximum-new-connections决定 --&gt; &lt;maximum-connection-count&gt;100&lt;/maximum-connection-count&gt; - &lt;!-- 最小连接数 --&gt; ...

    proxool连接池jar包

    3. 初始化连接池:在应用启动时加载配置,并初始化Proxool连接池。 4. 获取和释放连接:在需要访问数据库时,从连接池中获取连接;完成操作后,记得释放回连接池,而不是直接关闭。 5. 监控和诊断:定期检查Proxool...

    Spring+Hibernate+Proxool连接池

    标题 "Spring+Hibernate+Proxool连接池" 涉及到的是在Java Web开发中,如何使用Spring框架集成Hibernate ORM框架,并结合Proxool作为数据库连接池的技术实践。这通常是为了提高应用性能,有效管理和复用数据库连接,...

    ssh2简单案例,注解+proxool连接池+sf4j记录日志

    在Java应用程序中,开发者可以通过配置文件设定连接池的参数,如最大连接数、超时时间等,并在需要时从连接池中获取连接。 SF4J(Simple Logging Facade for Java)是一个轻量级的日志框架,为其他日志API提供了一...

    proxool连接池所涉及的jar包文件

    在本压缩包中,包含的是与Proxool连接池相关的MySQL驱动jar包,这将有助于在Java应用程序中建立与MySQL数据库的连接。 首先,我们来深入理解一下Proxool连接池。Proxool的核心功能是创建一个池化的数据库连接集合,...

    proxool连接池

    然而,Proxool 的简单性和易于配置使其在小型项目或学习数据库连接池概念时仍然是一种好的选择。 ### 总结: Proxool 是一款简洁的数据库连接池,它的主要优势在于易于配置和使用,同时提供了监控和诊断功能。虽然...

    Proxool连接池jar包

    Proxool连接池是数据库连接管理的一个开源工具,它提供了一种高效且灵活的方式来管理和复用数据库连接,以提升应用程序的性能和响应速度。在Java应用程序中,尤其是在高并发环境下,数据库连接池扮演着至关重要的...

    Hibernate Proxool连接池配置总结及常遇问题

    本文将深入探讨Hibernate与Proxool连接池的配置,以及在配置过程中可能遇到的问题。 **1. Proxool简介** Proxool是一个开源的数据库连接池实现,它提供了动态、可扩展的连接池管理服务。通过Proxool,开发者可以...

    ssh小框架(proxool连接池)

    在大型项目中,为了提高数据库访问效率,通常会引入连接池技术,如Proxool,它是Apache的一个开源项目,专门用于管理数据库连接。 **Spring框架**:Spring是Java企业级应用的核心框架,它提供了一个配置式、依赖...

    Proxool连接池实例.zip

    "G2"可能是一个辅助类或者测试用例,可能包含了数据库操作的逻辑,比如执行SQL查询、事务处理等,以便展示在使用Proxool连接池时的正确操作方式。而"H"可能是另一个相关文件,可能是配置文件或者额外的代码部分,...

    基于ssh的proxool连接池配置

    8. 关键配置项`hibernate.connection.release_mode`设置为`after_statement`,这是因为Proxool在释放连接时可能较慢,所以选择在每个数据库操作后释放连接,以优化资源使用。 `proxool.xml`是Proxool的配置文件,...

    Proxool连接池配置

    接下来,在`WEB-INF/web.xml`中添加对Proxool Admin Servlet的配置,用于管理连接池。示例代码如下: ```xml &lt;servlet-name&gt;Admin &lt;servlet-class&gt;org.logicalcobwebs.proxool.admin.servlet.AdminServlet ...

    Spring2.5配置proxool连接池

    Spring2.5配置proxool连接池

Global site tag (gtag.js) - Google Analytics