问题标签 [scalikejdbc]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
578 浏览

scalikejdbc - 批量迭代大结果集(如 foreach,但分组)

我正在使用 ScalikeJDBC 获取一个大表,将数据转换为 JSON,然后调用每个包含 50 个 JSON 对象(行)的 Web 服务。这是我的代码:

这可行,但不幸的是,中间列表很大并且消耗大量内存。我正在寻找一种以“惰性”方式迭代结果集的方法,类似于foreach,但我想迭代 50 行的批次。ScalikeJDBC 有可能吗?


我通过填充和清除可变列表而不是使用来解决内存问题grouped,但我仍在寻找更好的解决方案。

0 投票
1 回答
334 浏览

java - 在scala中重用java连接池

我有一个遗留的 Java 应用程序,并且希望在使用 scala 扩展应用程序时重用其数据库连接处理。

现有应用程序这样做是为了使用数据库(省略了 try/catch):

在我尝试的scala代码中:

并称之为:

我收到此错误(DB 和 NamedDB 版本)“ Connection pool is not yet initialized.(name:'”,名称为 default 或 remotedb):

我假设我可以从 BoneCP connectionHandle 以某种方式获得与 scalikejdbc 兼容的连接?

编辑:解决方案如下,注意DB readOnly etc.不应该使用,因为它依赖于DBs.setupAll()和 application.conf,这不适用于这种特定情况

0 投票
1 回答
623 浏览

scala - Scalikejdbc teradata“连接池尚未初始化。”

我正在尝试将 ScalikeJdbc 与 Teradata 一起使用,但似乎无法使其正常工作。我有一个配置文件:

代码如下所示:

运行此示例时,它会引发异常:Connection pool is not yet initialized. 我在这里缺少什么?

0 投票
1 回答
1055 浏览

postgresql - 播放框架 2.5:ScalikeJDBC:连接池在启动时尚未初始化

升级到 Play 的 2.5 版本后,当我尝试在生产模式下运行项目时遇到了这个问题。似乎在这个版本中我需要手动初始化池ScalikeJDBC:连接池尚未初始化。(名称:'default) 我不明白我该怎么做。我添加了这个类:

并在我的模块中将其标记为 EagerSingleton:

现在,当我在生产中运行我的项目时,我看到:

[info] 应用程序 - 为数据源“默认”创建池 [info] padDefaultDBApi - 数据库 [默认] 连接在 jdbc:postgresql://localhost:5432/inetshop [debug] 应用程序 - [debug] 应用程序 - 数据库已初始化糟糕,无法启动服务器。com.google.inject.CreationException: 无法创建注入器,看到如下错误:

1) 注入构造函数时出错,java.lang.IllegalStateException: Connection pool is not yet initialized.(name:'default) at controllers.Application.(Application.scala:20)

所以我的初始化程序成功运行但仍然面临这个问题。需要帮助来解决这个问题。

0 投票
1 回答
1306 浏览

scala - 解决 sbt 中的 jar 加载冲突

当两个特定的 sbt 插件一起添加到其构建定义中的项目时,我在 sbt 启动时收到以下错误。这些 sbt 插件之一是scalikejdbc,另一个是我自己的,显然它们在项目的构建定义中相互包含会导致 sbt 启动时出现此错误:

显然,看起来每个插件都带来了不同版本的scala.reflect.macros ,从而导致了这个错误。我可以在 sbt 插件的罐子里戳,确实其中一个似乎带来了scala/reflect/macros/blackbox.class―</p>

― 然而,很难肯定地断定在这个早期启动阶段 sbt 加载了什么,以便确定这里涉及到这个包的哪些版本以及哪些依赖项带来了它们。

感谢您就如何进行此调查提出建议!


只是为了完整起见——我只在下面列出了 sbt 给出的完整错误——但我真诚地怀疑它会添加任何信息,所以你可能会忽略它。

0 投票
0 回答
169 浏览

scalikejdbc - scalikejdbc - 如果不存在则插入

如何在 ScalikeJDBC QueryDSL 中或以 ScalikeJDBC 提供的最优雅的方式编写以下代码?

0 投票
1 回答
430 浏览

scala - Scalikejdbc 结果集迭代器

我正在使用 scalikejdbc 访问一个巨大的表。我的理解是 - 它在我可以映射或迭代它们之前将所有行提取到内存中。

目前我有一个使用 rxscala Observable 的实现,非常简单。但是接收器比读取sql慢,然后我因为缓冲而得到OutOfMemory。这是我目前的制片人,可以观察到:

我知道 SQL.foreach 方法,但它获取一个回调方法并返回 Unit。我的背景是.NET。无法弄清楚自己如何使用 scalikejdbc 在 scala 中正确实现一个简单的迭代器,我可以将其用于并行处理?

0 投票
2 回答
427 浏览

mysql - 如何使用参数执行 sql 查询?

执行上面的代码,没问题,但是这个sql“select * from exchange_transaction”不固定。我想要这个 sql 像一个参数,就像下面(速记代码.....)

但执行后出现错误消息是

我该怎么办,如何解决异常?

0 投票
1 回答
573 浏览

scalikejdbc - 在scalikejdbc中使用like子句查询

谁能给我一个示例,说明如何在具有动态值的 scalikejdbc 中使用 like 子句。我使用了以下查询,但没有用

0 投票
1 回答
1116 浏览

scala - 监控 JDBC 连接池

我有时会遇到以下异常

在使用play frameworkscalikeJDBC连接到MariaDB实例时

谷歌搜索显示它可能是连接没有正确关闭,或者我应该将我的线程池配置为更大

现在进入实际问题:

我想进一步调查,但我需要一种方法来监控所述连接线程池,理想情况下以各种图表的形式,但如何?

我不知道如何为 netty 配置 JMX 和 MBean(Play 使用的是 netty,对吗?),或者是否有可能并且谷歌没有帮助。我什至不知道这是否是正确的方法,所以我给任何可以提供关于如何进行的甜蜜步骤的人提供大量的积分(甚至更多)