我有一个简单的查询,当我在mysql控制台上执行它时只需0.2秒。但是当我从我的runnable java jar中通过jdbc执行这个查询时,获取数据大约需要15秒(20000行)。
这个查询非常简单,我的WHERE子句中的字段已编入索引,我只选择了两列。
我尝试了BoneCP连接池和简单的jdbc连接。但在这两种情况下,结果几乎相同。看起来在从mysql到java端获取数据时需要花费太多时间,但我无法想象如何。所以我无法提出解决方案。
查询示例:
SELECT eventType, eventId FROM users WHERE uid=55;
uid被编入索引。它从mysql控制台需要0.2秒,但通过我的jar需要15秒。顺便说一句,15秒实际上是执行executeQuery()时所花费的时间。
注意:在我发布这个问题之前,我在这里搜索过,但找不到真正的答案。
解决。请参阅下面的评论