栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何在Spring中将RequestHeader转换为自定义对象

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何在Spring中将RequestHeader转换为自定义对象

基本上我已经完成了评论中的建议。我将仅提供简短示例。假设我们有下一个控制器和用户POJO:

import org.springframework.web.bind.annotation.RestController;import org.springframework.web.bind.annotation.GetMapping;import org.springframework.web.bind.annotation.RequestHeader;@RestControllerpublic class SimpleController {    @GetMapping("/user")    public String greeting(@RequestHeader(name = "userId") User user) {        return "Hey, " + user.toString();    }}public class User {    private String id;    private String firstName;    private String lastName;    ...}

然后,我们将创建转换器:

import org.springframework.core.convert.converter.Converter;import org.springframework.stereotype.Component;@Componentpublic class UserFromHeaderConverter implements Converter<String, User> {    @Override    public User convert(final String userId) {        // fetch user from the database etc.        final User user = new User();        user.setId(userId);        user.setFirstName("First");        user.setLastName("Last");        return user;    }}

测试示例:

curl --header "userId: 123" localhost:8080/user

结果将是:

Hey, User{id='123', firstName='First', lastName='Last'}

顺便说一下,我已经使用了下一个版本:

spring-boot:2.0.3 and spring-web:5.0.7



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/647749.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号