`

Proxool建立数据库连接池(源码)

阅读更多

          最近搞数据库连接池,着实很让我郁闷,首先是网上很少有这方面权威的中文资料,官方网址上估计有,但是我英语不行,看不懂。所以一边请教身边的人,

 

一边摸索,最后还是在别人的指导下,搞出来了,但是让我郁闷的是这个项目在别人的机子上可以运行,但是在我的机子上,改数据库表名,sql文件,和一些配置

 

后,就是没法在我机子上实现,明明没问题的语句,但就是执行出错。

 

不过也巧了,有些在别人机子不能正常运行的项目,却在我的机子上可以运行,估计还是环境问题,可我现在也不具备解决这种问题的能力,所以只有不断的重试,

 

不断的郁闷,我也总不能因为环境不同,而把MyEclipse,mysql,jdk换成低版本的吧。所以这些问题还是没解决。

 

因为这些原因,有还几个小项目的功能没实现,心里也堵得慌。看来搞Java真能锻炼忍耐力啊。

 

发泄完了,切入正题:

 

Proxool是一个Java SQL Driver驱动程序,提供了对你选择的其它类型的驱动程序的连接池封装。可以非常简单的移植到现存的代码中。完全可配置。快速,成熟,

 

健壮。可以透明地为你现存的JDBC驱动程序增加连接池功能。

 

环境:MyEclipse连接mysql

 

实现功能:网络留言板

 

实现这个东西需要两个jar包,这里提供下载,分别为proxool-0.9.0RC3.jar,commons-logging.jar。

 

还需要一个proxool.xml的配置文件代码:

 

Code
<!----><?xml version="1.0" encoding="utf-8"?>
<!-- the proxool configuration can be embedded within your own application's.
Anything outside the "proxool" tag is ignored. -->
<something-else-entirely>
<proxool>
<alias>mysql</alias>
<driver-url>jdbc:mysql://localhost:3306/mysql</driver-url>
<driver-class>com.mysql.jdbc.Driver</driver-class>
<driver-properties>
<property name="user" value="root"/>
<property name="password" value="840815"/>
</driver-properties>
<maximum-connection-count>100</maximum-connection-count>
<house-keeping-test-sql>select CURRENT_DATE</house-keeping-test-sql>
</proxool>
</something-else-entirely>

 

还需要在web.xml文件中调用,代码:

 

Code
<!----><?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" 
    xmlns
="http://java.sun.com/xml/ns/javaee" 
    xmlns:xsi
="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation
="http://java.sun.com/xml/ns/javaee 
    http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
  <servlet>
    
<servlet-name>AddMessageServlet</servlet-name>
    
<servlet-class>webbook.guestbook.AddMessageServlet</servlet-class>
  
</servlet>
  
<servlet>
    
<servlet-name>GetMessagesServlet</servlet-name>
    
<servlet-class>webbook.guestbook.GetMessagesServlet</servlet-class>
  
</servlet>
 
   
<servlet-mapping>
    
<servlet-name>AddMessageServlet</servlet-name>
    
<url-pattern>/servlet/addMessage</url-pattern>
  
</servlet-mapping>
  
<servlet-mapping>
    
<servlet-name>GetMessagesServlet</servlet-name>
    
<url-pattern>/servlet/getMessages</url-pattern>
  
</servlet-mapping>
  
    
<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>
  
<servlet>
    
<servlet-name>Admin</servlet-name>
    
<servlet-class>org.logicalcobwebs.proxool.admin.servlet.AdminServlet</servlet-class>
  
</servlet>
    
<servlet-mapping>
    
<servlet-name>Admin</servlet-name>
    
<url-pattern>/admin</url-pattern>
  
</servlet-mapping>
  
<welcome-file-list>
  
<welcome-file>addMessage.htm</welcome-file>
  
</welcome-file-list>


</web-app>

 

还需要一个类文件,Access.java,代码:

 

Code
<!---->package webbook.guestbook;

import java.sql.*;
import java.text.SimpleDateFormat;

import javax.servlet.http.HttpServletRequest;

import webbook.util.StringUtil;

public class Access {
    
private Connection con = null;

    
private Statement sta = null;

    
private ResultSet rs = null;

    
private PreparedStatement pstmt = null;
    
private HttpServletRequest request = null;
    
private int result = 0;

    
/**//*    private String driverName="org.gjt.mm.mysql.Driver";

     private String url="jdbc:mysql://10.187.202.153:3306/hicctsc";

     private String userName="root";

     private String userPassword="hicc";
     
*/


    
public void loadMyDriver() {

    }


    
public void setMyConnection() {
        
try {
            
//  this.con=DriverManager.getConnection(url,userName,userPassword);
            this.con = DriverManager.getConnection("proxool.mysql");
        }
 catch (SQLException e1) {
            System.out.println(e1.getMessage());
        }


    }


    
public void createMyStatement() {
        
try {
            
this.sta = this.con
                    .createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,
                            ResultSet.CONCUR_READ_ONLY);
            
//            ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY
        }
 catch (SQLException e2) {
            System.out.println(e2.getMessage());
        }

    }


    
public void createMyPreparedStatement(String sql, HttpServletRequest request) {
        
try {
            
this.request = request;
            
this.pstmt = this.con.prepareStatement(sql);
        }
 catch (SQLException e) {
            
// TODO Auto-generated catch block
            e.printStackTrace();
        }

    }


    
public ResultSet executeMyQuery(String sqlWords) {
分享到:
评论

相关推荐

    ssh数据库连接池proxool

    Proxool是SSH框架中常用的数据库连接池之一,以其轻量级、灵活配置和优秀的性能表现而受到青睐。 数据库连接池的基本原理是预先在内存中创建一定数量的数据库连接,应用程序在需要时可以从池中获取连接,使用完毕后...

    java数据库连接池Proxool

    标签“源码”意味着我们可以研究Proxool的源代码,了解其内部实现机制,这对于深入理解数据库连接池的工作原理和优化应用性能非常有帮助。 标签“工具”表明Proxool作为一个工具类库,可以方便地集成到各种Java项目...

    proxool连接池jar包

    `proxool连接池jar包`是一个包含Proxool数据库连接池技术的软件包。Proxool作为源码开放的项目,源自著名的开源平台SourceForge,它为Java开发者提供了一个高效且易于管理的数据库连接池解决方案。数据库连接池在多...

    Spring+Hibernate+Proxool连接池

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

    proxool-0.9.1源码下载

    Proxool是一个开源的数据库连接池实现,它在Java环境中提供了高效的数据库连接管理。在0.9.1版本中,我们可以深入研究其内部机制,理解如何实现数据库连接的创建、管理和回收,以及如何优化数据库访问性能。 1. **...

    oracle proxool jar jdbc jar包 proxool源码包 Java oracle proxool 实例

    Oracle Proxool是一款开源的数据库连接池,它提供了一种高效、灵活的方式来管理数据库连接,以提高Java应用程序的性能和可扩展性。在Java应用程序中,数据库连接的创建和关闭是一个耗时的操作,通过使用连接池,我们...

    Hibernate里配置第三方数据库连接池

    本篇将详细讲解如何在Hibernate中配置第三方数据库连接池——Proxool。 **什么是数据库连接池?** 数据库连接池在应用启动时会预先初始化一定数量的数据库连接,并将其存储起来。当应用程序需要与数据库交互时,它...

    java项目开发实践经验之二:几种常见数据库连接池的使用比较(转)

    本篇文章将探讨几种常见的数据库连接池的使用比较,包括Proxool、DBCP、C3P0,并通过配置文件(如`proxool.xml`、`dbcp.xml`和`c3p0.xml`)来展示它们的配置细节。 首先,我们来看Proxool,它是一个轻量级的数据库...

    Proxool--java数据库连接池管理<内含jar包,源代码,文档>--下载不扣分,回帖加1分,欢迎下载,童叟无欺

    Proxool--java数据库连接池管理 &lt;内含jar包,源代码,文档&gt; 版本号为0.9,是2009-08-15日最新的版本。 下载不扣分,回帖加1分,欢迎下载,童叟无欺 Proxool: Proxy JDBC Connection Poolby billhorsman A Java SQL ...

    proxool源码

    在深入研究Proxool源码之前,我们先了解一下数据库连接池的基本概念。 数据库连接池是数据库管理的一种技术,它预先在内存中创建一定数量的数据库连接,当应用需要时,可以从池中获取连接,使用完毕后归还,而不是...

    proxool 连接池实例

    总的来说,Proxool是一个适合学习和小型项目使用的数据库连接池,它的灵活性和易用性使其在源码阅读和工具使用方面都有一定的价值。理解Proxool的工作机制和配置方式,有助于提升我们在数据库管理方面的技能。在实际...

    R2高性能数据库连接池v1.8改进版源码

    v1.2处理了oracle环境下由于服务器关闭休眠链接造成的连接池循环检测进程异常退出的情况,改为当循环周期大于服务器关闭休眠链接间隔时,后台打印异常并重新连接数据库。 R2 jdbc连接池,用于java程序中jdbc连接池的...

    oracle proxool jar jdbc jar包 proxool源码包 Java实现 oracle proxool 实例

    Oracle Proxool是一个轻量级的数据库连接池,它为Java应用程序提供了高效的数据库连接管理。在Java应用中,使用数据库连接池可以显著提高性能和资源利用率,因为它们减少了创建和销毁数据库连接的开销。Proxool是...

    R2高性能数据库连接池v1.6源码

    v1.2处理了oracle环境下由于服务器关闭休眠链接造成的连接池循环检测进程异常退出的情况,改为当循环周期大于服务器关闭休眠链接间隔时,后台打印异常并重新连接数据库。 R2 jdbc连接池,用于java程序中jdbc连接池...

    项目中成功的运用proxool连接池

    `proxool`是Apache软件基金会的一个开源项目,提供了一个轻量级、高效的数据库连接池解决方案。 `proxool`的优势在于它的灵活性和可配置性。你可以通过配置文件设定连接池的最大连接数、最小连接数、超时时间等参数...

    R2高性能数据库连接池v1.7源码

    v1.2处理了oracle环境下由于服务器关闭休眠链接造成的连接池循环检测进程异常退出的情况,改为当循环周期大于服务器关闭休眠链接间隔时,后台打印异常并重新连接数据库。 R2 jdbc连接池,用于java程序中jdbc连接池的...

    R2高性能数据库连接池v1.8源码

    v1.2处理了oracle环境下由于服务器关闭休眠链接造成的连接池循环检测进程异常退出的情况,改为当循环周期大于服务器关闭休眠链接间隔时,后台打印异常并重新连接数据库。 R2 jdbc连接池,用于java程序中jdbc连接池的...

    配置Hibernate使用Proxool连接池

    而Proxool是Apache软件基金会的一个开源项目,它提供了一个轻量级、高效的数据库连接池,可以有效地管理和复用数据库连接,减少创建和销毁连接的开销。 要配置Hibernate使用Proxool连接池,我们需要进行以下步骤: ...

Global site tag (gtag.js) - Google Analytics