将 Squirrel 客户端连接到嵌入式 Teiid 服务器

Connecting Squirrel Client to Embedded Teiid Server

我有一个 Spring 引导项目,我在其中有一些 csv 文件并将它们转换为实体并根据我的要求查询它们。对于这种方法,我使用的是 Teiid Spring Boot Starter,它正在启动一个嵌入式服务器 -

这是控制台启动日志 -

Starting embedded database: url='jdbc:teiid:spring;PassthroughAuthentication=true;useCallingThread=true;autoFailover=true;waitForLoad=5000;autoCommitTxn=OFF;disableLocalTxn=true', username='null' ````

pom.xml


    <dependencies>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-web</artifactId>
            </dependency>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-data-jpa</artifactId>
            </dependency>
            <dependency>
                <groupId>org.teiid</groupId>
                <artifactId>teiid-spring-boot-starter</artifactId>
                <version>1.1.0</version>
            </dependency>
            <dependency>
                <groupId>org.projectlombok</groupId>
                <artifactId>lombok</artifactId>
                <scope>provided</scope>
            </dependency>

            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-test</artifactId>
                <scope>test</scope>
            </dependency>

            <dependency>
                <groupId>com.teiid</groupId>
                <artifactId>teiid-12.1.1-jdbc</artifactId>
                <version>12.2.1</version>
                <scope>system</scope>
                <systemPath>${project.basedir}/src/main/resources/teiid-12.2.1-jdbc.jar</systemPath>
            </dependency>

        </dependencies>

application.properties


    spring.application.name=Teiid-spring-boot

    spring.teiid.model.package=com.example.demo.model
    spring.teiid.file.parent-directory=src/main/resources/csv

    #######
    logging.level.org.teiid.spring=TRACE


    spring.main.allow-bean-definition-overriding=true
    spring.jpa.show-sql=true
    spring.jpa.properties.hibernate.format_sql=true

我安装了 Squirrel SQL 客户端,也为 Teiid 添加了驱动程序。 teiid-12.2.1-jdbc.jar

Squirrel SQL 使用的连接设置 -

name - Teiid
example url - jdbc:teiid:spring
website url - http://teiid.org

但是在连接时出现以下错误 -

teiid: JDBC Driver class not found
class java.lang.ClassNotFoundException: org.jboss.modules.ModuleLoadException

有多个问题需要解决。

  1. 您不需要 pom.xml
  2. 中的 teiid-12.1.1-jdbc 依赖项
  3. teiid.jdbc-enable=true 添加到您的 application.properties,这将为您构建的应用程序打开一个 jdbc 端口 31000
  4. 运行 你的申请
  5. 然后将 Teiid JDBC 驱动程序添加到 SquirreL(您似乎已经完成了)
  6. 将 URL 用作 jdbc:teiid:spring@mm://localhost:31000,其中 localhost 是主机所在的位置 运行 您的 teiid-spring 应用程序。