`
zznj1123
  • 浏览: 124023 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

TOMCAT动态创建连接池收藏

阅读更多

<script></script> 看到一些朋友需要对tomcat连接池进行加密http://topic.csdn.net/u/20071023/15/3b85f3bf-73fa-4f06-8c94-a76431afd5d3.html,偶有感触,在艳照门事件的影响下,大家都对公司核心数据的加密非常关注,即使是服务器连接池,也必须防止硬件工程师在无意或有意把数据拿走后保证数据的安全性,面对这样的问题,Sybase ASA已经提供了数据库的加密,只要没有密钥的情况下,即使拿到数据库也会无法查看其中的数据,这对需要数据库级加密的需求来说是非常棒的,但在可以找到的TOMCAT连接池配置中却只能用明码保存连接配置,管理员或硬件维护员可以很容易的获得密钥,这样就使数据库的加密变得毫无意义,这时怎么办呢?下面将一步一步教大家解决的方法:

先看到在英文版Professional Apache Tomcat 6(http://download.csdn.net/source/264074
有下载)的Chapter 13: JDBC Connectivity中有一节,Alternative Connection Pool Managers,在这一节中详细描述了动态创建连接的方法,便动手进行测试

1.下载c3p0 Pool Manager,http://nchc.dl.sourceforge.net/sourceforge/c3p0/c3p0-0.9.1.2.bin.zip

2.在项目中添加
c3p0的引用,即把c3p0-0.9.1.2.jar添加到项目中。

3.建立Bean

package mydatabase;

import com.mchange.v2.c3p0.ComboPooledDataSource;

public class database_connection ...{

    
private static ComboPooledDataSource pool = null;
    
    
public static Connection get_connection() throws Error
    
...{
        
try ...{
            
if (pool == null)
            
...{
                pool 
= new ComboPooledDataSource();
                pool.setDriverClass( 
"ianywhere.ml.jdbcodbc.IDriver" );
                pool.setJdbcUrl( 
"jdbc:odbc:dsn=FunctionFace;uid=aaa;pwd=bbb;dbkey=数据库是加密的哦;dbf=D:/WorkPlace/WorkLine/FirstTmp/Database/FunctionFace.db" );
                pool.setUser(
"dba");
                pool.setPassword(
"sql");
                pool.setAcquireIncrement(
3);
                pool.setMaxPoolSize(
30);
            }

            
return pool.getConnection();
        }
 catch (Exception e) ...{
            e.printStackTrace();
        }

        
        
throw new Error("没有找到数据库连接配置!!");
        
    }


}


4.在JSP界面中调用
<%...@ page language="java" pageEncoding="utf-8"%>
<%...@ page import="java.sql.*"%>
<%...@ page import="mydatabase.database_connection"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  
<head>
    
<title>使用动态连接池的实验</title>
  
</head>
  
  
<body>
  我们伟大的CSDN的同志是不用JSP来开发的,居然不能导入JSP程序,真晕,不知道是否大家是否看得清楚下面这段代码
  
<%...
      out.println(
"开始连接数据库!!");
      
//out.println(System.getProperty("java.library.path"));
      try{
          
//database_base dba = new database_base();
          Connection conn 
= database_connection.get_connection();
          out.println(
"获取连接池成功!!<br>");

        out.println(
"<br>");
        out.println(
"下面根据JDBC元数据提取  实验表A 的主键字段信息:<br>");
        DatabaseMetaData b 
= conn.getMetaData();
        ResultSet pkRSet 
= b.getPrimaryKeys(nullnull"实验表A");
        
while (pkRSet.next()) {
            out.println(
"****** Comment ******<br>"); 
            out.println(
"TABLE_CAT : "+pkRSet.getObject(1)+"<br>"); 
            out.println(
"TABLE_SCHEM: "+pkRSet.getObject(2)+"<br>"); 
            out.println(
"TABLE_NAME : "+pkRSet.getObject(3)+"<br>"); 
            out.println(
"COLUMN_NAME: "+pkRSet.getObject(4)+"<br>"); 
            out.println(
"KEY_SEQ : "+pkRSet.getObject(5)+"<br>"); 
            out.println(
"PK_NAME : "+pkRSet.getObject(6)+"<br>"); 
            out.println(
"****** ******* ******<br>"); 
        }
          //conn.close();  这里不要关掉哦,让系统自己管理连接好了
          //out.println(
"关闭连接<br>"); 
      } catch (Exception ex) {
          out.print(ex.getMessage());
          ex.printStackTrace();
      }
  
%>
  
  
</body>
</html>

好了,实验做到这里就会成功了,祝大家有好运气。

分享到:
评论

相关推荐

    tomcat连接池应用例子

    标题“Tomcat连接池应用例子”指的是在Java Web开发中,使用Tomcat内置的数据源(连接池)来管理与MySQL数据库的连接。Tomcat作为流行的Java应用服务器,提供了高效的连接池服务,帮助开发者优化数据库操作的性能和...

    tomcat配置mysql连接池

    ### Tomcat配置MySQL连接池详解 #### 一、前言 在Java Web开发中,Tomcat作为一款广泛使用的轻量级应用服务器,被大量应用于Web应用程序的部署与运行环境中。而数据库连接池作为提高数据库访问效率的重要手段,在...

    关于tomcat5.0配置及连接池配置详细

    在本文中,我们将深入探讨如何在Tomcat 5.0中配置连接池,以便为数据库连接提供高效、动态平衡的资源管理,优化应用程序的性能。连接池是数据库管理的重要组成部分,它允许应用程序重复使用已建立的数据库连接,避免...

    基于DBCP/c3p0/Tomcat的数据库连接池的demo

    c3p0提供了许多高级特性,比如自动测试连接、空闲连接检测、连接池大小动态调整等。相比于DBCP,c3p0在连接管理上更为灵活,且具有更好的异常处理机制。 **Tomcat 数据源** Tomcat作为一款流行的Java Web服务器,...

    Java 连接池多种方式配置

    Java连接池是优化数据库操作的关键技术之一,它通过复用已建立的数据库连接,避免了频繁创建和销毁连接带来的性能开销。本文将详细介绍在Java环境中配置连接池的多种方式,涵盖不同常用的Java框架。 一、C3P0连接池...

    自定义JDBC连接池及常用连接池介绍

    5. Tomcat JDBC Connection Pool:Tomcat服务器自带的连接池,适用于那些不希望引入额外依赖的项目。 这些连接池各有优缺点,选择时应考虑项目的具体需求,如性能、稳定性、易用性、功能特性等。了解和熟悉这些连接...

    JSP中tomcat的SQL Server2000数据库连接池的配置

    在探讨“JSP中Tomcat的SQL Server2000数据库连接池的配置”这一主题时,我们首先需要理解几个核心概念:JSP(JavaServer Pages)、Tomcat、SQL Server2000以及数据库连接池。 ### JSP(JavaServer Pages) JSP是一...

    浅谈java连接池

    - 设计单例模式的连接池管理类,根据配置文件中的数据库信息动态创建和管理不同的连接池。 3. **连接的创建与回收** - 连接池需要有效地创建连接(如使用线程安全的初始化方法)并确保连接在不再使用时被正确地...

    tomcat-jdbc-notes:Tomcat自带数据库连接池源码阅读

    - **连接池大小调整**:根据系统负载动态调整连接池大小,避免资源浪费。 8. **监控与日志** Tomcat JDBC提供了一些监控接口,如`getActiveCount()`和`getIdleCount()`,可以通过这些接口获取连接池的状态信息。...

    springboot连接池、动态配置多数据源连接池,特别适合大数据部门、数据中台服务的多数据源连接池.zip

    Spring Boot默认支持几种流行的数据库连接池,如HikariCP、Druid、Tomcat JDBC等。这些连接池都提供了高效的连接管理和资源优化。HikariCP以其高性能和低内存占用被广泛采用,而Druid则以其丰富的监控功能受到青睐。...

    JDBC数据库连接池实现原理

    1. **选择连接池实现**:首先,我们需要选择一个合适的数据库连接池实现,如Apache的DBCP、C3P0、HikariCP或Tomcat JDBC连接池等。这些连接池库提供了管理和维护数据库连接的功能。 2. **配置连接池**:在应用的...

    一个简单dwr的使用例子,tomcat数据库连接池

    Tomcat连接池,也称为Apache Tomcat JDBC连接池,是Tomcat服务器内置的用于管理数据库连接的组件,它可以提高数据库操作的性能和效率,避免了频繁创建和关闭连接的开销。 1. **配置DWR**: - 首先,你需要在你的...

    jsp连接MySQL用连接池方式步骤

    连接池是一种用于管理数据库连接的技术,它可以复用现有的连接,避免频繁创建和销毁连接所带来的资源开销。使用连接池可以显著提升数据库访问速度,并且能够更好地控制并发访问。 #### 三、JSP应用中使用连接池的...

    java写的数据库连接池

    在Java中,有许多成熟的数据库连接池库,如Apache的DBCP、C3P0、HikariCP以及Tomcat JDBC Connection Pool等。这些库提供了完善的连接管理和优化功能,包括连接的自动获取与释放、空闲连接检测、超时控制、事务支持...

    apache-tomcat-5.5.25.exe+连接池.rar+sqljdbc

    这个压缩包包含了与Tomcat相关的几个关键组件,特别是针对数据库连接池的优化。 首先,`apache-tomcat-5.5.25.exe` 是Tomcat 5.5.25的可执行安装文件,用于在Windows环境中安装Tomcat服务器。这个版本发布于2007年...

    连接池应用

    2. DBCP(Apache BasicDataSource):Apache的一个基础数据库连接池实现,基于Jakarta-pool,它是Tomcat等服务器默认的连接池。 3. HikariCP:一款高性能的数据库连接池,它的设计目标是提供最小的资源消耗和最快的...

    JSP 数据库连接池技术

    在Java Web开发中,JSP(JavaServer Pages)是一种用于创建动态网页的技术,而数据库连接池是优化数据库访问性能和管理资源的关键组件。本篇将深入探讨JSP中如何运用数据库连接池技术,以及它的重要性。 数据库连接...

    常用数据库连接池 (DBCP、c3p0、Druid) 配置说明1

    c3p0的特点包括自动测试连接的健康状况、连接池大小的动态调整以及支持预热连接等功能。配置c3p0时,用户可以设置初始化连接数量、最大连接数量、测试连接的SQL语句等参数,以满足不同应用的需求。 3. **Druid** ...

    Tomcat7.0、一些jar包、连接池.zip

    “连接池”是数据库管理的一种技术,它允许应用程序重复使用已打开的数据库连接,而不是每次需要时都创建新的连接。这提高了性能,因为建立和关闭数据库连接是耗时的操作。在Java中,常见的连接池实现有Apache的DBCP...

Global site tag (gtag.js) - Google Analytics