2014-10-17 46 views
-2

我有一個REST基於Java模塊上運行Tomcat和我打電話以下網址。當我撥打以下網址這是工作的罰款:問題定界符

https://xx.xx.xx.xx/emp/salary?query=(FirstName startswith anil) 

現在我想在URL多查詢支持上&分隔符的基礎,併爲我做了一些代碼如下變化。基本分割字符串的基礎&

String[] fArray = filterstr.split("&"); 

https://xx.xx.xx.xx/emp/salary?query=(FirstName startswith anil%26LastName startswith singh) 

%26基本上&

,並用前面的URL也工作正常。

的問題是,在我們的數據庫中,我們也支持姓名作爲"anil&kumar",意味着使用其他接口管理員可以創建與所有分隔符用戶姓名。

所以現在當你撥打第一個網址:query=(FirstName startswith anil%26kumar)時,它失敗了,因爲我們的分割代碼將此用戶分成了兩部分anil,kumar。然而,它應該是一個,以便它可以在數據庫匹配。

因此,任何想我怎麼能解決這個問題。

當我有以下查詢參數字符串,然後我能夠與&分離出來,採用分體式方法,我也得到2份

query= (FirstName startswith anil&LastName startswith singh) 
  • 第1部分:FirstName startswith anil
  • 第2部分:LastName startswith singh

但讓我們有查詢參數爲,

query= (FirstName startswith bob&smith&LastName startswith singh) 

現在使用拆分它將bob&smith分成2部分(bob,smith)但我不想因爲用戶是bob&smith。 拆分後返回 -

[FirstName startswith bob, smith, LastName startswith singh] 

想要更好的解決方案。第一,第二個查詢都應該可以工作。

回答

0
https://xx.xx.xx.xx/emp/salary?query=(FirstName=bob%26smith&LastName=singh) 

這應該很好。 我想這在我的機器上...我工作的罰款

,如果你的數據庫是使用上的名字劃分方法,然後做這樣的

https://xx.xx.xx.xx/emp/salary?query=(FirstName=bob|smith&LastName=singh) 

這是一個管道標誌,在拆分該