0
我想在Oracle數據庫表中執行INSERT操作。在Oracle數據庫表中存儲字符串
樣本串我想插入是一個HTTP請求:
a=5&b=hello&date=2016/12/31
此字符串被存儲如下:
a=5&b=hello&date=2016%2F12%2F31
即,使用URL編碼的字符,而不是UTF-8編碼的串。
此前,我的字符串按預期以UTF-8格式存儲。 所以,我能夠檢索和處理它使用
string.split('/')
問題是什麼?我的開發環境中可以改變什麼? 這是DBMS方面的問題嗎?
感謝
編輯:
public static String func(HttpServletRequest request) {
String date = request.getParameter("date");
date.split("/"); IT WORKS!!!
}
public static String func(String url_stored_into_DB) {
String date = getDateFromUrl(url_stored_into_DB);
date.split("/"); IT DOESN'T WORK!!!
since it was stored with %2F
}
的URL存儲到數據庫:
//HttpServletRequest request comes in to the server
String url = request.toString().substring(beginIndex, endIndex);
stmt = conn.prepareStatement("INSERT INTO table (URL) VALUES (?)");
stmt.setString(1, url);
stmt.executeQuery();
stmt.close();
第二個字符串看起來像您在瀏覽器URL中看到的那樣編碼。你能向我們展示相關的Java代碼嗎? –
@TimBiegeleisen當HTTP請求進入服務器時,一切正常:例如,我可以獲取日期參數並在其上使用分割函數。如果我將url存儲到數據庫中,它將與轉義字符一起存儲,所以分割函數將不起作用 – Fab
顯示保存到數據庫的代碼? –