当前位置: 首页 > 知识库问答 >
问题:

与HikariCP+Spring+MS SQL Server一起使用的JTDS配置

秦滨海
2023-03-14

我一直在谷歌搜索JTDS(1.3.1)的配置,以便与HikariCP(2.4.3)、Spring(4.1.2)和MS SQL Server(2008)一起使用,但找不到完整且有效的示例。

<bean id="dataSource" class="com.zaxxer.hikari.HikariDataSource" destroy-method="close">
    <constructor-arg ref="hikariConfig" />
</bean> 

<bean id="hikariConfig" class="com.zaxxer.hikari.HikariConfig">
    <property name="poolName" value="springHikariCP" />
    <property name="connectionTestQuery" value="SELECT 1" />
    <property name="dataSourceClassName" value="${jdbc.dataSourceClassName}" />
    <property name="maximumPoolSize" value="${jdbc.maximumPoolSize}" />
    <property name="minimumIdle" value="${jdbc.minimumIdle}" />
    <property name="idleTimeout" value="${jdbc.idleTimeout}" />
    ....
    <property name="dataSourceProperties">
        <props>
            ....
        </props>
    </property>
</bean>
<bean id="dataSource" class="com.zaxxer.hikari.HikariDataSource" destroy-method="close">
    <constructor-arg ref="hikariConfig" />
</bean> 

<bean id="hikariConfig" class="com.zaxxer.hikari.HikariConfig">
    <property name="poolName" value="springHikariCP" />
    <property name="connectionTestQuery" value="${jdbc.connectionTestQuery}" />
    <property name="dataSourceClassName" value="${jdbc.dataSourceClassName}" />
    <property name="maximumPoolSize" value="${jdbc.maximumPoolSize}" />
    <property name="minimumIdle" value="${jdbc.minimumIdle}" />
    <property name="idleTimeout" value="${jdbc.idleTimeout}" />
    <property name="connectionTimeout" value="${jdbc.connectionTimeout}" />
    <property name="jdbcUrl" value="${jdbc.url}" />
    <property name="dataSourceProperties">
        <props>
            <prop key="user">${jdbc.username}</prop>
            <prop key="password">${jdbc.password}</prop>
            <prop key="cacheMetaData">${jtds.cacheMetaData}</prop>                              
        </props>
    </property>
</bean>

这正是我发布我的问题的原因,我希望看到一个完整的例子。但是,在Hikaricp的页面上,JTDS被列为支持。我很困惑。

共有1个答案

严亮
2023-03-14

以下作品:

<bean id="dataSource" class="com.zaxxer.hikari.HikariDataSource" destroy-method="close" depends-on="flyway">
    <property name="driverClassName" value="net.sourceforge.jtds.jdbc.Driver"/>
    <property name="connectionTestQuery" value="SELECT GETDATE()"/>
    <property name="maximumPoolSize" value="32"/>
    <property name="jdbcUrl" value="${dbUrl}"/>
    <property name="username" value="${dbUsername}"/>
    <property name="password" value="${dbPassword}"/>
</bean>

请注意ConnectionTestQuery属性,这是必需的,因此Hikari不会认为驱动程序符合JDBC4(jTDS符合3.0)。

 类似资料:
  • 我想在我现有的web应用程序中添加一个连接池,它是使用Spring Boot1.5.1制作的。 数据源配置在Application.Properties中进行,如下所示: 我不需要再做什么配置了,有了这个就够了。 那么,将hikaricp添加到我的application.properties中的最简单方法是什么呢?

  • 我最近将我的应用程序配置为使用SpringCloudConfig和Github作为配置存储库。 Spring靴-2.1。1.发布 我的应用程序几乎使用了所有现成的东西。我刚刚在我有HikariCP自动配置在后台发挥神奇的作用。 我正在刷新我的应用程序使用这个作业,调用方法上的刷新endpoint。 一切似乎都很好,但每次刷新配置时,我都会看到以下日志。这些日志显示HikariCP池在每次刷新时都会

  • 我试图将Hibernate与我的spring应用程序上下文联系起来。我正在成功地连接SessionFactory,但当我尝试调用getCurrentSession时,我看到以下错误: 我正在配置数据源会话工厂和事务管理器。我还指定了事务处理将是注释驱动的 下面是我的上下文XML: null 下面是我发现错误的类: 当这被称为sessionFactory时不是null,而是带有上述错误的错误。如果我

  • 我使用jTDS使ssl连接到SQL服务器2008数据库在我的java应用程序,这是运行在JRE 1.8. 当我在连接URL中配置ssl=request属性时,连接只是挂起在JRE 1.8中。然而,同样的事情在JRE 1.7中也可以很好地工作。 我试着用带有encrypt=true属性的MicrosoftJDBC驱动程序做同样的事情,它在JRE 1.7和1.8中都运行得非常好。 知道为什么会这样吗?

  • 问题内容: 我是Spring的新手。 我们正在使用Spring Security功能。数据库连接:JPA的eclipselink实现。数据库:MySql 使用spring security时,身份验证提供程序的配置如下- 但是在JPA中,我们没有定义数据源,我们将Persistence unit与provider一起使用 那么,我们如何配置身份验证提供程序,以便将JPA用于数据库连接? 数据源引用

  • 我想在我的Web应用程序中使用服务器托管连接池,现在我使用JdbcTemboard来获取连接。如何从WebSphere获取数据源并在我的应用程序中使用。