我目前正在使用 Cassandra 2 的 Datastax Cassandra 驱动程序来执行 cql3。这可以正常工作。我开始使用PreparedStatement's
:
Session session = sessionProvider.getSession();
try {
PreparedStatement ps = session.prepare(cql);
ResultSet rs = session.execute(ps.bind(objects));
if (irsr != null) {
irsr.read(rs);
}
}
有时我会在日志中收到来自驱动程序的警告:
Re-preparing already prepared query . Please note that preparing the same query more than once is generally an anti-pattern and will likely affect performance. Consider preparing the statement only once.
这个警告是有道理的,但我不确定我应该如何重用PreparedStatement
?
PreparedStatement
我应该在构造函数/初始化方法中创建所有我的而不是简单地使用它们吗?
但是当多个线程同时使用相同PreparedStatement
的(特别是调用PreparedStatement.bind()
绑定对象)时,这是否顺利