calvin-207 |
|
|||
日歷
統計
導航留言簿文章檔案搜索最新評論
|
今天天氣已經轉涼了呀!
明天開始要早點6.30分起床了!不然時間不夠了。 今天講的書Tomcat數據源。 傳統的JDBC操作分為四種: 1.加載去數據庫的驅動程序(通過classpath映射找到驅動) 2.通過DriverManage類取得連接對象(Connection) 3.通過鏈接取得PreparedStatement對象,編寫sql操作語句,進行crud操作。 4.數據庫操作是屬于資源操作,運行完成以后要關閉自愿。 今天學習的是在tomcat前提下配置的數據源,既然是在tomcat那么必然要對tomcat進行配置: 首先還是要先來解釋下JNDI這個名詞。 命名與目錄借口。 1.拷貝數據庫驅動程序到tomcat/comman/lib目錄下。 2.修改Tomcat的server.xml文件。 <context·····> <Resource name = "jdbc/mldn" -->>設置一個匹配名字,在項目web.xml中要設置用到。 auth = "Container" -->>這個一聽是連接池的設置屬性吧。(有Container 和Application兩個屬性,一般都選用Container) type = "javax.sql.Datasource" -->>所有的鏈接池里面的鏈接都要用Datasource獲得,所以一定要讓鏈接指向這個庫。 maxActive = "100" -->>設置最大鏈接數 minIdle = "10" -->>設置最小保存在鏈接池里面的鏈接數。 maxWait = "10000" -->>最大等待時間,如果再等待時間內有鏈接空閑的話就可以繼續取得連接,但是如果超過這個時間的話將對數據庫的操作失 敗。這個是毫秒數,這個數表示為10S username = "root" --->>鏈接的數據庫的用戶名。 password = "root123" -->>數據庫用戶的密碼。 DriverClassName = "" -->>驅動程序 url = "" -->>數據庫的地址 > </Resource> </context> 3.修改項目中的web.xml -->>這個設置的主要目的是要讓他讀取到Tomcat中<resource>屬性中的值。 <resource-ref> <description>DB DRIVER</description> -->>這個僅僅是描述,可以在程序中取得,現在還體現不到他又什么用。 <res-ref-name>jdbc/mldn</res-ref-name> -->>這個名字跟Tomcat中<resource>屬性中的name匹配的。通過這個名字找到Tomcat中的配置。 <res-type>javax.sql.Datasource</res-type> -->>跟Tomcat中<resource>屬性中的type匹配的。 <res-auth>Container</res-auth> -->>跟Tomcat中<resource>屬性中的auth匹配的. <resource -ref> 4.在項目中具體的讀取方式:(取的Connection pool中的鏈接) A.初始化名稱,查找上下文。 B.通過名稱(JNDI)查找Datasource C.通過Datasource取得鏈接。 eg: String jndi = "java:comp/env/jdbc/mldn" Context ctx = InitialContext(); Datasource ds = (Datasource) ctx.lookUp(jndi); Connection conn = ds.getConnection(); java:comp/env/這個是javaee規范特定的在Tomcat中沒有實現,其他服務器的話都已經實現,換句話說,其他地方只要用server中的name屬性即可。 |
![]() |
|
Copyright © 木子火勺文武 | Powered by: 博客園 模板提供:滬江博客 |