字符串参数传递回车换行不见了-参数传递-spring框架

1、问题场景

前端axios发送get请求,携带参数:

  • gwmc: 字符串,岗位名称
    • 改字段内容最开始由前端表格导入,存入数据库,在查询数据库获取
    • 表格导入,内容可能会换行

查询数据库内容,后端为Java web项目,所用框架

  • springboot
  • mybatis
  • oracle

2、具体问题

: gwmc查询参数为待换行的字符串,后端request接收之后,在获取,换行不见了变为一个空格。

在这里插入图片描述

  • 后端request.getParameter(“gwmc”),得到的参数是:基层班站 副站长,回车换行变为一个空格

然后查询的时候当然不会匹配上,导致查询不出数据。

3、解决方案

3.1、HttpServletRequest request 方式接收参数改为对象或者变量接收

当参数个数少于比较少,可以直接使用变量接收;当参数个数比较多的时候,建议封装对象,用对象接收参数。

此时接收的字符串原样保留回车换行,查询正常。

3.2、编码解码

这种方式就是在前端发送异步请求之前,对改字段编码,比如url编码,然后,后端接收之后以同样的方式解码;

对比:

  • 优点不论内容如何,都能原样恢复
  • 缺点:多执行了编码和解码,过程变复杂和开销变大

思考:

  1. HttpServletRequest request 底层是怎么样接收参数,request.getParameter(“gwmc”)又是怎么样解析参数的呢?
  2. 变量或者对象接收参数,底层有是怎么实现的呢?

因为目前对框架底层没啥研究,暂时不了解底层原理,有兴趣的小伙伴,可自行查询相关文档,等后续深入学习框架底层的时候,在研究。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

gaog2zh

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值