亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

SpringBoot 請求參數忽略大小寫的實例

瀏覽:2日期:2023-03-27 14:35:48

我就廢話不多說了,大家還是直接看代碼吧~

import java.io.IOException;import java.util.Collections;import java.util.Enumeration;import java.util.Map; import javax.servlet.FilterChain;import javax.servlet.ServletException;import javax.servlet.annotation.WebFilter;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletRequestWrapper;import javax.servlet.http.HttpServletResponse; import org.springframework.core.annotation.Order;import org.springframework.util.LinkedCaseInsensitiveMap;import org.springframework.web.filter.OncePerRequestFilter; @Order(1)//重點@WebFilter(filterName = 'caseInsensitiveFilter', urlPatterns = '/*')public class CaseInsensitiveRequestParameterNameFilter extends OncePerRequestFilter { public CaseInsensitiveRequestParameterNameFilter() {System.out.println('CaseInsensitiveRequestParameterNameFilter.CaseInsensitiveRequestParameterNameFilter()');} @Override protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain filterChain) throws ServletException, IOException { filterChain.doFilter(new CaseInsensitiveParameterNameHttpServletRequest(request), response); } public static class CaseInsensitiveParameterNameHttpServletRequest extends HttpServletRequestWrapper { private final LinkedCaseInsensitiveMap<String[]> map = new LinkedCaseInsensitiveMap<>(); public CaseInsensitiveParameterNameHttpServletRequest(HttpServletRequest request) { super(request); map.putAll(request.getParameterMap()); } @Override public String getParameter(String name) { String[] array = this.map.get(name); if (array != null && array.length > 0) return array[0]; return null; } @Override public Map<String, String[]> getParameterMap() { return Collections.unmodifiableMap(this.map); } @Override public Enumeration<String> getParameterNames() { return Collections.enumeration(this.map.keySet()); } @Override public String[] getParameterValues(String name) { return this.map.get(name); } } }

并在啟動類上加入@ServletComponentScan注解

補充:springboot 接受大寫參數時,接收值為空的解決

入參:

{ 'title':'文章標題1', 'content':'文章內容22222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222', 'DOI':'123', 'PMID':'1234', 'email':'[email protected]'}

springboot 接到的DOI和PMID 為null,頭字母改為小寫后正常。

原因及解決

是spring 使用@requestbody 接收時遵循駝峰命名規則,如果希望接收非駝峰的參數可以在對映的屬性上添加注解

@JsonProperty(value = 'DOI')private String DOI;

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持好吧啦網。如有錯誤或未考慮完全的地方,望不吝賜教。

標簽: Spring
相關文章:
主站蜘蛛池模板: 免费日韩在线观看 | 日韩在线视精品在亚洲 | 国产精品亚洲综合天堂夜夜 | 日韩欧美一级毛片在线 | 成人a毛片免费视频观看 | 国产乱码精品一区二区 | 欧美性视频在线激情 | 日本黄色免费网站 | 国产免费拍拍视频在线观看网站 | 精品国精品自拍自在线 | 91网视频在线观看 | eeuss影院www在线观看免费 | 欧美日韩国产在线观看一区二区三区 | 亚洲精品一区国产二区 | 高清影院|精品秒播3 | 久热精品视频 | 国产片久久 | 成人午夜视频在线 | 国产日韩欧美在线观看 | 成人做爰全过程免费看网站 | 欧美一欧美一级毛片 | 麻豆果冻精品一区二区 | 国产精品99久久久 | 精品成人乱色一区二区 | 一级黄网 | 在线观看免费黄视频 | 国产在线观看网址你懂得 | 国产182ty| 片在线观看视频免费 | 日韩成人片 | 黄色三级视频在线 | 99久久精品免费看国产麻豆 | 久久97久久97精品免视看秋霞 | 亚洲an日韩专区在线 | 一区二区日韩欧美 | 亚洲乱淫| 欧美一级特黄特黄做受 | 韩国一级特黄清高免费大片 | 亚洲阿v天堂2021在线观看 | 精品日韩欧美一区二区三区在线播放 | 亚洲国产国产综合一区首页 |