以前看过书,但现在忘了,String sql = "";   sql+="sdkfksdfksdf";一直下去,sql也自动变长啊,不知道说得对不对?

解决方案 »

  1.   

    stringBuffer和string各有用处,好好去查一下书哈!
      

  2.   

    怎么打印出PreparedStatement的调试语句,例如设置完参数后一个update语句?
      

  3.   

    1. 不能打印出赋值后的。PreparedStatement是比Statement好,至少你不必担心用户会输入非法字口串。还有其他方便的地方,自己看看书吧。
    2. 主要区别是String是字符串常量,就是说一生成一个String,就不可更改。而StringBuffer则是字符串变量,它的对象是可以扩充和修改的。如果不对字串进行修改,当然是String;如果要频繁修改,则用StringBuffer。仔细的还是要自己看看书啊。
      

  4.   

    1.UPDATE table4 SET m = 123456789 WHERE x = 100000000
    setString()此类函数是赋值的,用来填补“?”
    2.String类是固定长度的,StringBufferr是变长的,所以可以append
    String类用加号来可以,但实际原理是一样的。
    加号连接是先转换成好几个StringBuffer然后连接起来,这样消耗资源效率也低
    所以连接字符串建议用后者
      

  5.   

    谢谢各位指点啊,一直就知道干活,平时用一种方法就一直下去,看样子得看看书了,下班前结帐,
    UPDATE table4 SET m = 123456789 WHERE x = 100000000
    setString()此类函数是赋值的,用来填补“?”我也一直用,就是有时候想把赋值后的update语句打印出来,便于简单调试
      

  6.   

    当从一个文件中读出数据时,是不可能用String来处理的
      

  7.   

    1。你可以写一个类。。继承或组合PreparedStatement(建议用组合),加一条方法,就是打印SQL语句。PreparedStatement本身没有打印的方法。
    2。String,,是个特殊的对象,,再特殊也是个对象。当你进行+的时候,他要生成一个新的string,复制一个原来的,还要生成一个stringBuffer,在append一下,等等,,很麻烦(我也不太清楚,,呵呵)。而用StringBuffer此过程则要简单一些。如果string老是要++++++++++,,就不如sb的效率高了。