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

springboot優(yōu)雅獲取前端參數(shù)的方法詳解

 更新時(shí)間:2024年03月18日 08:37:26   作者:xiezhr  
現(xiàn)在的項(xiàng)目基本上都是前后端分離的項(xiàng)目,如何打通前后端,接收前端傳過來的參數(shù)呢,這篇文章小編就來和大家詳細(xì)介紹一下springboot如何優(yōu)雅的獲取前端參數(shù)吧

寫在前面

對(duì)于初學(xué)者來說,困難的不是理論知識(shí),而是如何在程序中具體實(shí)現(xiàn)。

現(xiàn)在的項(xiàng)目基本上都是前后端分離的項(xiàng)目,如何打通前后端,接收前端傳過來的參數(shù)呢?

廢話不多說,這篇文章就來說一說接收前端參數(shù)的具體操作

一、獲取路徑中的值

1.1 核心代碼

@GetMapping("/getArticle/{id}")
public Article getArticle(@PathVariable("id") Long id){
    System.out.println("獲取到路徑中的值為:"+id);
    return parmsService.findArticleById(id);
}

1.2 測(cè)試結(jié)果

在訪問“http://localhost:8080/article/1” 時(shí),程序會(huì)自動(dòng)將URL中的模板變量{id} 綁定到通過@PathVariable注解的同名參數(shù)上,所以程序中可以獲取到id=1

二、獲取路徑中的參數(shù)

2.1 核心代碼

@RequestMapping(value = "/addUser/",method = RequestMethod.POST)
public String addUser(String  name,String sex,int age){
    System.out.println("獲取到參數(shù)中的值為:"+name+","+sex+","+age);
    return "添加文章成功";
}

2.2 測(cè)試結(jié)果

這里的參數(shù)和上面的不一樣,這里的參數(shù)是通過“=”隔開的,多個(gè)參數(shù)使用&分割。 例如測(cè)試?yán)又械?ldquo;http://localhost:8080/?name=小凡&sex=男&age=18

三、通過Bean接收對(duì)象參數(shù)

3.1 核心代碼

//①User
@Data
public class User {
    private  Integer id;
    private  String name;
    private String sex;
    private  Integer age;
}
 
 
//接收參數(shù)方法
@PostMapping("/addnewUser/")
public String addUser(User user){
    System.out.println(user);
    return  "添加用戶成功";
}

3.2 測(cè)試結(jié)果

這里直接將前端傳過來的參數(shù)映射到User 對(duì)象上

四、HttpServletRequest接收參數(shù)

4.1 核心代碼

@PostMapping("/addBook/")
public String addBook(HttpServletRequest request){
    String bookName = request.getParameter("bookName");
    String author = request.getParameter("author");
    System.out.println("獲取到參數(shù)中的值為:"+bookName+","+author);
    return "添加書籍成功";
}

4.2 測(cè)試結(jié)果

五、用@RequestParam接收參數(shù)

5.1 核心代碼

@GetMapping("/getParams")
public String getParms(@RequestParam("param1") String  param1,@RequestParam("param2") String param2){
    System.out.println("獲取到參數(shù)中的值為:"+param1+","+param2);
    return "Param1: " + param1 + ", parm2: " + param2;
}

5.2 測(cè)試結(jié)果

六、 用@RequestBody 接收json數(shù)據(jù)

6.1 核心代碼

//① 定義User實(shí)體對(duì)象
@Data
public class User {
    private  Integer id;
    private  String name;
    private String sex;
    private  Integer age;
}
//② 接收參數(shù)
@PostMapping("/addUsers")
public List<User> addUsers(@RequestBody List<User> users){
    System.out.println(""+users);
    return users;
}

6.2 測(cè)試結(jié)果

七、接收文件 MultipartFile

7.1 核心代碼

@PostMapping("/singleFileUpload")
public String singleFileUpload(@RequestParam("file") MultipartFile file){
    //文件存儲(chǔ)路徑
    final String BASE_PATH = "E:\\xiezhrspace\\parm-demo\\";
    if(file.isEmpty()){
        return "文件為空";
    }
    //獲取文件名
    String fileName = file.getOriginalFilename();
 
    try {
        //新建一個(gè)文件路徑
        File dest = new File(BASE_PATH + fileName);
        //判斷路徑是否存在,如果不存在就創(chuàng)建一個(gè)
        if(!dest.getParentFile().exists()){
            dest.getParentFile().mkdirs();
        }
        //將上傳文件保存到一個(gè)目標(biāo)文件當(dāng)中
        file.transferTo(dest);
 
    } catch (IOException e) {
        e.printStackTrace();
    }
    return "上傳成功";
}

7.2 測(cè)試結(jié)果

到此這篇關(guān)于springboot優(yōu)雅獲取前端參數(shù)的方法詳解的文章就介紹到這了,更多相關(guān)springboot獲取前端參數(shù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論