我正在玩quarkus并尝试构建一个crud rest应用程序;我试图让两个端点返回相同实体的两个不同视图。下面是我在spring+jackson中的一个例子:
@Entity
public class Car{
public String model;
@ManyToOne( fetch = FetchType.LAZY, cascade = {CascadeType.ALL})
public Owner owner;
// [...]
}
@Entity
public class Owner{
public String name;
// [...]
}
这里是重要的部分:现在如果我用Jackson,我会创造一个 CarView
班级:
public class CarView {
public static class Public {};
public static class Private extends Public {};
}
有了这个我就可以注解了 Car.model
与 @JsonView(CarView.Public.class)
以及 Car.owner
与 @JsonView(CarView.Private.class)
然后在rest控制器中使用与我的方法相同的注解进行注解,以便告诉jackson我要使用哪个视图:
@RequestMapping("/car/{id}")
@JsonView(CarView.Public.class)
public Car getPublic(@PathVariable int id) { /*...*/ }
@RequestMapping("/car/private/{id}")
@JsonView(CarView.Private.class)
public Car getPrivate(@PathVariable int id) { /*...*/ }
我可以使用quarkus和json-b实现相同的结果吗?
1条答案
按热度按时间l2osamch1#
quarkus目前没有任何类似的东西,但是如果你打开一个github问题来解释你想看到什么,那就太好了。