spring-data-jpa 有DruidSQL方言吗?

lawou6xi  于 2022-11-10  发布在  Spring
关注(0)|答案(1)|浏览(211)

我正在使用Spring Data JPA和Druid。
我添加了依赖spring-boot-starter-data-jpa和avatica-core,以便在我的项目中使用带有spring data jpa的druid JDBC驱动程序。

<dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jpa</artifactId>
        </dependency>
        <dependency>
            <groupId>org.apache.calcite.avatica</groupId>
            <artifactId>avatica-core</artifactId>
            <version>${avatica.version}</version>
        </dependency>

并像这样设置属性。

spring.datasource.url=jdbc:avatica:remote:url=http://localhost:8888/druid/v2/sql/avatica/
spring.datasource.driver-class-name=org.apache.calcite.avatica.remote.Driver
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQL8Dialect

最后,我检查了查询druid sql的工作情况。

@Repository
public interface SampleRepository extends JpaRepository<SampleEntity, String> {

    @Query(
        value = "SELECT w.page as page, count(w.page) as cnt " +
            "FROM wikipedia w " +
            "GROUP BY w.page " +
            "ORDER BY cnt DESC " +
            "LIMIT 10",
        nativeQuery = true
    )
    List<PageCount> findPageCountTopN();

但是,我想知道有一个jpa方言的DruidSQL。
在DruidSQL的官方文档中,没有关于DruidSQL方言的信息。
正如您所看到的,使用MySQL 8Dialect没有任何问题,而且它运行得很好。
但是,万一出现意想不到的问题,如果有这样的事情,我想应用它。

izkcnapc

izkcnapc1#

我想知道有一个jpa方言的DruidSQL?
Druid方言是+/- ANSI SQL。它添加了一些特性,删除了一些特性,但是在功能重叠的区域没有做任何发散。如果有一个ANSI SQL的JPA方言,那么它应该可以工作。

相关问题