欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

SpringMVC @GetMapping注解路徑?jīng)_突問題解決

 更新時(shí)間:2022年07月10日 15:42:46   作者:趙四司機(jī)  
MD5對(duì)密碼進(jìn)行加密存儲(chǔ)是常見的一種加密方式,本文主要介紹了Java雙重MD5加密實(shí)現(xiàn)安全登錄,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

在SpringMVC的入門學(xué)習(xí)中,我發(fā)現(xiàn)@GetMapping注解的使用要注意路徑?jīng)_突問題,在網(wǎng)上都沒找到類似我這樣的情況,所以我在這里將問題分享出來,希望遇到我這樣的問題的可以有個(gè)參考,但是為什么這樣就不行我還沒搞懂,希望知道的人可以在評(píng)論區(qū)或者私信告訴我。問題如下:我的controller層有兩個(gè)查詢操作,一個(gè)是按id查詢,一個(gè)是按name模糊查詢,一開始我的程序是

    @GetMapping("/{id}")
    public Result getById(@PathVariable Integer id) {
        if(id == 0){
            throw new BusinessException(Code.BUSINESS_ERR,"請(qǐng)規(guī)范您的操作!");
        }
        Book book = bookService.getById(id);
        Integer code = (book == null? Code.GET_ERR:Code.GET_OK);
        String msg = (book == null? "數(shù)據(jù)查詢失??!":"");
        return new Result(code,book,msg);
    }

    @GetMapping(value = ("/{name}"))
    public Result getByName(@PathVariable String name){
        //解決中文亂碼
        byte[] bytes = name.getBytes(StandardCharsets.ISO_8859_1);
        String Name = new String(bytes,StandardCharsets.UTF_8);

        List<Book> bookList = bookService.getByName(Name);
        Integer code = (bookList == null ? Code.GET_ERR:Code.GET_OK);
        String msg = (bookList == null? "系統(tǒng)繁忙,請(qǐng)稍后再試!":"");
        return new Result(code,bookList,msg);
    }

在這里插入圖片描述

此時(shí)編譯不報(bào)錯(cuò),用Apifox進(jìn)行測(cè)試

在這里插入圖片描述

在這里插入圖片描述

可以看到無論是想用id查詢還是用name查詢都無法查詢成功,說明程序無法識(shí)別哪個(gè)是按id查詢哪個(gè)是按name查詢這時(shí)候就想到如果在每個(gè)@GetMapping中指定具體路徑呢?下面來嘗試一下

@GetMapping("/getById/{id}")
@GetMapping(value = ("/getByName/{name}"))

運(yùn)行結(jié)果:

在這里插入圖片描述

在這里插入圖片描述

在這里插入圖片描述

可以看到通過id查詢可以查詢成功,但是通過name查詢時(shí)候無論是在路徑中添加參數(shù)還是自定義參數(shù)都無法查詢成功,這里我也搞不明白,希望知道原理的大佬可以告訴我,十分感謝!
最終我找到的解決方案是指定參數(shù)名稱(不知道這樣說對(duì)不對(duì),可以看代碼):

@GetMapping(value = ("/getById"))
    public Result getById(@RequestParam("id") Integer id) {
        System.out.println("id="+id);
        if(id == 0){
            throw new BusinessException(Code.BUSINESS_ERR,"請(qǐng)規(guī)范您的操作!");
        }
        //將可能出現(xiàn)的異常進(jìn)行包裝,轉(zhuǎn)換成自定義異常
        try{
            int i = 1/0;
        }catch (Exception e){
            throw new SystemException(Code.SYSTEM_TIMEOUT_ERR,"服務(wù)器訪問超時(shí),請(qǐng)稍后再試!",e);
        }
        Book book = bookService.getById(id);
        Integer code = (book == null? Code.GET_ERR:Code.GET_OK);
        String msg = (book == null? "數(shù)據(jù)查詢失??!":"");
        return new Result(code,book,msg);
    }

    @GetMapping(value = ("/getByName"))
    public Result getByName(@RequestParam("name") String name){
        //解決中文亂碼   要注意用SpringBoot時(shí)不需要進(jìn)行中文亂碼處理
        byte[] bytes = name.getBytes(StandardCharsets.ISO_8859_1);
        String Name = new String(bytes,StandardCharsets.UTF_8);

        List<Book> bookList = bookService.getByName(Name);
        Integer code = (bookList == null ? Code.GET_ERR:Code.GET_OK);
        String msg = (bookList == null? "系統(tǒng)繁忙,請(qǐng)稍后再試!":"");
        return new Result(code,bookList,msg);
    }

