Я новичок в весенней загрузке и пытаюсь сделать что-то новое.В настоящее время у меня есть 3 класса pojo, которые расширяются в пользовательском классе.Я пытаюсь присвоить значение may @PathVariable partnerid во всем классе метода идентификатора сеттера, как показано ниже.Мой вопрос заключается в том, предоставляет ли весенняя загрузка любую аннотацию @, которая вызывает мою переменную в моем классе Partner.Я пытаюсь обновить свой запрос пользователя, добавив идентификатор партнера в методе установки.
@RestController
@RequestMapping(value = "/push/fire/")
public class PushIdController {
private final static Logger log = LoggerFactory.getLogger(PushIdController.class);
@Autowired
private ApplicationEventPublisher applicationEventPublisher;
@RequestMapping(value = "/partner/{partnerId}", method = RequestMethod.POST)
@annotation("new Partner().setPartnerId("PathVariable value")")
public User userLogin(@PathVariable("partnerId") String partnerId, @RequestBody User user){
return user;
}
}
Класс партнера
public class Partner {
private String partnerId;
public String getPartnerId() { return partnerId; }
public void setPartnerId(String partnerId) {
this.partnerId = partnerId;
}
@Override
public String toString() {
return "Partner{" + "partnerId='" + partnerId + '\'' + '}';}
}
Класс пользователя
public class User {
private final static Logger log = LoggerFactory.getLogger(User.class);
private String userId;
private Role role;
private Video video;
public void setUserId(String userId) {
log.info("set-User-id");
// getPartnerId null
this.userId = userId + "_" + getPartnerId() ;
}
public void setRole(Role role) {
log.info("set-User-Role");
this.role = role;
}
public void setVideo(Video video) {
log.info("set-User-Video");
this.video = video;
}
}
Класс роли
public class Role {
private String roleId;
public void setRoleId(String roleId) {
// getPartnerId null
this.roleId = roleId + "_" + getPartnerId();
}
}
Класс видео
public class Video {
private String videoId;
public void setVideoId(String videoId) {
this.videoId = videoId + "_" + getPartnerId();
}
}
Запрос Json:-
{
"userId": "1d3ejjj",
"userName": "Nabeel.amd93@gmail.com",
"phone": "03153817177",
"role": {
"roleId": "d423",
"name": "nabeel ahmed"
},
"video": {
"videoId": "123456d",
"h": "25",
"w": "25"
}
}
Ответ Json: -
{
"userId": "1d3ejjj_1d2d6dq0jhjhk",
"userName": "Nabeel.amd93@gmail.com",
"phone": "03153817177",
"role": {
"roleId": "d423_1d2d6dq0jhjhk",
"name": "nabeel ahmed"
},
"video": {
"videoId": "123456d_1d2d6dq0jhjhk",
"h": "25",
"w": "25"
}
}
, как мы знаем, когда мы нажимаем на запрос, Json назначает метод вызова вызывающего метода Pojo во время вызова метода, я просто хочу обновить идентификаторкаждого класса.Я хотел бы обновить, как показано ниже
user.setUserId(user.getUserId+"_"+partnerId);
user.getVideo().setVideoId(user.getVideo().getVideoId+"_"+partnerId);
и soo на .....