JBOSS中配置JNDI数据源



JBOSS中配置JNDI数据源。

项目中使用了spring注入的方式实例化数据源 1.在spring中的配置
<bean id=”dataSource”
class=”org.springframework.jndi.JndiObjectFactoryBean”>   <property name=”jndiName”>     <value>DataSource</value>   </property> </bean>
2.JBOSS配置数据源需要配置文件,jboss-4.2.2.GA\docs\examples\jca中用各种数据库的配置文件的实例。
oracle的配置文件为:oracle-ds.xml 打开,修改里面的内容
<datasources>
  <local-tx-datasource>
    <jndi-name>DataSource</jndi-name>
    <use-java-context>false</use-java-context>
<connection-url>jdbc:oracle:thin:@localhost:1521:orclcn</connection-url>
<driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
    <user-name>sxwbxx</user-name>     <password>sxwbxx</password>
<exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.OracleExceptionSorter</exception-sorter-class-name>
    <metadata>
      <type-mapping>Oracle9i</type-mapping>     </metadata>
  </local-tx-datasource>   <local-tx-datasource>
    <jndi-name>DataSource2</jndi-name>
    <use-java-context>false</use-java-context>
<connection-url>jdbc:oracle:thin:@localhost:1521:orclcn</connection-url>
<driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
    <user-name>sxwbxx</user-name>     <password>sxwbxx</password>
<exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.OracleExceptionSorter</exception-sorter-class-
   2014下半年教师资格证统考大备战  中学教师资格考试  小学教师资格考试  幼儿教师资格考试  教师资格证面试
name>
    <metadata>
      <type-mapping>Oracle9i</type-mapping>     </metadata>
  </local-tx-datasource> </datasources>
有几个数据源就写几个<local-tx-datasource>,如上,是两个数据源。
3.然后将oracle-ds.xml复制到E:\jboss-4.2.2.GA\server\default\deploy中。 4.如果在启动时提示找不到数据源,则部署项目的数据源名称前加”java:”. 例如:
<bean id=”myDataSource”
class=”org.springframework.jndi.JndiObjectFactoryBean”>   <property name=”jndiName”>     <value>java:pcis</value>   </property> </bean>
至此,数据源就算是配好了
5.Jboss有一个默认的数据源DefaultDS,使用Jboss内置的HSQLDB数据库。实际应用中你可能使用不同的数据库,如 MySql、MsSqlServer、Oracle等。各种数据库的数据源配置模版你可以在[Jboss安装目录]\docs\examples\jca目录中找到,默认名称为:数据库名 + -ds.xml。不管你使用那种数据库都需要把他的驱动类Jar包放置在[Jboss安装目录]\server\default\lib目录下,放置后需要启动Jboss服务器。
本实例使用的数据库是 mysql-5.0.22使用驱动 Jar 包如下:Mysql : mysql-connector-java-3.1.13-bin.jar
数据源配置文件的取名格式必须为 xxx–ds.xml , 如 :mysql-ds.xml , mssqlserver-ds.xml , oracle-ds.xml 。
数据源文件配置好后需要放置在 [jboss 安装目录 ]/server/ config-name /deploy 目录下 , 本教程采用的配置名为: default , 所以路径为 [jboss 安装目录 ]/server/default/deploy 目录.
MySql 数据源的配置:定义一个名为 DefaultMySqlDS 的 Mysql 数据源,连接数据库为 zhaosoft ,数据库登录用户名为 root ,密码为 admin ,数据库驱动类为
org.gjt.mm.mysql.Driver 。大家只需修改数据库名及登录用户名密码就可以直接使用。 mysql-ds.xml
<datasources>
  <local-tx-datasource>
    <jndi-name>zhaosoft</jndi-name>
<connection-url>jdbc:mysql://localhost:3306/foshanshop?useUnicode=true&amp;characterEncoding=GBK</connection-url>
    <driver-class>org.gjt.mm.mysql.Driver</driver-class>     <user-name>root</user-name>     <password>admin</password>
<exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.MySQLExceptionSorter      </exception-sorter-class-name>      <metadata>
      <type-mapping>mySQL</type-mapping>      </metadata>
  </local-tx-datasource>  </datasources>
数据源发布后,你可以在 http://localhost:8080/jmx-console/ 找到,你可以点击 name=DefaultMySqlDS,service=ManagedConnectionPool 进入连接池属性修改界面。其中 MaxSize 属性指定了最大连接数, InUseConnectionCount 代表目前正在使用的连接数,一旦 InUseConnectionCount 大于 MaxSize ,数据库连接将会报错,这种情况一般都是因为手工操作jdbc,在使用完后没有立刻释放掉连接引起的。
转自:http://wenku.baidu.com/link?url=a7TlurX4spXStBPMXX3DtmxH0FrvzwmiaD9Tni05vwwrfDZADgjA238x78M2iGqgwUO3z_2_KV-wjgig-W4jNZUhZbox0w-0JmPSyQbDm9q