此時(shí)查詢:

在這里插入圖片描述

在這里插入圖片描述

要注意參數(shù)位置,此時(shí)可以看到兩者都查詢成功,至此問題解決,要是有大佬知道用

@GetMapping("/getById/{id}")
@GetMapping(value = ("/getByName/{name}"))

這種方法怎么做還請(qǐng)告訴我一下。

到此這篇關(guān)于SpringMVC @GetMapping注解路徑?jīng)_突問題解決的文章就介紹到這了,更多相關(guān)SpringMVC @GetMapping路徑?jīng)_突內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Spring IOC和aop的原理及實(shí)例詳解

    Spring IOC和aop的原理及實(shí)例詳解

    這篇文章主要介紹了Spring IOC和aop的原理及實(shí)例詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-11-11
  • java中關(guān)于內(nèi)部類的使用詳解

    java中關(guān)于內(nèi)部類的使用詳解

    本篇文章介紹了,在java中關(guān)于內(nèi)部類的使用詳解。需要的朋友 參考下
    2013-04-04
  • Java中try catch處理異常示例

    Java中try catch處理異常示例

    這篇文章主要給大家介紹了關(guān)于Java中try catch 的基本用法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-12-12
  • java 爬蟲詳解及簡(jiǎn)單實(shí)例

    java 爬蟲詳解及簡(jiǎn)單實(shí)例

    這篇文章主要介紹了java 爬蟲詳解及簡(jiǎn)單實(shí)例的相關(guān)資料,需要的朋友可以參考下
    2017-05-05
  • SpringBoot的@Value給靜態(tài)變量注入application.properties屬性值

    SpringBoot的@Value給靜態(tài)變量注入application.properties屬性值

    這篇文章主要介紹了SpringBoot的@Value給靜態(tài)變量注入application.properties屬性值,Spring是一個(gè)開源的框架,主要是用來簡(jiǎn)化開發(fā)流程,通過IOC,依賴注入(DI)和面向接口實(shí)現(xiàn)松耦合,需要的朋友可以參考下
    2023-05-05
  • 帶你走進(jìn)Maven的大門-最全Maven配置及集成idea工具總結(jié)

    帶你走進(jìn)Maven的大門-最全Maven配置及集成idea工具總結(jié)

    Maven項(xiàng)目對(duì)象模型(POM),是一個(gè)項(xiàng)目管理工具可以通過一小段描述信息來管理項(xiàng)目的構(gòu)建,報(bào)告和文檔的軟件.那我們想要在IDEA中使用Maven得進(jìn)行一些配置,接下來我們具體看一下是如何配置使用的,需要的朋友可以參考下
    2021-06-06
  • Java URL自定義私有網(wǎng)絡(luò)協(xié)議

    Java URL自定義私有網(wǎng)絡(luò)協(xié)議

    URI與URL的區(qū)別 一.先來序言一段 二.協(xié)議的自定義的理解 三.自定義協(xié)議與URL的關(guān)系 四.URL自定義私有協(xié)議實(shí)戰(zhàn) 五.后話,自定義mineType解析器
    2016-04-04
  • SpringBoot項(xiàng)目中配置application.yml中server.port不生效的問題

    SpringBoot項(xiàng)目中配置application.yml中server.port不生效的問題

    這篇文章主要介紹了SpringBoot項(xiàng)目中配置application.yml中server.port不生效的問題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • windows10 JDK安裝及配置環(huán)境變量與Eclipse安裝教程

    windows10 JDK安裝及配置環(huán)境變量與Eclipse安裝教程

    這篇文章主要介紹了windows10 JDK安裝及配置環(huán)境變量與Eclipse安裝,本文圖文并茂給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-10-10
  • java中為什么要謹(jǐn)慎使用Arrays.asList、ArrayList的subList

    java中為什么要謹(jǐn)慎使用Arrays.asList、ArrayList的subList

    這篇文章主要介紹了java中為什么要謹(jǐn)慎使用Arrays.asList、ArrayList的subList,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-02-02

最新評(píng)論