CFSDN nhấn mạnh vào việc tạo ra giá trị thông qua mã nguồn mở. Chúng tôi cam kết xây dựng một nền tảng chia sẻ tài nguyên để mọi người làm CNTT có thể tìm thấy thế giới tuyệt vời của riêng mình tại đây.
Bài đăng trên blog CFSDN này giải quyết vấn đề thiếu một số thuộc tính của @RequestBody. Bài đăng được tác giả thu thập và biên soạn. Nếu bạn quan tâm đến bài viết này, hãy nhớ thích nó.
Mục lục
- @RequestBody một số thuộc tính bị thiếu
- Mô tả vấn đề
- Triển khai JavaBean
- Triển khai bộ điều khiển
- Hiển thị yêu cầu giao diện Postman
- kết luận
- thuộc tính tiêm springboot @RequestBody đang trống
- Các thuộc tính của đối tượng là
- Giải pháp của tôi
@RequestBody một số thuộc tính bị thiếu
Mô tả vấn đề
Triển khai JavaBean
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
hai mươi mốt
hai mươi hai
|
công cộng
lớp học
Xác minhBạn bè mớiÁp dụngYêu cầu
thực hiện
Có thể tuần tự hóa {
/**
* Mã ứng dụng
*/
riêng tư
ApplyId dài;
/**
* Kết quả đánh giá đúng: đồng ý sai: từ chối
*/
riêng tư
Boolean là Chấp nhận;
công cộng
Dài getApplyId() {
trở lại
áp dụngId;
}
công cộng
vô hiệu
setApplyId(Áp dụng dàiId) {
cái này
.applyId = applyId;
}
công cộng
Boolean getAccept() {
trở lại
chấp nhận;
}
công cộng
vô hiệu
setAccept(chấp nhận Boolean) {
isAccept = chấp nhận;
}
}
|
Triển khai bộ điều khiển
?
1
2
3
4
5
6
|
@Yêu cầu lập bản đồ
(giá trị =
"/v0.1/verifyNewFriendApply"
, phương thức = RequestMethod.POST)
@Phản hồi cơ thể
công cộng
ImResponse xác minhNewFriendApply(
@Yêu cầu cơ thể
Xác minhBạn bè mớiÁp dụngYêu cầu yêu cầu)
ném
Ngoại lệ {
Kết quả Boolean = friendApi.verifyNewFriendApply(reqDto);
trở lại
mới
ImResponse(SystemContext.getSystemProperty().getReqId(), kết quả);
}
|
Hiển thị yêu cầu giao diện Postman

Kết quả là khi gửi yêu cầu, chỉ có thể nhận được giá trị của trường aplyId ở chế độ nền, còn giá trị của trường isAccept thì không thể lấy được. Sau khi kiểm tra, chúng tôi phát hiện ra rằng trong IDEA, đối với các biến isXXX kiểu Boolean, khi tự động tạo phương thức getter và setter, logo is sẽ bị xóa, như trong hình minh họa.

Do đó, khi @RequestBody được nhận và phân tích cú pháp, phương thức getAccept() sẽ không được thực thi và nếu không tìm thấy phương thức getIsAccept() phù hợp, phương thức đó sẽ là null.
kết luận
Lưu ý: Đối với các biến kiểu Boolean isXXX, định danh is sẽ bị xóa khi các phương thức getter và setter được tự động tạo.
thuộc tính tiêm springboot @RequestBody đang trống
Các thuộc tính của đối tượng là
Được nhận bởi chú thích @RequestBody trong Bộ điều khiển.
Thuộc tính json ở giao diện người dùng cũng là rEngIds.
Nhưng nó không thể được lập bản đồ.
Giải pháp của tôi
Đổi tên thuộc tính: r_engIds và bạn đã hoàn tất~ .
Trên đây là kinh nghiệm cá nhân của tôi, hy vọng có thể giúp bạn tham khảo và mong bạn có thể ủng hộ tôi.
Liên kết gốc: https://blog.csdn.net/chen1xiao2mo3/article/details/84649777.
Cuối cùng, bài viết này về giải quyết vấn đề thiếu một số thuộc tính của @RequestBody kết thúc tại đây. Nếu bạn muốn biết thêm về cách giải quyết vấn đề thiếu một số thuộc tính của @RequestBody, vui lòng tìm kiếm các bài viết trên CFSDN hoặc tiếp tục duyệt các bài viết liên quan. Tôi hy vọng bạn sẽ ủng hộ blog của tôi trong tương lai! .
Tôi là một lập trình viên xuất sắc, rất giỏi!