【发布时间】:2019-10-18 13:14:51
【问题描述】:
我想创建一个包含两个类 Alert 和 AlertToEmployee 的连接查询,
班级警报:
public class Alert {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
private String object;
@Column(name = "is_deleted")
private Boolean isDeleted = false;
}
类 AlertToEmployee
public class AlertToEmployee {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
@Enumerated(EnumType.STRING)
private TypeAffectation typeAffectation;
private String registrationNumber;
private boolean isDeleted;
@ManyToOne
private Alert alert;
}
我创建了一个内部连接查询来获得具有特定条件的警报,但我对映射并不重要,我遇到了这个错误:QuerySyntaxException: AlertToEmployee.alert is not mapped
查询:
@Query( "SELECT new com.demo.shared.vo.AlertsVO(a.id,a.object )" +
"FROM AlertToEmployee.alert a INNER JOIN AlertToEmployee ate ON a.id = ate.id WHERE a.isDeleted = false" +
" AND ate.registrationNumber = ?1 AND ate.isDeleted = false ")
我也试过这个,但它也不起作用:
@Query( "SELECT new com.demo.shared.vo.AlertsVO(a.id,a.object )" +
"FROM Alert a INNER JOIN AlertToEmployee ate ON a.id = ate.id WHERE a.isDeleted= false" +
" AND ate.registrationNumber = ?1 AND ate.isDeleted = false ")
请帮忙。
【问题讨论】:
标签: java mysql sql spring hibernate