Snowflake 有精简版、标准版(精简版?)和 FIPS Java JDBC 驱动程序。我不需要 FIPS。
我曾假设“薄”表示轻量级,不需要 jar,而“厚”表示重,包括任何依赖的 jar。
因此,如果您想让应用程序加载速度更快、依赖冲突更少,那么精简会更好。
然而,我看到有关 Oracle 类型 1 到 4 驱动程序的讨论似乎暗示了相反的意思。
有什么区别?对于通过 JDBC 直接连接到 Snowflake 的 Spring Boot 应用程序,我应该选择哪一个?
=== 更新 1 ===
我尝试了两种雪花驱动程序。Maven 无法解析“精简”驱动程序所需的所有依赖项,因此为了节省时间,我选择了“标准”驱动程序,该驱动程序可与 Maven + Spring Boot 配合使用。
您误解了其中的区别。它们所包含的代码是相同的。
“fat jar” 是一个单独的 jar,它包含JDBC驱动程序和类路径上需要的所有其他内容。
“thin jar” 则不然。这并不意味着“它加载时占用的字节数更少”或“它的功能更少”。不,它们是一回事。如果您使用 thin jar,则必须提供依赖项。哪些呢?它们的 pom 文件列出了它们。
一般来说,fat jar 是愚蠢的东西;让您跳过某种适当的依赖管理的项目数量非常少,如果您有适当的依赖管理,则“thin jar”绝对更胜一筹(“thin”在这里是一个奇怪的名字;它存在的唯一目的是用一个词来传达“不是 fat jar”,并假设人们知道“fat jar”是俚语,意思是“包含所有内容的 jar”。
Fat jar 的缺点:
优点是,您不必“弄清楚”如何在要运行 snowflake-thin 的 JVM 上获取其依赖项。这是一个有点奇怪的优点,因为做这样的事情(通常)一点也不难;他们会发送一个 pom 文件。