java.lang.IllegalStateException: No modifications are allowed to a locked ParameterMap問題的解決


    對request.getParameterMap()獲取的參數進行修改時,發現報異常顯示為java.lang.IllegalStateException: No modifications are allowed to a locked ParameterMap經查詢,發現java的原生對象是不允許修改的,如下代碼:

Map<String,String[]> m = getParaMap();

是不能對m進行直接修改,因為用等號賦值只是地址引用,並沒有改變內存空間,因此無法對之前產生的那個被鎖定的對象進行操作。

       解決方法:用new重新創建一個新的對象,重新申請一個內存空間,然后把鎖定的對象重新復制到新的空間中,將不可變變為可變。代碼如下:

Map<String,String[]> m = new HashMap<String,String[]>(getParaMap());


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM