Jboss3.0-Tomcat4.03的資料庫的配置(以Oracle為例) (轉)

worldblog發表於2008-01-31
Jboss3.0-Tomcat4.03的資料庫的配置(以Oracle為例) (轉)[@more@] 

 :namespace prefix = o ns = "urn:schemas--com::office" />

一、請將classes12.zip加入classpath中去。

二、請參況h-service.xml編寫db-service.xml檔案

請開啟serverdefaultdeploy目錄下的hsqldb-service.xml檔案,這就是一個3.0_4.03下實現連線的例子,它是連線hsql資料庫的它的內容如下:

 

<!-- ===================================================================== --&gt

<!--  --&gt

<!--  JBoss Server Configuration   --&gt

<!--  --&gt

<!-- ===================================================================== --&gt

 

<!-- $Id: hsqldb-service.xml,v 1.2.2.5 2002/06/23 21:25:58 d_jencks E$ --&gt

 

 

 

  <!-- ==================================================================== --&gt

  <!-- New ConnectionManager setup for default hsql dbs  --&gt

  <!-- Build jmx- (build/build.sh all) and view for config documentation --&gt

  <!-- ==================================================================== --&gt

 

 

 

  <!-- Include a login module configuration named HsqlDbRealm.

  Update your login-conf.xml, here is an example for a

  ConfiguredntityLoginModule:

 

 

 

 

  sa

  sa

 

  jboss.jca:service=LocalTxCM,name=hsqldbDS

 

 

 

 

  NOTE: the application-policy name attribute must match 

  SecurityainJndiName, and the

  module-option name = "managedConnectionFactoryName"

  must match the name of the ConnectionManager you are configuring here.

  --&gt

  <!--uncomment out this line if you are using the DbRealm above

  HsqlDbRealm

  --&gt

 

 

  <!--embedded mbean--&gt

 

 

  DefaultDS

 

 

  :hsqldb:hsql://localhost:1476

  org.hsqldb.jdbcDriver

  sa

 

 

 

 

<!--Below here are advanced properties --&gt

  <!----&gt

  jboss.jca:service=RARDeployment,name=JBoss LocalTransaction JDBC Wrapper

  jboss:service=Hypersonic

 

 

 

 

  <!--embedded mbean--&gt

 

 

  0

  50

  5000

  15

  <!--criteria indicates if Subject (from security domain) or app supplied

  parameters (such as from getConnection(user, pw)) are used to distinguish

   connections in the pool. Choices are

  ByContainerAndApplication (use both),

  ByContainer (use Subject),

  ByApplication (use app supplied params only),

  ByNothing (all connections are equivalent, usually if adapter supports

  reauthentication)--&gt

  ByContainer

 

 

  jboss.jca:service=CachedConnectionManager

 

  jboss.security:service=JaasSecurityManager

 

  java:/TransactionManager

 

  <!--make the deploy! hack till better deployment--&gt

  jboss.jca:service=RARDeployer

 

 

 

 

  <!-- Moved to end to test anonymous depends --&gt

 

 

 name="jboss:service=Hypersonic">

  1476

  true

  default

  false

 

 

在<!--  --&gt之間沒有用的一些說明,所以去掉這一些說明後經過改寫一個存取oracle資料庫的服務的XML的檔案是Oracledb-service.xml

 

 

 

 

 

 

  <!--embedded mbean--&gt

 

 

  OracleDS

 

 

  jdbc:oracle:thin:@cuipeng:1521:ora8

  oracle.jdbc.driver.OracleDriver

  system

  manager

 

 

 

  jboss.jca:service=RARDeployment,name=JBoss LocalTransaction JDBC Wrapper

 

 

 

  <!--embedded mbean--&gt

 

 

  0

  50

  5000

  15

  ByContainer

   

 

  jboss.jca:service=CachedConnectionManager

 

  jboss.security:service=JaasSecurityManager

 

  java:/TransactionManager

 

  jboss.jca:service=RARDeployer

 

 

 

請大家對比兩個檔案的不同之外,很容易寫出其它資料庫的存取服務了,主要的是下面這個部分

 

 

  OracleDS<!--這個地方是JNDI的名字在或中的是java:/OracleDS  - ->

 

 

  jdbc:oracle:thin:@cuipeng:1521:ora8

  oracle.jdbc.driver.OracleDriver

  system

  manager

 

 

  jboss.jca:service=RARDeployment,name=JBoss LocalTransaction JDBC Wrapper

還有就是各個部分的名字了name=oracleDS

三、測試資料的連線列子(我用的是jsp)

你必需要編寫.war或.ear包來測試一個簡易的做法就是:

一、在deploy目錄下建立oracle-test.war目錄。

二、在oracle-test.war目錄下建立-INF目錄,其中有兩個檔案

jboss-web.xml和web.xml

內容分別是

jboss-web.xml內容是

web.xml內容是

/P>

  "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"

  "">

 

三、在oracle-test.war目錄下建立新檔案index.jsp其內容是

 

Test Oracle DB

 

 

 

InitialContext ctx = new InitialContext();

DataSource ds = (DataSource) ctx.lookup("java:/OracleDS"); //注意這裡哦和前面對應

Connection conn = ds.getConnection();

 

 

Statement stmt = conn.createStatement();

ResultSet rs = stmt.executeQuery(" * FROM TAB");

 

 

while ( rs.next() ) {

out.println( rs.getString("TNAME") + "
");

}

 

conn.close();

 

%>

 四、請訪問

一切都測試OK的,如果有什麼不對的地方請指哦,我也是學習的。

SQLSERVER資料庫的測試

在deploy目錄下建立SqlServerDB-service.xml檔案。

其內容如下

   

 

 

  SqlServerDS

 

 

  jdbc:microsoft:sqlserver://asen:1433;DatabaseName=infomag

  com.microsoft.jdbc.sqlserver.SQLServerDriver

  sa

  bodaasen

 

 

  jboss.jca:service=RARDeployment,name=JBoss LocalTransaction JDBC Wrapper

 

 

 

 

  0

  50

  5000

  15

  ByContainer

 

 

  jboss.jca:service=CachedConnectionManager

  jboss.security:service=JaasSecurityManager

  java:/TransactionManager

  jboss.jca:service=RARDeployer

 

 

 

三、測試資料的連線列子(我用的是jsp)

你必需要編寫.war或.ear包來測試一個簡易的做法就是:

一、 在deploy目錄下建立sqlserver-test.war目錄。

二、在sqlserver-test.war目錄下建立WEB-INF目錄,其中有兩個檔案

jboss-web.xml和web.xml

內容分別是

jboss-web.xml內容是

web.xml內容是

/P>

"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"

"">

 

三、在sqlserver-test.war目錄下建立新檔案index.jsp其內容是

 

Test DB

 

 

 

InitialContext ctx = new InitialContext();

DataSource ds = (DataSource) ctx.lookup("java:/SqlServerDS");

Connection conn = ds.getConnection();

 

 

Statement stmt = conn.createStatement();

ResultSet rs = stmt.executeQuery("SELECT * FROM user_infor");

 

 

while ( rs.next() ) {

out.println( rs.getString(1) + "");

}

 

conn.close();

 

%>

一切OK

結果是

Test SQL SERVER DB

001

002

003

admin


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10752043/viewspace-998967/,如需轉載,請註明出處,否則將追究法律責任。

相關文章