我知道第一个是同步的,后面的一个是非同步的,响应时间更快。StringBuffer或StringBuilder用于我的查询
我使用StringBuffer
来追加SQL查询。转移到StringBuilder
会使它更快(我的问题特别是关于SQL)?
建议围绕SQl查询追加使用StringBuilder
吗?
我当前的代码
public boolean saveData (Connection conn,MyObject) throws SQLException {
..
PreparedStatement pstmt = null;
ResultSet rs = null;
try{
StringBuffer sSubQry = new StringBuffer();
sSubQry.append (" select ID, STATEID, TYPEID, LANGID, SEQ, ");
sSubQry.append (" SECTIONSEQ, CODE, NAME, INPUTNAME, ");
sSubQry.append (" .., .., ..,");
sSubQry.append (" .., .., ..,");
..
..
pstmt = conn.prepareStatement(sSubQry.toString());
rs = pstmt.executeQuery();
while (rs.next())
{
..
}
}
,将其传输到StringBuilder
有任何+ve
或-ve
效果
public boolean saveData (Connection conn,MyObject) throws SQLException {
..
PreparedStatement pstmt = null;
ResultSet rs = null;
try{
StringBuilder sSubQry = new StringBuilder();
sSubQry.append (" select ID, STATEID, TYPEID, LANGID, SEQ, ");
sSubQry.append (" SECTIONSEQ, CODE, NAME, INPUTNAME, ");
sSubQry.append (" .., .., ..,");
sSubQry.append (" .., .., ..,");
..
pstmt = conn.prepareStatement(sSubQry.toString());
rs = pstmt.executeQuery();
while (rs.next())
{
..
}
}
建议不要使用SQL查询追加。你为什么需要这样做? – Siyual
@Siyual我的查询太长了 –
检查['PreparedStatement'](http://docs.oracle.com/javase/7/docs/api/java/sql/PreparedStatement.html) – sam