Spring3, Hibernate3.6与Proxool连接池配置

SSH框架整合Proxool数据库连接池实战项目 SSH(Struts2 + Spring3 + Hibernate3)是Java Web开发中经典的MVC架构组合,曾广泛应用于企业级应用系统中。该框架组合通过职责清晰的三层架构(表现层、业务层、持久层)实现了模块化开发,提升了代码的可维护性和扩展性。Proxool作为轻量级数据库连接池,在SSH架构中承担着高效管理数据库连接资源的重要职责。相比传统的JDBC直接连接方式,Proxool通过连接复用、空闲连接回收、连接测试等机制显著提升了系统性能和稳定性。 阅读详情
鉴于Spring3.0不采用Servlet启动,改用listener,并且针对Mysql与DBCP连接池在linux服务器上超时连接的Bug,现简要地做Spring3与Proxool连接池的配置: 

1.Web.xml配置:
Java代码 

  1. <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns="http://java.sun.com/xml/ns/j2ee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.4"
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">

    <!--启动连接池-->
    <servlet>
    <servlet-name>ServletConfigurator</servlet-name>
    <servlet-class>
    org.logicalcobwebs.proxool.configuration.ServletConfigurator
    </servlet-class>
    <init-param>
    <param-name>xmlFile</param-name>
    <param-value>
    WEB-INF/proxool.xml
    </param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
    </servlet>

    <!--启动spring(spring3.1)-->
    <context-param>
    <param-name>contextConfigLocation</param-name>

    <param-value>
    WEB-INF/classes/com/dx/bags/config/applicationContext.xml
    </param-value>
    </context-param>

    <listener>
    <listener-class>
    org.springframework.web.context.ContextLoaderListener
    </listener-class>
    </listener>

    </web-app>

    proxool.xml<位于WEB-INF目录下,与web.xml同目录>
    [b]本文中由于有多数据库连接,于是,做了多个配置。alias分别为db12,db10,db5[/b]

    <?xml version="1.0" encoding="UTF-8"?>
    <proxool-config>
    <proxool>
    <alias>db12</alias>
    <driver-url>jdbc:mysql://192.168.1.12:3306/dbname1</driver-url>
    <driver-class>com.mysql.jdbc.Driver</driver-class>
    <driver-properties>
    <property name="user" value="root" />
    <property name="password" value="*******" />
    </driver-properties>
    <maximum-new-connections>10</maximum-new-connections>
    <prototype-count>5</prototype-count>
    <test-before-use>true</test-before-use> 
    <test-after-use>true</test-after-use> 
    <house-keeping-sleep-time>60000</house-keeping-sleep-time> 
    <house-keeping-test-sql>select current_date from dual</house-keeping-test-sql>
    <maximum-connection-count>10</maximum-connection-count>
    <minimum-connection-count>2</minimum-connection-count>
    </proxool>

    <proxool>
    <alias>db10</alias>
    <driver-url>jdbc:mysql://192.168.1.10:3306/dbname2</driver-url>
    <driver-class>com.mysql.jdbc.Driver</driver-class>
    <driver-properties>
    <property name="user" value="root" />
    <property name="password" value="******" />
    </driver-properties>
    <maximum-new-connections>10</maximum-new-connections>
    <prototype-count>5</prototype-count>
    <test-before-use>true</test-before-use> 
    <test-after-use>true</test-after-use> 
    <house-keeping-sleep-time>60000</house-keeping-sleep-time> 
    <house-keeping-test-sql>select current_date from dual</house-keeping-test-sql>
    <maximum-connection-count>10</maximum-connection-count>
    <minimum-connection-count>2</minimum-connection-count>
    </proxool>

    <proxool>
    <alias>db5</alias>
    <driver-url>jdbc:mysql://192.168.1.5:3306/dbname3</driver-url>
    <driver-class>com.mysql.jdbc.Driver</driver-class>
    <driver-properties>
    <property name="user" value="***" />
    <property name="password" value="****" />
    </driver-properties>
    <maximum-new-connections>10</maximum-new-connections>
    <prototype-count>5</prototype-count>
    <test-before-use>true</test-before-use> 
    <test-after-use>true</test-after-use> 
    <house-keeping-sleep-time>60000</house-keeping-sleep-time> 
    <house-keeping-test-sql>select current_date from dual</house-keeping-test-sql>
    <maximum-connection-count>10</maximum-connection-count>
    <minimum-connection-count>2</minimum-connection-count>
    </proxool>

    </proxool-config>


    Hibernate.cfg.xml配置:
    文件位于src目录下。

    <?xml version='1.0' encoding='UTF-8'?>
    <!DOCTYPE hibernate-configuration PUBLIC
    "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
    "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">

    <!-- Generated by MyEclipse Hibernate Tools. -->
    <hibernate-configuration>

    <session-factory>
    <property name="dialect">
    org.hibernate.dialect.MySQLDialect
    </property>
    <property name="myeclipse.connection.profile">mysql</property>
    <property name="connection.driver_class">
    com.mysql.jdbc.Driver
    </property>
    <property name="hibernate.proxool.existing_pool">true</property>
    <property name="hibernate.proxool.xml">proxool.xml</property>
    <property name="hibernate.proxool.pool_alias">db12</property>
    <property name="hibernate.proxool.pool_alias">db10</property>
    <property name="hibernate.proxool.pool_alias">db5</property>
    </session-factory>

    </hibernate-configuration>


    Spring 配置文件中对于datasource和sessionFactory配置片断:

    <bean id="dataSource"
    class="org.springframework.jdbc.datasource.DriverManagerDataSource">
    <property name="driverClassName">
    <value>org.logicalcobwebs.proxool.ProxoolDriver</value>
    </property>
    <property name="url">
    <value>proxool.db12</value>
    </property>
    </bean>

    <bean id="latestDataSource"
    class="org.springframework.jdbc.datasource.DriverManagerDataSource">
    <property name="driverClassName">
    <value>org.logicalcobwebs.proxool.ProxoolDriver</value>
    </property>
    <property name="url">
    <value>proxool.db5</value>
    </property>
    </bean>

    <bean id="adminDataSource"
    class="org.springframework.jdbc.datasource.DriverManagerDataSource">
    <property name="driverClassName">
    <value>org.logicalcobwebs.proxool.ProxoolDriver</value>
    </property>
    <property name="url">
    <value>proxool.db10</value>
    </property>
    </bean>


    <bean id="sessionFactory"
    class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
    <property name="dataSource" ref="dataSource"></property>
    <property name="mappingDirectoryLocations">
    <list>
    <value>classpath:com/dx/bags/hibernate/hbm</value>
    </list>
    </property>
    <property name="hibernateProperties">
    <props>
    <prop key="hibernate.dialect">
    org.hibernate.dialect.MySQLDialect
    </prop>
    <prop key="hibernate.proxool.pool_alias">
    db12
    </prop>
    <prop key="hibernate.show_sql">true</prop>
    <prop key="hibernate.format_sql">true</prop>
    <prop key="hibernate.proxool.xml">proxool.xml</prop>
    <prop key="hibernate.proxool.existing_pool">true</prop>
    </props>
    </property>
    </bean>


    <bean id="latestdbSessionFactory"
    class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
    <property name="dataSource" ref="latestDataSource"></property>

    <property name="mappingDirectoryLocations">
    <list>
    <value>classpath:com/dx/bags/hibernate/hbm/latest</value>
    </list>
    </property>

    <property name="hibernateProperties">
    <props>
    <prop key="hibernate.dialect">
    org.hibernate.dialect.MySQLDialect
    </prop>
    <prop key="hibernate.proxool.pool_alias">
    db5
    </prop>
    <prop key="hibernate.show_sql">true</prop>
    <prop key="hibernate.format_sql">true</prop>
    <prop key="hibernate.proxool.xml">proxool.xml</prop>
    <prop key="hibernate.proxool.existing_pool">true</prop>
    </props>
    </property>
    </bean>


    <bean id="adminSessionFactory"
    class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
    <property name="dataSource" ref="adminDataSource"></property>

    <property name="mappingDirectoryLocations">
    <list>
    <value>classpath:com/dx/bags/hibernate/hbm/admin</value>
    </list>
    </property>

    <property name="hibernateProperties">
    <props>
    <prop key="hibernate.dialect">
    org.hibernate.dialect.MySQLDialect
    </prop>
    <prop key="hibernate.proxool.pool_alias">
    db10
    </prop>
    <prop key="hibernate.show_sql">true</prop>
    <prop key="hibernate.format_sql">true</prop>
    <prop key="hibernate.proxool.xml">proxool.xml</prop>
    <prop key="hibernate.proxool.existing_pool">true</prop>
    </props>
    </property>
      </bean>
