当前位置: 首页 > 编程笔记 >

Java dbcp连接池基本使用方法详解

晏兴发
2023-03-14
本文向大家介绍Java dbcp连接池基本使用方法详解,包括了Java dbcp连接池基本使用方法详解的使用技巧和注意事项,需要的朋友参考一下

1、依赖api的使用

导入jar包

 <!-- https://mvnrepository.com/artifact/org.apache.commons/commons-dbcp2 -->
  <dependency>
   <groupId>org.apache.commons</groupId>
   <artifactId>commons-dbcp2</artifactId>
   <version>2.7.0</version>
  </dependency>

导入dbcp.properties配置文件

获取连接

 protected void doGet(HttpServletRequest request, HttpServletResponse response) throws
      ServletException, IOException {
    Properties properties=new Properties();
    //获取dbcp配置文件对应输入流
    InputStream inputStream=DbcpServlet.class.getClassLoader().getResourceAsStream("dbcp.properties");
    //加载dbcp配置文件
    properties.load(inputStream);
​
    BasicDataSource basicDataSource=null;
    try {
      //数据源对象
      basicDataSource=BasicDataSourceFactory.createDataSource(properties);
      //获取数据库连接
      Connection connection=basicDataSource.getConnection();
      System.out.println(connection);
    } catch (Exception e) {
      e.printStackTrace();
    }
​
  }


2、依赖tomcat容器的使用

利用jndi机制实现,jndi(命名及目录查找接口),将数据源连接池的配置信息在容器(Tomcat)实现配置

具体如何实现配置

在tomcat的context.xml文件加入数据源配置

<Resource 
     <!--数据源名字-->
     name="jdbc/news" 
    <!--验证数据源的容器类型-->
    auth="Container" 
    type="javax.sql.DataSource"
    <!--最大连接数据库连接对象的数量100-->
    maxActive="100" 
    <!--最大空闲数是30-->
    maxIdle="30" 
    <!--最大等待时间-->
    maxWait="10000" 
    <!--数据库用户名-->
    username="root"
    <!--数据库密码-->
    password="123456"
    <!--数据库驱动-->
    driverClassName="com.mysql.cj.jdbc.Driver" 
    <!--数据库url-->
    url="jdbc:mysql://localhost:3306/yl?characterEncoding=utf8&amp;serverTimezone=GMT%2B8"/>

获取连接

protected void doGet(HttpServletRequest request, HttpServletResponse response)
      throws ServletException, IOException {
    try {
      //获取上下文对象
      Context ctx = new InitialContext();
      //通过jndi命名服务,找到数据源配置
      DataSource ds = (DataSource) ctx.lookup("java:comp/env/jdbc/news");
      //获取数据库连接
      Connection connection = ds.getConnection();
      
      if (!connection.isClosed()) {
        System.out.println("连接成功");
      }
    } catch (NamingException e) {
      e.printStackTrace();
    } catch (SQLException e) {
      e.printStackTrace();
    }
  }

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持小牛知识库。

 类似资料:
  • 本文向大家介绍Java JDBC基本使用方法详解,包括了Java JDBC基本使用方法详解的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Java JDBC基本使用方法。分享给大家供大家参考,具体如下: 什么是JDBC JDBC的使用 事务 连接池 DbUtils 首发日期:2018-05-27 修改: 2018-07-19:增加了事务、连接池、DBUtils 2018-07-27:对特别

  • 本文向大家介绍详解git的基本使用方法,包括了详解git的基本使用方法的使用技巧和注意事项,需要的朋友参考一下 什么是git? git是目前世界上最先进的分布式版本控制系统。 git与SVN的最主要区别? SVN是集中式版本控制系统,版本库是集中放在中央服务器的,而工作的时候用的都是自己的电脑,所以开始工作之前需要从中央服务器那里获取最新的版本,然后开始工作,工作完后,需要把自己所做的工作推送到中

  • 我正在用vaadin和spring开发一个Web应用程序java,比如容器和eclipse链接,比如持久化框架。现在我想在我的应用程序中使用一个连接池。我在谷歌上读了一些我还没读到的东西。这是我的应用程序配置: 我的春日文脉 我的persistence.xml 但我得到以下异常:

  • 本文向大家介绍Node.js使用MySQL连接池的方法实例,包括了Node.js使用MySQL连接池的方法实例的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Node.js使用MySQL连接池的方法。分享给大家供大家参考,具体如下: Nodejs如何使用MySQL Nodejs要连接MySQL,可以使用Nodejs的MysQL驱动来实现。比如,我们这里使用"node-mysql"连接数据库

  • 本文向大家介绍python中update的基本使用方法详解,包括了python中update的基本使用方法详解的使用技巧和注意事项,需要的朋友参考一下 前言 Python 字典 update()方法用于更新字典中的键/值对,可以修改存在的键对应的值,也可以添加新的键/值对到字典中。 语法格式 参数说明 将e中键-值对添加到字典d中,e可能是字典,也可能是键-值对序列。详见实例。 返回值 该方法没有

  • 我正在使用Node js和Postgresql,并试图在连接实现中达到最高效率。< br >我看到pg-promise构建在node-postgres之上,node-postgres使用pg-pool来管理池。< br >我还读到“一次超过100个客户端是一件非常糟糕的事情”(node-postgres)。 我正在使用pg-promise,想知道: 对于非常大的数据负载,推荐的poolSize是什