impl:
List<StRiskFireInspect> listFireInspectInformation = stRiskFireInspectRepository.findByPermitId(permitId);
dao integer:
List<StRiskFireInspect> findByPermitId(String permitId);
只是不需要写sql 了 !!!!! 这是符合jpa 接口书写规范的
如果是: 其他不适符合jpa 接口要求的
List<StRiskFireInspect> listFireInspectInformation = stRiskFireInspectRepository.findPermitIdrr(permitId);
必须在dao integer 写接口和sql
例如:
@Query("select t3.contentCodeName.codeName ,t2.codeNameCode.codeName ,t4.confirmorSign from StRiskFireInspect t1,StRiskFireInspectType t2,StRiskFireInspectContent t3 , StRiskSign t4 where t1.inspectId=t2.inspectId and t2.inspectTypeId=t3.inspectTypeId and t2.inspectTypeId=t4.businessId and t1.permitId=?1 ORDER BY t3.contentCodeName.codeName,t2.codeNameCode.codeName")
解析:
@Query("select t3.contentCodeName.codeName ,t2.codeNameCode.codeName ,t4.confirmorSign from StRiskFireInspect t1,StRiskFireInspectType t2,StRiskFireInspectContent t3 , StRiskSign t4 where t1.inspectId=t2.inspectId and t2.inspectTypeId=t3.inspectTypeId and t2.inspectTypeId=t4.businessId and t1.permitId=?1 ORDER BY t3.contentCodeName.codeName,t2.codeNameCode.codeName")
这个sql from 后面是实体类类名, select 后面也是实体了字段 !!!!!
而且更为重要的是 若:
public class StRiskFireInspect extends EntityBase implements Serializable{
@JsonIgnore
@JSONField(serialize = false)
@NotFound(action = NotFoundAction.IGNORE)
@JoinColumn(name = "INSPECT_ID", referencedColumnName = "INSPECT_ID")
@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY)
private List<StRiskFireInspectType> fireinspecttype = new java.util.ArrayList<StRiskFireInspectType>(0);
}
通过 主表字段. 附表字段 也可以这样!!!!!!!! sql 中可以这样写 !!!