JFox(J2EE应用服务器开源项目)

Last Modified: 2003.12.02

JFox数据源


jfox 数据源支持所有提供XA规范驱动程序的数据库,现在绝大多数数据库都已提供XA驱动, 包括Microsoft SQL Server,SQL Server的jdbc驱动可以在Microsoft的网站上下载到。

要添加一个数据源,可以在%JFOX_HOME%/conf/jfox-conf.xml中增加如下MX元素:

  <MX CLASSNAME="org.huihoo.jfox.mx.TxDataSourceServiceMX"

OBJECTNAME=":comp=TxDataSourceServiceMX">

    <METHOD NAME="mx_setDsName">

      <ARG TYPE="java.lang.String">TestDataSource</ARG>

    </METHOD>

    <METHOD NAME="mx_setDbUrl">

      <ARG TYPE="java.lang.String">jdbc:mysql://localhost/test</ARG>

    </METHOD>

    <METHOD NAME="mx_setUser">

      <ARG TYPE="java.lang.String">root</ARG>

    </METHOD>

    <METHOD NAME="mx_setPassword">

      <ARG TYPE="java.lang.String"></ARG>

    </METHOD>

    <METHOD NAME="mx_start"></METHOD>

  </MX>

这将创立一个名为TestDataSource的Mysql数据源,数据源的名称不仅用来唯一的标志一个数据源,也将用在jndi的名称, %DS_NAME%的数据源的jndi 名称为/datasource/%DS_NAME%,比如上面配置的DataSource将可以通过 ctx.lookup("datasource/TestDataSource")得到。

对于不同的数据源,URL的写法不一样,如下:
mysql: jdbc:mysql://localhost/test
Oracle: jdbc:oracle:thin:@localhost:1521:yang
DB2: jdbc:db2://localhost;databaseName=SAMPLE
MSSQL Server: (必须设置selectMethod =cursor)

jdbc:microsoft:sqlserver://localhost:1433; selectMethod =cursor;databaseName=db

注意:要使MSSQL Server支持XA JDBC驱动,需要在服务器上运行一段存储过程, 具体操作请从Microsoft网站下载MSSQL Server JDBC驱动后阅读其文档。