springboot的分布式开发中,偶尔会遇到中文参数传递乱码的问题,并且当前遇到的是只有某一台电脑上才出现该情况,为此在接受参数的工程接口处添加了一个判断是否中文,如果否则做转换(前提是这个参数必须只能是中文)

 1 @RequestMapping(value = "/getCarList", method = RequestMethod.GET)
 2     public ResultObject getCarByCpName(@RequestParam(value = "cpName",required = true)String cpName,@RequestParam(value = "carNo",required = false)String car_no) {
 3
 4         char[] isc = cpName.toCharArray();
 5         boolean is = true;
 6         for (char c : isc) {
 7             is = isChinese(c);
 8             if (!is) break;
 9         }
10         //boolean isc = isChinese(cpName.getBytes());
11         if (!is) {
12             try {
13                 cpName = new String(cpName.getBytes("ISO-8859-1"),"UTF-8");
14             } catch (Exception e) {
15                 e.printStackTrace();
16             }
17         }
18         ResultObject rst = commonService.getCarByCpName(cpName, car_no);
19         return  rst;
20     }
21
22     /**
23      * 判断字符是否是中文
24      *
25      * @param c 字符
26      * @return 是否是中文
27      */
28     public static boolean isChinese(char c) {
29         Character.UnicodeBlock ub = Character.UnicodeBlock.of(c);
30         if (ub == Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS
31                 || ub == Character.UnicodeBlock.CJK_COMPATIBILITY_IDEOGRAPHS
32                 || ub == Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS_EXTENSION_A
33                 || ub == Character.UnicodeBlock.GENERAL_PUNCTUATION
34                 || ub == Character.UnicodeBlock.CJK_SYMBOLS_AND_PUNCTUATION
35                 || ub == Character.UnicodeBlock.HALFWIDTH_AND_FULLWIDTH_FORMS) {
36             return true;
37         }
38         return false;
39     }

如上所示,因为参数设置了必须有,所以没做空判断,首先将字符串转换为char数组,然后循环检测所有字符,如果不是中文则将原字符串做转换

转载于:https://www.cnblogs.com/binTke170120/p/8085707.html

中文乱码之springboot框架中两工程之间参数传递乱码相关推荐

  1. SpringBoot 框架中 使用Spring Aop 、创建注解、创建枚举类 使用过程记录

    1.开始 在Springboot框架中引入AOP <dependency><groupId>org.springframework.boot</groupId>&l ...

  2. SpringBoot框架中解决日期展示问题

    SpringBoot框架中解决日期展示问题 参考文章: (1)SpringBoot框架中解决日期展示问题 (2)https://www.cnblogs.com/w-essay/p/11453751.h ...

  3. SpringBoot框架中各层(DTO、DAO、Service、Controller)理解

    粗略理解 View层→Controller层(响应用户请求)→Service层(接口→接口实现类)→DAO层,即Mapper层(抽象类:xxxMapper.java文件,具体实现在xxxMapper. ...

  4. 微软算法100题11 求二叉树中两节点之间的最大距离

    第11 题 求二叉树中节点的最大距离... 如果我们把二叉树看成一个图,父子节点之间的连线看成是双向的, 我们姑且定义"距离"为两节点之间边的个数. 写一个程序, 求一棵二叉树中相 ...

  5. 二叉树中两节点之间最短路径

    折腾了一下午,在参考 liuyi1207164339帖子和 ethannnli的帖子的基础上搞定了这个问题.刚开始头真的大了,感觉有点超出能力范围了.分析了他们的思路,求解这个二叉树中两节点的最短路径 ...

  6. Koa框架教程,Koa框架开发指南,Koa框架中文使用手册,Koa框架中文文档

    我的博客:CODE大全:www.codedq.net:业余草:www.xttblog.com:爱分享:www.ndislwf.com或ifxvn.com. Koa -- 基于 Node.js 平台的下 ...

  7. 【Maven】一文就解决springboot框架中创建maven所有问题

    声明 以下问题均为我创建项目中所遇到的问题,不一定具有普适性.另外错误案例也没有既是保存,还望海涵 下载Maven 首先进入maven官网,地址在这里 windows选择下载图中这个,然后我们会得到一 ...

  8. 【Java】使用springboot框架中的注解@ManyToOne遇到的坑

    包如下的错:java.lang.IllegalStateException: Cannot call sendError() after the response has been committed ...

  9. SpringBoot框架中的DAO(mapper)层、Entity层、Service层、Controller层

    Entity层:实体层 数据库在项目中的类 Entity层是实体层,也就是所谓的model,也称为pojo层,是数据库在项目中的类,该文件包含实体类的属性和对应属性的set.get方法: DAO层: ...

最新文章

  1. 帝国cms底部代码哪里改?要修改版权和统计代码
  2. 【智驾深谈】Mobileye,用单目视觉点亮自动驾驶
  3. 给Eclipse提速的7个技巧
  4. 循环类里面的每一个属性
  5. 【LeetCode - 122】买卖股票的最佳时机 II(贪心 或 dp)
  6. php方法参数,关于PHP方法参数的那一些事
  7. 河北金融学院计算机与科学,河北金融学院计算机科学与技术专业2016年在河北理科高考录取最低分数线...
  8. *** cannot be resolved or is not a field
  9. 文件打包,下载之使用PHP自带的ZipArchive压缩文件并下载打包好的文件
  10. oracle删除列的限制,深入理解Oracle索引(10):索引列字符类型统计信息的32位限制...
  11. vector 赋值_从零开始学习R语言(一)——数据结构之“向量”(Vector)
  12. 语音处理:Python实现音频文件声道分离批量处理
  13. java生成压缩文件拒绝访问,FileOutputStream访问被拒绝:JAVA
  14. python编写自定义函数print_triangle(n)_Python 实验8 函数(1).doc
  15. 治疗 | 如何识别和处理消极想法
  16. 记录一次teamview无法远程连接对方teamview的过程
  17. 【渝粤教育】广东开放大学 数据库应用 形成性考核 (26)
  18. nginx转发http请求
  19. for…in循环语句应用
  20. 多个excel快速合并到一个excel的多个sheet

热门文章

  1. oracle视图可以带日期变量么,创建视图时日期字段如何只都天
  2. pytorch torch.Tensor.view
  3. pytorch torch.full
  4. Spark WordCount
  5. 2.5 不匹配数据划分的偏差和方差
  6. 从网络到分布式-负载均衡
  7. Docker学习总结(34)——新手使用Docker的11条准则
  8. Myeclipse学习总结(15)——Eclipse/MyEclipse中Maven项目常见问题解决汇总
  9. Java基础学习总结(108)——Java常见面试题再总结
  10. Jquery学习总结(3)——Jquery获取当前城市的天气信