2011-08-05 41 views
0

林Delphi程序員字符串函數和Java中再次使用使用Java相當多長的一段時間了,現在又回到上一個項目,我確定,有可能被用於函數或對象基本上用參數創建一個字符串,並將像PreparedStatement一樣替換所述參數。現在對我來說,我不記得這個函數被調用了什麼,或者即使它存在於PreparedStatement之外,或者我想象的是什麼?快速參數就像在Java

例如,我想利用這樣的字符串:

字符串SS = 「(CODE,CATEGEORY,說明)VALUES(:CODE,:CATEGEORY,:DESCRIPTION)」;

,並能夠做到這一點

ss.setParam(0, "thisValue"); 
ss.setParam(1, "thus_value"); 

等等

任何想法

+0

史蒂夫有你在找什麼。你會惱火,你不能做ParamByName,但它的工作原理是一樣的。德爾福處理,更好的IMO – Preston

回答

2
MessageFormat mf = new MessageFormat(
    "(CODE, CATEGEORY, DESCRIPTION) VALUES ({0}, {1}, {2})"); 

System.out.println(mf.format("thisValue", "thatValue", "theOtherValue")); 
+0

這是我一直在尋找!謝謝! – Brendan

+2

@Brendan,如果要將其作爲SQL執行,請確保自己免受注入攻擊。使用PreparedStatement將爲您做到這一點。 –

+0

它主要是內部的。 – Brendan

0

你說的是 'StringBuffer的'?如果是的話,你可以簡單地追加查詢到它並創建一個查詢。

+0

韋爾我認爲它的MessageFormat。事實上,我剛剛纔知道類似MessageFormat的東西。應該感謝所有這! :) –