我荒廢的今日,正是昨日殞身之人祈求的明日
配置tomcat這一步的目的就是告訴tomcat如何連接數(shù)據(jù)庫(kù)可以分為兩種大的類型,每種類型又有很多種配置方式配置類型一;(直接配置的類型,這種方式最簡(jiǎn)單)
方法一:直接在tomcat_home/conf/localhost/下建立一個(gè)xml文件,文件名是<yourAppName>.xml例如我的工程名叫jndi,對(duì)應(yīng)的名字叫jdni.xml內(nèi)容如下:
說(shuō)明:這種配置需要告訴tomcat resource的內(nèi)容,resource應(yīng)用于什么地方第一種方法通過(guò)文件名知道了app的name第二種方式本身就在app內(nèi)部,所以name肯定知道兩種方式都要放在context中
配置類型二:(配置全局resource,然后通過(guò)resourcelink來(lái)映射)
步驟一:配置全局resource(這一步對(duì)于所有的配置都是一樣的)打開tomcat_home/conf/server.xml加入
步驟二:映射(映射可以配置在多個(gè)地方,也就有多個(gè)配置方法:)
方法一:(對(duì)比類型一的配置理解)直接在tomcat_home/conf/localhost/下建立一個(gè)xml文件,文件名是<yourAppName>.xml例如我的工程名叫jndi,對(duì)應(yīng)的名字叫jdni.xml加入如下內(nèi)容
方法三:(上邊兩種方法都是把全局的resource 映射給jndi這個(gè)web應(yīng)用,第三種方法就是把這個(gè)全局的resource直接公開給所有的應(yīng)用)在tomcat_home/conf/context.xml的<Context></context>之間加入<ResourceLink global="jdbc/test" name="jdbc/test" type="javax.sql.DataSource"/>運(yùn)行測(cè)試:打開ie,輸入http://localhost:8080/jndi/index.jsp看到success
常見錯(cuò)誤:1,Name jdbc is not bound in this Context2,Cannot create JDBC driver of class '' for connect URL 'null' conf localhost原因:大多數(shù)是因?yàn)榕渲昧巳值膔esource,但沒(méi)有l(wèi)ink造成的。解決:加入link就行了,link的方式見類型二的三種方法。
分析:看到上邊這么多方法,是否感覺(jué)眼花繚亂,其實(shí)不要死記配置,按照原理分析一下就好了。你需要的是告訴tomcat哪個(gè)應(yīng)用如何連接數(shù)據(jù)庫(kù)。
類型一的方式對(duì)應(yīng)一個(gè)應(yīng)用單獨(dú)使用這個(gè)配置的情況就是直接告訴tomcat"應(yīng)用名"? "連接數(shù)據(jù)庫(kù)需要的參數(shù)"
類型二的方式對(duì)應(yīng)多個(gè)應(yīng)用共享一個(gè)配置的情況這樣先配置server.xml告訴tomcat全局范圍的"連接數(shù)據(jù)庫(kù)需要的參數(shù)"然后映射,映射的時(shí)候1,如果不知道"app name(應(yīng)用名)"就只需要通過(guò)文件名來(lái)傳遞這個(gè)信息2,如果"app name"都知道就只需要加入映射的內(nèi)容3,如果要配置成全局公用的,就不需要"app name",本身放在tomcat的context.xml中
最后再次提醒一下:所有的配置必須放在<context></context>之間
Powered by: BlogJava Copyright © Kimi