关于proxool配置文件中的各参数就不多做说明了。很简单易懂。连接池所要JAR:proxool-0.9.1.jar,proxool-cglib.jar。 
hibernate3+ proxool-0.9.1配置 和proxool-0.9.1.jar proxool-0.9.1.jar下载 hibernate3+ proxool-0.9.1配置说明 我刚配好,总结出来和大家分享下 立即下载

相关推荐

长鑫存储面试真题解析:DRAM工程师的工程直觉与产线思维

DRAM作为现代计算系统的底层存储基石,其性能与可靠性高度依赖半导体物理基础、工艺窗口控制和电路-系统协同设计。理解电荷保持机制、位线电容耦合效应、信号完整性约束等核心原理,是突破传统数字IC思维、构建真实产线语感的关键。在晶圆厂级工程实践中,TEM缺陷识别、BIST空间聚类分析、Retention失效定位等能力,直接关联良率爬坡与客户系统稳定性。本文聚焦长鑫存储一线技术面试中高频出现的工艺-电路-测试三维问题,融合‘电荷保持’‘信号完整性’等热词,还原DRAM工程师必备的系统性建模能力与闭环验证思维,覆盖

weixin_34293246的博客 335

Spring+Hibernate与proxool连接池的配置

前一篇文章讲过了如何在Hibernate中配置Proxool以连接oracle 11g,今天这篇来讲针对Spring+Hibernate如何对proxool连接池进行配置。 这次以MySQL为例。 第一步:首先去http://proxool.sourceforge.net/下载proxool.zip文,现在最新版本是proxool-0.9.1,解压缩后从中找到proxool-0.9.1.jar

