如何配置在JNDI中的查询之前添加注释行

时间:2016-11-07 19:10:24

标签: java jndi

我有一个非常有趣的要求,在每个查询通过JNDI执行之前添加注释字符串(如/*Query Hint VPOD100*/)。有没有什么办法可以在每次查询之前修改查询和注释(或查询提示)?

请在jboss-as-7.2.0.Final中找到我正在使用的JNDI配置。

<datasource jndi-name="java:/avalon-ds" pool-name="avalon-ds" enabled="true" use-ccm="false">
    <connection-url>jdbc:teradata://env.corp.xyz.com/charset=UTF8,DBC_PORT=1025</connection-url>
    <driver-class>com.teradata.jdbc.TeraDriver</driver-class>
    <driver>TeradataDriver</driver>
    <new-connection-sql>select 1</new-connection-sql>
    <pool>
        <min-pool-size>2</min-pool-size>
        <max-pool-size>4</max-pool-size>
        <prefill>true</prefill>
        <use-strict-min>true</use-strict-min>
        <flush-strategy>IdleConnections</flush-strategy>
    </pool>
    <security>
        <user-name>user</user-name>
        <password>password</password>
    </security>
    <validation>
        <check-valid-connection-sql>select 1</check-valid-connection-sql>
        <validate-on-match>true</validate-on-match>
        <background-validation>true</background-validation>
        <background-validation-millis>3000</background-validation-millis>
    </validation>
    <timeout>
        <blocking-timeout-millis>60000</blocking-timeout-millis>
        <idle-timeout-minutes>5</idle-timeout-minutes>
    </timeout>
    <statement>
        <share-prepared-statements>false</share-prepared-statements>
    </statement>
</datasource>

如果有任何问题,请告诉我。谢谢你回答我的问题。

1 个答案:

答案 0 :(得分:0)

使用注释

代替评论
@Comment("Query Hint VPOD100")
... method

为了强制执行,可以使用注释处理,或者在验证中使用反射或挂钩。

不完全是你想要的,但更有效。