有一个字符数组的内容为:"student a am i",请你将数组的内容改为"i am a student".
2015-10-31 16:13
471 查看
String param = req.getParameter("name_startsWith"); try { System.out.println("param1====="+new String(param.getBytes("ISO-8859-1"), "GBK")); System.out.println("param2====="+new String(param.getBytes("ISO-8859-1"), "GB2312")); System.out.println("param3====="+new String(param.getBytes("ISO-8859-1"), "UTF-8")); System.out.println("param4====="+new String(param.getBytes("GB2312"), "ISO-8859-1")); System.out.println("param5====="+new String(param.getBytes("GB2312"), "GBK")); System.out.println("param6====="+new String(param.getBytes("GB2312"), "UTF-8")); System.out.println("param7====="+new String(param.getBytes("GBK"), "ISO-8859-1")); System.out.println("param8====="+new String(param.getBytes("GBK"), "UTF-8")); System.out.println("param9====="+new String(param.getBytes("GBK"), "GB2312")); System.out.println("param10====="+new String(param.getBytes("UTF-8"), "GBK")); System.out.println("param11====="+new String(param.getBytes("UTF-8"), "GB2312")); System.out.println("param12====="+new String(param.getBytes("UTF-8"), "ISO-8859-1")); } catch (UnsupportedEncodingException e) { // TODO Auto-generated catch block e.printStackTrace(); }
js与后台编码不一致,转换:
js代码:客户端对url进行两次转码(也可能是一次):(str为中文)
参数及url(若是只需参数,就直接在js里面转参数就可以)
var url = 'policy.do?method=searchSuggest&word=' + str+"&now="+new Date().getTime();
url = encodeURI(url);
url = encodeURI(url);
servlet服务器段对参数值进行解码:
String word = request.getParameter("word");
word = java.net.URLDecoder.decode(word,"UTF-8");
例子:js:
/**** * 厂商自动完成功能 */ $(function() { $( "#mediaName_temp" ).autocomplete({ source: function( request, response ) { if(trim(request.term)!=""){ //alert("111"); $.ajax({ url: "/json/selectMedia.json", dataType: "json", data: { featureClass: "P", style: "full", maxRows: 12, name_startsWith: encodeURI(request.term) }, success: function( data ) { response( $.map( data.mediaList, function( item ) { return { label: item.mediaName, value: item.mediaName, id: item.id } })); } }); } }, minLength: 1, select: function( event, ui ) { document.getElementById("mediaId").value=ui.item.id ; document.getElementById("mediaName").value=ui.item.value ; document.getElementById("mediaName_temp").disabled="disabled"; }, open: function() { $( this ).removeClass( "ui-corner-all" ).addClass( "ui-corner-top" ); }, close: function() { $( this ).removeClass( "ui-corner-top" ).addClass( "ui-corner-all" ); } }); });
servlet:
@RequestMapping("/json/selectMedia.json") public ModelAndView selectMedia(HttpServletRequest req, HttpServletResponse resp, ModelMap modelMap, Media media) { String mediaName = req.getParameter("name_startsWith").trim(); try { mediaName = java.net.URLDecoder.decode(mediaName,"UTF-8"); } catch (UnsupportedEncodingException e1) { e1.printStackTrace(); } media.setMediaName(mediaName); List<Media> mediaList = mediaService.selectMediaList(media); //List<MediaDictionary> adTypeList = mediaDictionaryService.queryMediaDictionaryList("adType"); modelMap.put("mediaList", mediaList); //modelMap.put("adTypeList", adTypeList); return new ModelAndView(jsonView); }
相关文章推荐
- 糗事百科
- Java并发编程:volatile关键字解析
- C++学习笔记19——顺序容器的介绍
- JSON解析与序列化
- eclipse使用技巧
- 一些比较有参考价值的爬虫学习资料
- 如何选择AFNetworking版本
- Unity Assets目录下的特殊文件夹名称
- fedora 22 截图
- LLDB help 菜单
- UITabBarController
- PHP面向对象1.1简单的介绍
- 穷举法解决旅行商问题
- 获取手机照片UIImagePickerViewController
- Java Servlet原理学习(二)
- centos7.0 64位系统 安装PHP 支持 nginx
- fragment类onresume里面刷新操作处理
- 如何提高jQuery的性能探讨
- oracle存储过程实例
- Java网络(Socket编程)详解