最近一個小朋友,問了我一個急劇鬱悶的問題,java平臺開發的一個問卷調查系統,源代碼是基於SQLSERVER2000的,如今換成2005怎麼弄,還把代碼傳過來讓我幫忙改,我拒絕,這須要改代碼嗎?2000和2005的JDBC驅動包都同樣的怎麼會須要改呢?我問報什麼錯,說can’t classload :。。。。一看就知道沒找到驅動包,我說你把驅動包加上去,小夥說還錯,我火大了,遠程一看我無語了,他們用的是JNDI方式,小夥加死了WEB-INF/lib下面的驅動這輩子也起不來服務。 java
最後讓他把驅動加入到tomcat/lib下面,才OK。小夥號稱學習JAVA一年之久。已經知道JDBC怎麼回事情,知道J2EE架構,我暈啊。我後來講你這個是JNDI方式的數據鏈接,驅動要放到容器項目的LIB下面,一臉茫然,我說tomcat是一個實現servlet的容器你知道不?一臉茫然。他來已經項目下面的不都是放到WEB-INF/lib下面嗎?是啊,你說的沒錯,但是你如今用的是容器上面的服務資源,你的數據庫鏈接資源(DateSource)是在容器上面提供的,因此至關於JDBC的鏈接程序在容器級別。仍是一臉茫然。。。因而乎我有衝動把所有的severlet容器和web項目的關係和他說一邊。結果小夥來一句「我想放棄JAVA。。。。」如今的孩子爲何沒有一個完整系統的學習和研究的過程啊。。。。 web