【Java】SpringMVC参数接收(二):JSON、URI、文件

1、获取JSON参数

java 复制代码
@RequestMapping("/hello")
@RestController
public class HelloSpring {
    @RequestMapping("/t10")
    public String t10(@RequestBody UserInfo userInfo){
        return userInfo.toString();
    }
}

2、获取URI中的参数

(1)获取单个参数

java 复制代码
@RequestMapping("/hello")
@RestController
public class HelloSpring {
    @RequestMapping("/t11/{articleId}")
    public String t11(@PathVariable Integer articleId){
        return "articleId: " + articleId;
    }
}

(2)获取多个参数

java 复制代码
@RequestMapping("/hello")
@RestController
public class HelloSpring {
    @RequestMapping("/t12/{name}/{age}")
    public String t12(@PathVariable("name") String username,@PathVariable Integer age){
        return "name: " + username + "; age: " + age;
    }

}

3、获取文件

java 复制代码
@RequestMapping("/hello")
@RestController
public class HelloSpring {
    @RequestMapping("/f1")
    public String f1(@RequestPart MultipartFile file){
        return "获取文件的名字为:" + file.getOriginalFilename();
    }
}

加上关键字@RequestPart,并将获取的文件添加到另一个目录下

java 复制代码
@RequestMapping("/hello")
@RestController
public class HelloSpring {
    @RequestMapping("/f2")
    public String f2(@RequestPart MultipartFile file) throws IOException {
        String filename = "/Users/liuwenwen/Desktop/学习/比特/Test" + file.getOriginalFilename();
        file.transferTo(new File(filename));
        return "成功获取文件的名字为:" + file.getOriginalFilename();
    }
}
相关推荐
堕2743 分钟前
JavaEE初阶——《计算机是如何工作的》
java·java-ee
无心水9 分钟前
【时间利器】4、JavaScript时间处理全解:Date/moment/dayjs/Temporal
开发语言·前端·javascript·状态模式·openclaw·date/moment·dayjs/temporal
0xDevNull11 分钟前
Apache RocketMQ 完全指南
java·rocketmq
XiaoLeisj15 分钟前
Android 文件存储实战:从应用私有目录读写到网络文件落盘与公共存储接入
android·java·网络·文件操作
踩着两条虫15 分钟前
AI 驱动的 Vue3 应用开发平台 深入探究(二十五):API与参考之Renderer API 参考
前端·vue.js·人工智能
踩着两条虫15 分钟前
AI 驱动的 Vue3 应用开发平台 深入探究(二十四):API与参考之Provider API 参考
前端·vue.js·ai编程
茶本无香18 分钟前
JVM调优介绍 + 面试题标准答案(高级)
java·jvm·面试
创梦流浪人20 分钟前
soli-admin一款开箱即用的RBAC后台项目
java·spring boot·vue3·springsecurity
恋猫de小郭21 分钟前
Android Studio Panda 2 ,支持 AI 用 Vibe Coding 创建项目
android·前端·flutter
南山love22 分钟前
spring-boot多线程并发执行任务
java·开发语言