2011-08-05 3 views
0

Im델ファイのプログラマーであり、以前はかなり長い間Javaを使用していましたが、今度はJavaのプロジェクトに戻ってきました。基本的にはパラメータ付きの文字列を作成し、PreparedStatementのようにそのパラメータを置き換えます。今私の人生のために、私はこの関数が呼び出されているか、それがPreparedStatementの外に存在していても、私が物事を想像しているのかを覚えていませんか?Javaの文字列の関数のようなクイックパラメータ

文字列SS = "(CODE、CATEGEORY、DESCRIPTION)VALUES(::CODE:CATEGEORY、:DESCRIPTION)"

は例えば、私はこのような文字列を取りたいです。

この

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

などを行うことができる...

あなたは正しいです任意のアイデア

+0

あなたが探しているものがあります。あなたはParamByNameを行うことができないことに腹を立てるでしょうが、まったく同じように動作します。デルファイはそれをより良く処理しました – 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

Welll私はそのMessageFormatを考えています。実際、私はMessageFormatのようなものを知りました。このすべてに感謝しなければならない! :) –

関連する問題