zoukankan      html  css  js  c++  java
  • Tomcat 配置连接池

    1. Tomcat 配置 JNDI 资源

    • JNDI(Java Naming and Directory Interface), Java 命名和目录接口;
    • JNDI 作用: 在服务器上配置资源, 然后通过统一的方式来获取配置的资源.
    • 这里需要配置的资源是连接池.
    // 配置位置: JavaWeb 项目的 META-INF 目录下新建一个 "context.xml"
    // 配置 JNDI 资源需要到 <Context> 元素中配置 <Resource> 子元素
    // name: 指定资源的名称, 这个名称可以随便给, 在获取资源时需要这个名称;
    // factory: 用来创建资源的工厂, 这个值基本上是固定的, 不用修改;
    // type: 资源的类型, 配置连接池时, 需要给出连接池的类型;
    // bar: 表示资源的属性,对于 DBCP 连接池而言, 因为它没有 bar 属性,
    //      而应该配置 url, username 等属性.
    
    <Context>
        <Resource name="myc3p0"
                  type="com.mchange.v2.c3p0.ComboPooledDataSource"
                  factory="org.apache.naming.factory.BeanFactory"
                  jdbcUrl="jdbc:mysql://localhost:3306/mydb1"
                  classDriver="com.mysql.jdbc.Driver";
                  user="root";
                  password="root"
                  />
    </Context>
    
    // 备注: 也可在 <CATALINA_HOME>/conf/server.xml 文件中的对应 <HOST> 元素中配置以上代码,
    //       这是全局配置,可供 Tomcat 服务器上的多个 Web 应用使用.
    
    

    2. 获取资源

    // 在 JavaWeb 应用中要是用 JNDI 资源, 必须在 WEB-INF 中的 web.xml 中配置对该 JNDI 资源的
    // 引用 <resource-ref> 元素
    
    <web-app>
        <resource-ref>
            <description>c3p0 Connection</description>
            <res-ref-name>myc3p0</res-ref-name>
            <res-type>com.mchange.v2.c3p0.ComboPooledDataSource</res-type>
        </resource-ref>
    </web-app>
    
    
    // web 项目中使用数据源
    
    // 创建 JNDI 上下文对象
        Context initCtx = new InitialContext();
    // 查询入口 (格式固定)
        Context envCtx = (Context)initCtx.lookup("java:comp/env");
    // 再进行二次查询, 找到我们的资源
    // 使用的名称为 <Resource> 元素的 name
        DataSource dataSource = (DataSource) envCtx.lookup("myc3p0");
    
    // 也可以使用下列方式获取资源:
    //  DataSource dataSource = (DataSource) initCtx.lookup("java:comp/env/myc3p0");
    

    参考资料:

  • 相关阅读:
    fused multiply and add
    gcc优化选项解析
    gcc的搜索路径,头文件和库
    使用-Wl直接向ld传递参数
    ldd LD_TRACE_LOADED_OBJECTS
    linux下库的使用
    在RedHat 5下安装Oracle 10g详解(转)
    Centos下安装X Window+GNOME Desktop+FreeNX
    oracle exp direct 执行机制
    详解Oracle的unlimited tablespace系统权限
  • 原文地址:https://www.cnblogs.com/linkworld/p/7625348.html
Copyright © 2011-2022 走看看