• dbcp连接池的基本使用


    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();
            }
        }
    •  

    记得快乐
  • 相关阅读:
    Django之路由系统(urls.py)
    Django之配置文件(settings.py)
    初始Django
    CSS基础
    HTML
    mysql基础知识拾遗
    python的进程
    python 队列
    python的线程
    2017年10月21日 CSS常用样式&鼠标样式 以及 jQuery鼠标事件& jQuery图片轮播& jQuery图片自动轮播代码
  • 原文地址:https://www.cnblogs.com/Y-wee/p/13679553.html
Copyright © 2020-2023  润新知