本章节涵盖了如何为 Tomcat 配置 Parasoft JDBC 驱动器。Tomcat 的配置可以通过数据源配置或 java.sql.Driver 配置来实现。最佳方法取决于你的应用程序是如何配置的。

数据源配置

若要配置 Tomcat 数据源以使用 Parasoft JDBC 驱动程序,请完成以下内容:

  1. 将 Parasoft JDBC 驱动程序 jar 文件拷贝到全局 lib 目录,该目录直接在 tomcat 根下。
  2. 编辑包含数据源资源定义的每个 context.xml 文件,如下(可能有几个 context.xml 文件需要编辑,因为它们可以在 webapps 和全局配置级别找到):
    1. type 修改为要使用的 Parasoft 数据源的类名。可用的值取决于当前使用的数据库供应商 JDBC 驱动程序。请查阅 JDBC Driver Implementation Classes 以获得更多详情。
    2. 添加 factory ,并将其设置为 com.parasoft.xtest.jdbc.virt.driver.ParasoftDataSourceFactory
    3. 设置 virtualizeServerUrlvirtualizeGroupId
      比如:

      <Resource name="<original name>" auth="<original auth>"
      type="com.parasoft.xtest.jdbc.virt.driver.oracle.OracleDataSource" factory="com.parasoft.xtest.jdbc.virt.driver.ParasoftDataSourceFac-tory"
      virtualizeGroupId="hibernateOracle"
      virtualizeServerUrl="http://localhost.parasoft.com:9080"
      user="<original user>"
      password="<orignal password>"
      url="<original url>"/>


      还在资源上设置了所需属性(virtualizeGroupIdvirtualizeServerUrl)。不需要系统属性。
      不改变以 original 开始的任何字段(包括 url, name, user, password)。在上面的例子中, url 字段可以设置为 jdbc:oracle:thin:@//host:1521/db

java.sql.Driver Configuration

请查阅 用于独立或其他应用程序服务器平台的 JDBC 配置

可选方法:调用原始数据源

如果可以更容易地引用现有数据源(例如,如果你有许多选项集),或者使用自定义数据源工厂,则可以调用原始数据源。
若要配置 Tomcat 数据源以调用原始数据源,请执行以下操作:

  1. 将 Parasoft JDBC 驱动程序 jar 文件拷贝到全局 lib 目录,该目录直接在 tomcat 根下。
  2. 在 server.xml 或 context.xml 文件中,添加一个包含信息的新资源来调用原始数据源。
    1. 将此资源的名称修改为 AUT 将调用的 JNDI 数据源名称。这应该是原始数据源的名称。你可以将原始数据源的名称修改为类似 jdbc/nameLIVE [user defined]的内容。
    2. 添加一个名为 targetDataSource 的属性。这将是原始数据源和 JNDI 名称。这就是新数据源调用原始数据源的方式。
    3. 添加 factory,并将其设置为 com.parasoft.xtest.jdbc.virt.driver.ParasoftDataSourceFactory。
    4. 设置 virtualizeServerUrl 和 virtualizeGroupId。

例如,假设你有这个原始数据源:

<?xml version="1.0" encoding="UTF-8"?> 
<Context>
   <Resource name="jdbc/mysqlDBlive" auth="Container"
        type="javax.sql.DataSource" 
        username="12345" password="xxxxx" 
        driverClassName="com.mysql.jdbc.Driver" 
        url="jdbc:mysql://boa.parasoft.com:3306/test" 
        maxActive="8"/>

下面是等效的 Parasoft 数据源:

   <Resource name="jdbc/mysqlDB" auth="Container"
       factory="com.parasoft.xtest.jdbc.virt.driver.ParasoftDataSourceFactory"
       targetDataSource="jdbc/mysqlDBLive"
       virtualizeServerUrl="http://localhost:9080" 
       virtualizeGroupId="tomcat-target-data-source" 
       virtualizeServerPath="somePath"
       />
</Context>

注意:

  • 还在资源上设置了所需属性(virtualizeGroupId 和 virtualizeServerUrl)。不需要系统属性。
  • 推荐的最佳实践是添加 virtualizeServerPath,以指示驱动程序将向哪个虚拟化服务器路径发送请求信息。一旦创建了资产,就需要将其部署在相同的路径上。这允许你仅将数据发送到此单一资产。
  • No labels