Jndi配置數據源

範例環境:Myeclipse6.0、tomcat6.0、sqlserver2005。
配置實錄:
                首先,把sqlserver的jar包導入到項目的lib和tomcat的lib中(兩個都要)。 
                範例一:
                            在項目的META-INF下面新建一個context.xml文件,文件內容:
<?xml version="1.0" encoding="UTF-8"?>
<Context>
 <Resource name="jdbc/test" auth="Container"
  type="javax.sql.DataSource" username="sa" password="ltkj"
  driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"
  url="jdbc:sqlserver://192.168.1.110:1433;databaseName=Think" maxActive="8" maxIdle="4" />
</Context> 
屬性我就不一一講了。
然後在項目的web.xml中加上配置:
<resource-ref>
   <res-ref-name>jdbc/test</res-ref-name>
   <res-type>javax.sql.DataSource</res-type>
   <res-auth>Container</res-auth>
  </resource-ref> 
 其中res-ref-name要與上面的name一致,type也要一致,auth也是。
最後在項目中使用:
javax.naming.Context context=new javax.naming.InitialContext() ;

javax.sql.DataSource ds=(DataSource) context.lookup("java:comp/env/jdbc/test"); 
java.sql.Connection connection=ds.getConnection(); 
這樣數據庫鏈接對象就創建。
其中lookup是用jndi查找剛纔配置的jdbc/test 


範例二:
導包和調用和web.xml配置都一致,我就不重複了。
區別在於:把之前的項目中的context.xml的內容複製到tomcat下的conf下的context.xml裏,全部覆蓋掉。
其他都一樣。

範例三:
其他都一樣,我就主要說下區別部分:
在tomcat的conf下的catalina下的localhost文件夾內建一個跟項目同名的xml文件。比如我現在的項目名是:Demo_test,那麼xml文件名爲Demo_test.xml
內容有點改動:
<?xml version="1.0" encoding="UTF-8"?>
<Context docBase="F:\workspace\Demo_test\WebRoot" path="/Demo_test" reloadable="true">
 <Resource name="jdbc/test" auth="Container"
  type="javax.sql.DataSource" username="sa" password="ltkj"
  driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"
 url="jdbc:sqlserver://192.168.1.110:1433;databaseName=Think" maxActive="8" maxIdle="4" />
</Context>
注意其中的docBase需要定位到本項目的web根目錄。path可以採用相對路徑。

範例四:
如果多個項目都用這個配置源的話,你也可以改tomcat的conf下的server.xml文件。(還沒嘗試)
其他應該都一樣。
主要區別:在server.xml下的Engine節點下的Host節點下配置一個context節點。
<Context path="" docBase="www" reloadable="false">
              <!-- for mssql -->
                                        <Resource name="jdbc/wizbankds" auth="Container"
              type="javax.sql.DataSource" driverClassName="net.sourceforge.jtds.jdbc.Driver"
              url="jdbc:jtds:sqlserver://localhost:1433/wizbank"
              username="sa" password="sasa"/>
內容就是這樣了。目測跟第三點一樣啊,這個我是從匯思項目中直接copy過來的。

OK,完畢。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章