心冶独孤 3376

智能汽车竞赛摄像头处理(4)——摄像头循迹思路讲解

智能汽车竞赛摄像头处理(4)对摄像头循迹思路进行讲解。

weixin_62261692的博客 7054

Hibernate3配置proxool连接池

Hibernate支持第三方的连接池,官方推荐的连接池是C3P0,Proxool,以及DBCP。在配置连接池时需要注意的有三点: 一、Apche的DBCP在Hibernate2中受支持,但在Hibernate3中已经不再推荐使用,官方的解释是这个连接池存在缺陷。如果你因为某 种原因需要在Hibernate3中使用DBCP,建议采用JNDI方式。 二、默认情况下(即没有配置连接池的情况下

waltertan1988的博客 1096

逆向实战:手把手教你用Frida绕过Flutter App的SSL Pinning(附脚本修改指南)

本文详细介绍了如何利用Frida工具绕过Flutter应用的SSL Pinning保护机制,包括静态分析定位关键函数、定制Frida Hook脚本以及流量捕获的完整解决方案。通过实战案例和脚本修改指南,帮助安全研究人员有效应对Flutter应用的安全挑战,特别适用于安卓平台的逆向工程和抓包需求。

weixin_28723171的博客 402

QT与Coin3D实现机器人的仿真

前言 Coin3D编程环境配置好后,开始下一步的机器人仿真任务。本文根据在研5轴机器人,完成三维模型生成与机器人的仿真。主要参考博主冯Jungle的博客,在此表示感谢。 ——2021.05.23 环境 Win10:VS2019、QT5.15.2、Coin3D、SolidWorks2016 机器人三维模型生成 目前广泛应用于因特网的VRML ( Virtual Reality Modeling Language,虚拟现实建模语言)为用户提供一种可参与的、并能对场景中对象主动做出反应的虚拟现实环境,现已成

焦露的博客 6906

spring与hibernate整合配置文件含连接池

spring的整个配置内容,对于项目整合最好是分开 <beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p" xmlns="http://www.springframework.org/schema/beans

wsnaxw的博客 3181

用AI科研绘图全新升级!借助谷歌新发布模型Nano Banana pro实测一键绘制机制图与技术路线图,直接告别文字乱码与低画质

之前有同仁反馈,用Nano Banana画科研插图的时候,要么文字部分容易乱码,要么抓不住关键内容,画出来的效果反复修改后,还是达不到理想的效果。终于在Gemini 3发布没几天,万众期待的大香蕉模型也成功升级到了Pro版本,官方名称叫“Gemini 3 Pro Image”,实际上也就是我们说的Nano Banana 2。这次的Nano Banana Pro模型,不仅可以直出4K高清图,还能自定义比例,推理能力和中文文字的稳定性也得到了提升。

智能AI让学术科研更容易 1887

Spring2.0+Hibernate3.6配置proxool数据连接池

&lt;!--proxool包 proxool-0.9.1.jar,proxool-cglib.jar--&gt; &lt;bean id="dataSource" class="org.logicalcobwebs.proxool.ProxoolDataSource"&gt; &lt;property name="driver" value="com.mysql.jd.

gui_198641的专栏 152

Dify 第 4 篇 Dify 示例:数据库执行Agent

本文介绍了如何在Dify平台创建一个能够执行SQL查询的数据库Agent。通过安装并配置"通义千问"和"数据库"两个插件,实现自然语言到SQL语句的转换和执行。关键步骤包括:1)安装插件并配置API Key;2)设置默认数据库连接(建议使用只读账号);3)准备测试数据表结构。该Agent支持通过工具调用查询表结构、转换自然语言为SQL、执行查询并返回结果,同时提供了CSV查询和HTTP API接口功能。文中还提供了MySQL测试数据表的创建脚本和示例数据。

