`
Kayonlife
  • 浏览: 22403 次
  • 性别: Icon_minigender_1
  • 来自: 无锡
社区版块
存档分类
最新评论

处理获取数据库连接时的经典异常:Cannot create PoolableConnectionFactory

阅读更多

Exception:

从连接池中获取数据库连接发生异常 : Cannot create PoolableConnectionFactory (Illegal connection port value '3306:DB)

 

Solution:

1.在Tomcat中server.xml的<GlobalNamingResources> 节点里面添加如下代码:
    <Resource name="jdbc/mbss" auth="Container" type="javax.sql.DataSource"
    username="root"
    password="root"
    driverClassName="com.mysql.jdbc.Driver"
    maxIdle="10"
    maxWait="10000"
    maxActive="100"
    url="jdbc:mysql://localhost:3306/DB" />


2.在Tomcat中context.xml的</context>前添加如下代码:
    <ResourceLink name="jdbc/DB" global="jdbc/DB" type="javax.sql.DataSourcer"/>

 

3.在所建项目中web.xml的</web-app>前添加如下代码:

    <resource-ref>
        <description>DB Connection</description>
        <res-ref-name>jdbc/mbss</res-ref-name>
        <res-type>javax.sql.DataSource</res-type>
        <res-auth>Container</res-auth>
    </resource-ref>

 

4.在获得数据库连接池中这样写,如:

       Context initCtx = new InitialContext();
       Context envCtx = (Context) initCtx.lookup("java:comp/env");
       DataSource ds = (DataSource) envCtx.lookup("jdbc/DB");
       con = ds.getConnection();

1
0
分享到:
评论

相关推荐

    sql server 2005设置sql身份验证 Cannot create PoolableConnectionFactory (用户 'sa' 登录失败。该

    在SQL Server 2005中,"Cannot create PoolableConnectionFactory (用户 'sa' 登录失败。该用户与可信 SQL Server 连接无)" 错误通常表明在尝试使用SQL Server的身份验证方式登录时遇到了问题。这篇博客文章可能详细...

    学习有关连接池的使用

    - `maxWait`是等待连接的最大时间,如果超过这个时间仍无法获取连接,会抛出`SQLException`,这里的值为10000毫秒(10秒)。 - `username`和`password`是数据库的登录凭据。 - `driverClassName`指定了数据库驱动...

    dbcp数据库连接池

    数据库连接池的基本原理是预先创建并维护一定数量的数据库连接,当应用需要时,可以从池中获取连接,使用完毕后归还,而不是每次操作都创建新的连接。 **连接池的重要性**: 1. **资源复用**:通过重用已建立的...

    DBCP数据库连接池包下载

    1. **连接池管理**:DBCP维护了一个数据库连接池,当应用程序需要访问数据库时,可以从池中获取一个已建立的连接,使用完毕后归还给池而不是直接关闭。这样减少了创建和销毁连接的时间,提高了系统的响应速度。 2. ...

    自己封装的dbcp连接池封装,可以同时连接多个数据库

    7. **异常处理**:在实际应用中,必须处理可能出现的各种异常,如连接池已满、数据库连接失败等情况,确保程序的健壮性。 8. **监控与日志**:为了方便问题排查和性能优化,连接池通常会提供监控接口和日志功能,...

    数据库连接包

    4. 获取和释放连接:在需要操作数据库时,从连接池获取连接;操作完成后,及时归还连接。 5. 监控和调整:定期检查连接池的状态,根据系统负载动态调整连接池参数。 了解并正确使用数据库连接包和连接池,对于优化...

    DBCP数据库连接池

    - `PoolableConnectionFactory`: 连接工厂,用于将普通的数据库连接转换为可池化的连接,添加到连接池中。 - `ObjectPool`: 对象池接口,DBCP使用`commons-pool`中的实现,如`GenericObjectPool`,来管理数据库连接...

    数据库连接池.pdf

    - **创建PoolableConnectionFactory**:这是DBCP的核心,它将普通数据库连接转换为池化的连接,可以被对象池管理和回收。 - **注册PoolingDriver**:`PoolingDriver`是DBCP提供的JDBC驱动,它允许通过特定的URL...

    用户 'sa' 登录失败。该用户与可信 SQL Server 连接无关联

    用户 'sa' 登录失败。该用户与可信 SQL Server 连接无关联

    apache数据库连接池包

    在代码中,通过数据源获取连接,然后执行 SQL 操作,最后释放连接回池。 总结来说,Apache 数据库连接池包是 Java 应用程序优化数据库性能的重要工具,通过有效的连接管理和复用,降低了系统资源消耗,提升了应用...

    kettle常见问题

    kettle常见问题kettle常见问题kettle常见问题kettle常见问题kettle常见问题

    连接池dbcp

    使用DBCP时,要确保正确处理异常,避免连接泄露。在程序结束时,最好关闭数据源,以释放所有资源。 总的来说,Apache Commons DBCP是Java开发中实现数据库连接池的一个可靠选择,尤其适合于对性能要求不那么高但又...

    关于JDBC连接池的java类

    4. **获取和关闭连接**:在需要使用数据库时,从数据源中获取连接;使用完毕后,必须将连接归还回连接池,而不是关闭连接。 5. **异常处理**:确保在出现异常时,能够正确地释放资源,防止资源泄露。 这个提供的...

    Jmeter连接Mysql数据库实现过程详解

    在执行JDBC Request之后,我们可能会出现一个报错:java.sql.SQLException: Cannot create PoolableConnectionFactory (The server time zone value 'Öйú±ê׼ʱ¼ä' is unrecognized or represents more...

    连接不到数据库【转】整理.pdf

    当遇到“连接不到数据库”的问题时,通常会显示如"Io异常: The Network Adapter could not establish the connection"这样的错误信息。这个异常表明应用程序无法与数据库建立网络连接,可能由多种原因造成。以下是...

    java常用工具类之数据库连接类(可以连接多种数据库)

    Java中的数据库连接是应用程序与数据库交互的基础,而`DBUtil`类是一个常见的工具类,用于封装数据库连接的创建、管理以及执行SQL语句的过程。在Java中,我们通常使用JDBC(Java Database Connectivity)API来实现...

    c3p0连接池与源码

    2. **异常处理**: 在获取和使用连接时,应妥善处理异常,确保资源正确释放。 3. **及时升级**: 关注c3p0的更新和安全修复,保持库版本的最新。 6. **性能优化**: 结合JMX监控,持续优化连接池配置,提高应用性能。...

    WEB-INF中的web.xml中之前增加以下配置:

    确认SQL Server 2000可以远程连接,除了开放1433端口外,还要升级数据库到SP3或SP4,否则连接会发出SQLNestedException:Cannot create PoolableConnectionFactory ([Microsoft][SQLServer 2000 Driver for JDBC]...

    commons-dbcp-1.2.2源码

    通过深入研究"commons-dbcp-1.2.2源码",开发者不仅可以了解数据库连接池的基本原理,还能学习如何优化数据库访问性能,以及如何处理数据库连接的异常和管理,这对于构建高效、稳定的企业级应用具有重要意义。...

    commons-dbcp-1.0-src.zip

    当应用需要连接数据库时,它会从池中获取一个已存在的连接,而不是每次都去创建新的连接。使用完毕后,连接会被返回到池中,供其他请求再次使用。这样可以减少频繁创建和关闭连接的开销,提高系统性能。 2. **...

Global site tag (gtag.js) - Google Analytics