亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

數據庫連接池--Tomcat內置實現

系統 1823 0

1.JNDI(Java Naming and Directory Interface,Java命名和目錄接口)

  是一組在Java應用中訪問命名和目錄服務的API。命名服務將名稱和對象聯系起來,使得我們可以用名稱訪問對象。目錄服務是一種命名服務,在這種服務里,對象不但有名稱,還有屬性。可以理解為一個容器,可以在其中存放任意內容,在容器中為內容提供一個字符串名稱,名稱命名方式采用是目錄結構方式,在其他地方引用該名稱就可以得到該內容.

2.實現

  注意:還是需要導入JDBC的驅動jar包!!!

  思想:將數據庫連接池作為服務器端的資源存放在JNDI容器中,使用時從容器中取出資源,即數據庫連接池.

  a)將對象存在在JNDI容器

    在Web工程的WebRoot\META-INF\目錄下創建Context.xml文件,將對象作為資源存放入容器中,也可以被其他Web項目所訪問.

      
        <?
      
      
        xml version="1.0" encoding="UTF-8"
      
      
        ?>
      
      
        <
      
      
        Context
      
      
        >
      
      
        <!--
      
      
         #1 給tomcat 配置對象,將內容添加jndi容器 
      
      
        -->
      
      
        <
      
      
        Resource 
      
      
        name
      
      
        ="jdbc/pool"
      
      
         auth
      
      
        ="Container"
      
      
         type
      
      
        ="javax.sql.DataSource"
      
      
        

               maxActive
      
      
        ="100"
      
      
         maxIdle
      
      
        ="30"
      
      
         maxWait
      
      
        ="10000"
      
      
        

               username
      
      
        ="root"
      
      
         password
      
      
        ="fujianyi"
      
      
         driverClassName
      
      
        ="com.mysql.jdbc.Driver"
      
      
        

               url
      
      
        ="jdbc:mysql://localhost:3306/day17"
      
      
        />
      
      
        </
      
      
        Context
      
      
        >
      
    

?

  b)當前web項目從tomcat jndi容器將需要對象進行引用。

    在當前項目\WebRoot\WEB-INF路徑下的web.xml文件中添加如下代碼

      
        <!--
      
      
         #2 從jndi容器引用已經存在對象 
      
      
        -->
      
      
        <
      
      
        resource-ref
      
      
        >
      
      
        <
      
      
        res-ref-name
      
      
        >
      
      jdbc/pool
      
        </
      
      
        res-ref-name
      
      
        >
      
      
        <
      
      
        res-type
      
      
        >
      
      javax.sql.DataSource
      
        </
      
      
        res-type
      
      
        >
      
      
        <
      
      
        res-auth
      
      
        >
      
      Container
      
        </
      
      
        res-auth
      
      
        >
      
      
        </
      
      
        resource-ref
      
      
        >
      
    

?

  c)jsp 或 java代碼 使用

      
        <%
      
      
        @page import
      
      
        =
      
      
        "
      
      
        java.sql.Connection
      
      
        "
      
      
        %>
      
      
        <%
      
      
        @page import
      
      
        =
      
      
        "
      
      
        javax.sql.DataSource
      
      
        "
      
      
        %>
      
      
        <%
      
      
        @page import
      
      
        =
      
      
        "
      
      
        javax.naming.InitialContext
      
      
        "
      
      
        %>
      
      
        <%
      
      
        @page import
      
      
        =
      
      
        "
      
      
        javax.naming.Context
      
      
        "
      
      
        %>
      
      
        <%
      
      
        @ page language
      
      
        =
      
      
        "
      
      
        java
      
      
        "
      
      
         contentType
      
      
        =
      
      
        "
      
      
        text/html; charset=UTF-8
      
      
        "
      
      
        

    pageEncoding
      
      
        =
      
      
        "
      
      
        UTF-8
      
      
        "
      
      
        %>
      
      
        <%
      
      
        @ taglib uri
      
      
        =
      
      
        "
      
      
        http://java.sun.com/jsp/jstl/sql
      
      
        "
      
      
         prefix
      
      
        =
      
      
        "
      
      
        sql
      
      
        "
      
      
        %>
      
      
        <%
      
      
        @ taglib uri
      
      
        =
      
      
        "
      
      
        http://java.sun.com/jsp/jstl/core
      
      
        "
      
      
         prefix
      
      
        =
      
      
        "
      
      
        c
      
      
        "
      
      
        %>
      
      
        <!
      
      
        DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"
      
      
        >
      
      
        <
      
      
        html
      
      
        >
      
      
        <
      
      
        head
      
      
        >
      
      
        <
      
      
        meta 
      
      
        http-equiv
      
      
        ="Content-Type"
      
      
         content
      
      
        ="text/html; charset=UTF-8"
      
      
        >
      
      
        <
      
      
        title
      
      
        >
      
      Insert title here
      
        </
      
      
        title
      
      
        >
        
<%--JSP代碼實現?查詢實現--%>
<% -- 查詢數據 -- %> < sql:query var ="rs" dataSource ="jdbc/pool" > select * from t_user </ sql:query > </ head > < body > < c:forEach items ="${rs.rows}" var ="row" > ${row.id} ${row.username} ${row.password} </ c:forEach >

<%--Java代碼實現?獲取連接--%> <% // 1初始化jndi容器,包:javax.naming Context initContext = new InitialContext(); // 2初始java環境 Context envContext = (Context)initContext.lookup( " java:/comp/env " ); // 3獲得自定義內容 DataSource ds = (DataSource)envContext.lookup( " jdbc/pool " ); Connection conn = ds.getConnection(); out.print(conn); %> </ body > </ html >

?

數據庫連接池--Tomcat內置實現


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦?。?!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 亚洲小视频在线观看 | 天堂成人一区二区三区 | 国产在线看不卡一区二区 | 国产欧美亚洲三区久在线观看 | 5060午夜一级毛片免费观看 | 免费一级毛片清高播放 | 亚洲精品不卡午夜精品 | 国产精品国产亚洲精品不卡 | 亚洲精品精品 | 国产热热 | 性欧美精品久久久久久久 | 久久精品www| 婷婷的久久五月综合先锋影音 | 最新仑乱免费视频 | 尤物免费视频 | 欧美最猛的24k毛片视频 | 天天插天天插 | 亚洲国产成人久久午夜 | 亚洲欧美国产另类 | 久久综合给合久久狠狠狠色97 | 久久综合99re88久久爱 | 免费看黄片毛片 | 天天射日日射 | 天天爽天天干天天操 | 久久精品视频播放 | 啪啪一级视频 | 伊人丁香狠狠色综合久久 | 国产人成午夜免视频网站 | 一 级 黄 色 片生活片 | 老司机午夜精品视频 | 欧美 亚洲 激情 | 国语精品91自产拍在线观看二区 | 国产一区二区三区成人久久片 | 亚洲热线99精品视频 | 成年人黄视频大全 | 就草草在线观看视频 | 欧美一二区视频 | 天天干天天曰 | 中文字幕伦理聚合第一页 | 色综合天天综合网国产成人网 | aaa毛片在线|