甘蓝的专栏 1156

LangGraph实战训练营-打造 WhatsApp 全自动消息收发AI智能助手

本文系统梳理了项目架构(WhatsApp Bridge + Talon Host + LangGraph Agent Harness三层设计)、完整环境搭建流程(Docker/本地双模式部署)、核心原理(WhatsApp桥接机制、NVIDIA Parakeet语音转录管线、Cron定时调度、Agent图状状态机),并提供了基础对话、文件操作、语音处理、定时任务等六大实战示例。同时涵盖安全策略、性能优化、数据备份等生产级运维实践,以及十个高频问题的排查方案。

program哲学 190

新版SSH+DWR配置(Struts2.1.8+Spring3.0+Hibernate3.3.2+DWR2.0.6)

项目所需要用的包(包含常用包):  antlr-2.7.6.jar  aopalliance-1.0.jar  asm-all-3.2.jar  cglib-2.2.jar  commons-beanutils-1.8.2.jar  commons-codec-1.4.jar  commons-collections-3.2.1.jar  commons-digester-2.0.

荣之联--史丙利(Eric Shi) 7776

面向口齿不清者的语音识别新突破:用大模型拯救“听不懂”的声音

面向构音障碍患者的语音识别新突破:大语言模型显著提升识别准确率 国际语音研究团队在Interspeech 2025发表最新成果,通过将大语言模型(LLM)融入语音识别系统,显著改善了对构音障碍(dysarthria)患者语音的识别效果。研究表明: 传统语音识别(如CTC模型)对构音障碍语音的词错误率(WER)高达50-54%,Whisper模型降至38-40%。 引入LLM解码器后,BART模型将WER降至30-32%,而Whisper-Vicuna组合更将WER降低至21-26%。 关键优势:LLM能有效

帅小柏的博客 270

spring + struts + hibernate 数据源的几种配置方法(原创)

spring + struts + hibernate 数据源的几种配置方法 环境:JDK 1.6 + tomcat 6.0 + spring2.5 + struts2.18 + hibernate3.x   1. c3p0数据连接池 (需要将mysql-connector-java-5.0.8-bin.jar文件copy到tomcat 的lib下) &lt;?xml version="1....

微尘的世界 238

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

