Java dbcp連線池基本使用方法詳解
阿新 • • 發佈:2020-10-29
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&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(); } }
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。