我正在尝试使用@JsonView注释从Spring中的对象反序列化几个字段。但是,我将注释添加到我的方法中,而不是反序列化指定字段,而是返回一个空对象。
这是我的POJO:
@Entity
data class Album(
@JsonView(View.AlbumSummary::class)
val title: String,
@JsonView(View.AlbumSummary::class)
@ManyToMany
val artists: List<Account>,
val dateReleased: LocalDate,
val genre: String = GENRE_NA,
@OneToMany(mappedBy = "album")
val songs: List<Song> = ArrayList(),
val description: String = ""
)
而且,实现@JsonView注释的方法:
@JsonView(View.AlbumSummary::class)
@RequestMapping("/home-recommendations/{userId}")
fun getHomeRecommendations(@PathVariable userId: String): List<Recommendation> {
val recommendations = ArrayList<Recommendation>()
val user = accountRepository.findById(userId).get()
val followingArtists = user.following.filter {
it.following.isArtist
}
val suggestedArtists = followingArtists.shuffled().take(Random().nextInt(11) + 10)
for (i in 0 until suggestedArtists.size) {
val suggestedArtist = suggestedArtists[i].following
val recommendedAlbums = suggestedArtist.albums.shuffled().take(Random().nextInt(6) + 10)
recommendations.add(Recommendation("Because you listened to ${suggestedArtist.fullName}", Recommendation.TYPE_ALBUM, albums = recommendedAlbums))
}
return recommendations
}
犯罪嫌疑人X
慕神8447489
哈士奇WWW
相关分类