bai*_*win 1 java rest spring spring-boot
我有一个 Spring mvc 应用程序,@RestController类似于:
@RestController
@RequestMapping("levels")
public class LevelController {
private final GetLevelOneCount getLevelOneCount;
private final GetLevelTwoCount getLevelTwoCount;
private final GetLevelThreeCount getLevelThreeCount;
@Inject
public LevelController(GetLevelOneCount getLevelOneCount,
GetLevelTwoCount getLevelTwoCount,
GetLevelThreeCount getLevelThreeCount) {
this.getLevelOneCount = getLevelOneCount;
this.getLevelTwoCount = getLevelTwoCount;
this.getLevelThreeCount = getLevelThreeCount;
}
@GetMapping("/level1/{id}")
public LevelModel levelOne(@PathVariable String id) throws SQLException {
LevelModel levelOneModel = new LevelModel();
levelOneModel.setLevelQuery(getLevelOneCount.execute(id));
levelOneModel.setLevelDirQuery(getLevelOneCount.executeDir(id));
levelOneModel.setLevelDateQuery(getLevelOneCount.executeDate(id));
return levelOneModel;
}
Run Code Online (Sandbox Code Playgroud)
我LevelModel是一个带有私有变量的 POJO,现在我想知道,这是否可以序列化为带有私有变量的 propper JSON?
package com.pwc.tag.service.levels;
public class LevelModel {
private Long LevelQuery;
private Long LevelDirQuery;
private Long LevelDateQuery;
public Long getLevelQuery() {
return LevelQuery;
}
public void setLevelQuery(Long levelQuery) {
LevelQuery = levelQuery;
}
public Long getLevelDirQuery() {
return LevelDirQuery;
}
public void setLevelDirQuery(Long levelDirQuery) {
LevelDirQuery = levelDirQuery;
}
public Long getLevelDateQuery() {
return LevelDateQuery;
}
public void setLevelDateQuery(Long levelDateQuery) {
LevelDateQuery = levelDateQuery;
}
}
Run Code Online (Sandbox Code Playgroud)
是的,由于getter 和 setter,您的对象将被序列化为适当的 JSON 结构,包括私有字段。
如果这些字段不应出现在输出对象中,您可以添加@JsonIgnore注释以将它们从 JSON 结构中排除。
PS常见的方法是用小写字母开头java属性的名称。
| 归档时间: |
|
| 查看次数: |
63 次 |
| 最近记录: |