Spring+Hibernate+Proxool两个数据库连接池配置

1,配置两个proxool.xml文件,proxool.first.xml配置 Proxool.First Proxool.Second 2,配置两个hibernate.xml文件,hibernate.first.xml配置 Proxool.First org.hibernate.connection.ProxoolConnectio

苏湘的专栏 3643

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

proxool连接池的实现

作为开源的连接池Proxool 有以下优点。 透明性   可以明的添加接连池而不影响你原来的项目的JDBC代码; 开放性 你可以方便的与其它的开源产品进行整合。如hibernate  中自带的这个Proxool 标准性 它是在J2SE下开出来的。你可以放心的开发 易用性  非常容易 的进行配置。 proxool是一个非常强大的连接池工具包,我觉得相比dbcp、c3p0这两个连接池包都要好用,我用l

天涯 书塾 1615

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

Spring+Hibernate 配置和使用c3p0和proxool连接池

其实原理都是一样 就是用一个继承了实现javax.sql.DataSource的DataSource类在Spring中用bean来组装,管理 来配置其属性 提供给sessionFactory来组装API上可能属性没有写出来 但是可以看到方法 要想真正了解 还是要看源代码中的详细属性比如在cp30中这个具体的DataSource是com.mchange.v2.c3p0.ComboPo

Vincent的造轮子经验 4718

struts2+spring3+hibernate3正确的配置proxool

    整整一天都在折腾S2SH+proxool,终于配置成功了,都快崩溃了!哈哈...不过始终相信:皇天不负有心人。但是还是要说一下,今天费了这么大劲这么长时间没有配置成功的一个原因就是网上一些人写得文章极其的不负责任,这句话说的不太准确,但是他们写的肯定也有欠缺的地方,最起码版本号应该注明吧,版本号是框架中最大的一个“陷阱”,虽然我不确定是不是由于版本号导致我配置不成功,但是做为人所用的教程,

王康的技术博客 2125

Spring+Hibernate+Proxool配置

在hibernate3.0中,已经不再支持dbcp了,hibernate的作者在hibernate.org中, 明确指出在实践中发现dbcp有BUG,在某些种情会产生很多空连接不能释放, 所以Spring+Hibernate3+Proxool是目前较为稳定的架构: 三者的配置文件可以分开,也可以写在一起: 前两者的配置文件就不做描述了, 主要介绍一下Proxool &lt;?xml ve...

Ken's world 196

proxool配置连接池

http://log-cd.iteye.com/blog/199482 1、Hiebernate配置文件中引用proxool配置文件: <hibernate-configuration> <session-factory> <property name="proxool.pool_alias">DBPool</pr...

asx54321的博客 185

Hibernate4+Spring3 配置数据源

Hibernate4 + Spring3 整合,配置sessionFactory时,需要注入dataSource,否则报错。sessionFactory配置如下: classpath:config/hibernate.cfg.xml dataSource" ref="dataSource" /> com.ys.entity 我测试的几种配置

姚双双 廊坊师范学院七期信息技术提高班 6795

SSH框架中配置Hibernate使用proxool连接池

一、导入proxool.jar包 案例用的是proxool-0.8.3.jar,一般通过MyEclipse配置的SSH都会包含这个jar,如果没有,就去网上搜下下载导入就好了。 二、新建Proxool配置文件 <?xml version="1.0" encoding="UTF-8"?> <!-- the proxool configuration can be emb...

weixin_30352645的博客 212

Proxool实现数据库连接池的具体配置方法

首先从 http://proxool.sourceforge.net/ 下载proxool-0.9.1.zip 解压后,把proxool-0.9.1.jar,proxool-cglib.jar放到工程的lib文件夹里面。proxool是一个非常强大的连接池工具包,我觉得相比dbcp、c3p0这两个连接池包都要好用,这三个连接池的从 性能上排名如下:proxool&gt;c3p0&gt;dbc...

sdafasdfsadfsadf的博客 483
上一篇: Spring/Hibernate/Proxool集成
下一篇: 在Spring与Hibernate集成使用
「已注销」
博客等级 码龄16年 90粉丝 19原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值