我想从实体类中选择特定列并忽略方法中的其他列。为此我不能使用 @JsonIgnore 因为在另一种方法中我想调用该实体类中可用的所有列。@Entity@Table(name="student")public class StudentDO { @Id @Column(name="studentId") private int studentId; @Column(name="studentName") private String studentName; @JsonIgnore @Column(name="studentPlace") private String studentPlace; @Column(name="studentstd") private String studentstd;现在我想要一个方法,它提供忽略@JsonIgnore 列的数据,另一个方法在调用时提供所有四列,包括带有@JsonIgnore 注释的列。你能帮我解决这个问题吗
2 回答

BIG阳
TA贡献1859条经验 获得超6个赞
这可以通过返回 的自定义实体管理器查询来实现ResultSet。
EntityManager从 SpringBoot 上下文中获取。
@PersistenceContext
private EntityManager entityManager;
Query query = entityManager.createQuery("SELECT s.studentId, s.studentName FROM student s");
List<StudentDO[]> studentRows = query.getResultList();
对于每个 StudentDO,属性的顺序对应于 SELECT 参数顺序。
对于不同的方法,可以编写不同的自定义查询。

慕妹3242003
TA贡献1824条经验 获得超6个赞
你不能这样做,除非你使用特定的 hql 或 spring 数据存储库,比如:
findStudentNameAndStudentstdBysStudentId(int studentId)
添加回答
举报
0/150
提交
取消