-1

これのセキュリティ面について心配していないと仮定すると、クライアント コンピューターは次の URL を呼び出します。

myurl.com/file.ext?Param1=value&param2=value2&param3=value3

次に、データベースへの単純な挿入を行いたい

Insert into myDB(Col1, Col2, Col3)VALUES(Param1, Param2, Param3)

入力に対して独自の文字ストリッピングを行いますが、これを行う方法について簡潔なものは何も見つかりません。

4

2 に答える 2

2

URL.getQuery()を参照してください 。URL のクエリ部分を返し、このメソッドを使用します。

URl u = new URL("myurl.com/file.ext?Param1=value&param2=value2&param3=value3");
Map<String, String> params = getQueryMap(u.getQuery());

public static Map<String, String> getQueryMap(String query)  
{  
    String[] params = query.split("&");  
    Map<String, String> map = new HashMap<String, String>();  
    for (String param : params)  
    {  
        String[] parts = param.split("=");
        String name = parts[0];  
        String value = parts[1];  
        map.put(name, value);  
    }  
    return map;  
}

これで、マップ内のすべてのパラメーターがアクセス可能になります。JDBCを使用してクエリをフォーマットし、実行します。

于 2013-03-13T14:53:56.953 に答える
0
    String s = "myurl.com/file.ext?Param1=value&param2=value2&param3=value3";
    int index = s.indexOf("Param1");
    String ss = s.substring(index);
    String[] arr = ss.split("&");
    for(int i=0; i < arr.length; i++){
        String[] value= arr[i].split("=");//value[i] will be value i+1th value
    }
于 2013-03-13T14:59:15.133 に答える