簡體   English   中英

JPA OneToOne映射

[英]JPA OneToOne mappedBy

我上了InvitedTech

public class InvitedTech{
    ...
    @OneToOne(mappedBy="invitedTech", cascade = CascadeType.ALL, fetch=FetchType.LAZY)
    public Flight flight;

    @OneToOne(mappedBy="invitedTech", cascade = CascadeType.ALL, fetch=FetchType.LAZY)
    public Hotel hotel;

    ...
}

當我像這樣向該表查詢時...

List<InvitedTech> invT = JPA.em().createQuery("SELECT inv from InvitedTech inv").getResultList();

我收到了對vitedTech表中的每一行執行的多個選擇語句。 因此,例如,我有11行,運行完一個查詢后,它就好..

13:09:26,350 DEBUG ~ select invitedtec0_.id as id184_, invitedtec0_.comments as comments184_, invitedtec0_.confirmedBy as confirm11_184_, invitedtec0_.confirmedDate as confirme3_184_, invitedtec0_.contractor as contractor184_, invitedtec0_.flightNeeded as flightNe4_184_, invitedtec0_.hotelNeeded as hotelNee5_184_, invitedtec0_.inviteDate as inviteDate184_, invitedtec0_.method as method184_, invitedtec0_.payRate as payRate184_, invitedtec0_.paymentItem_id as payment13_184_, invitedtec0_.replyDate as replyDate184_, invitedtec0_.status as status184_, invitedtec0_.techRequirement as techReq14_184_ from InvitedTech invitedtec0_
13:09:26,354 DEBUG ~ select flight0_.id as id156_1_, flight0_.airline as airline156_1_, flight0_.confirmationNumber as confirma3_156_1_, flight0_.departure as departure156_1_, flight0_.flightNumber as flightNu5_156_1_, flight0_.invitedTechId as invitedT7_156_1_, flight0_.terminal as terminal156_1_, invitedtec1_.id as id184_0_, invitedtec1_.comments as comments184_0_, invitedtec1_.confirmedBy as confirm11_184_0_, invitedtec1_.confirmedDate as confirme3_184_0_, invitedtec1_.contractor as contractor184_0_, invitedtec1_.flightNeeded as flightNe4_184_0_, invitedtec1_.hotelNeeded as hotelNee5_184_0_, invitedtec1_.inviteDate as inviteDate184_0_, invitedtec1_.method as method184_0_, invitedtec1_.payRate as payRate184_0_, invitedtec1_.paymentItem_id as payment13_184_0_, invitedtec1_.replyDate as replyDate184_0_, invitedtec1_.status as status184_0_, invitedtec1_.techRequirement as techReq14_184_0_ from Flight flight0_ inner join InvitedTech invitedtec1_ on flight0_.invitedTechId=invitedtec1_.id where flight0_.invitedTechId=?
13:09:26,355 DEBUG ~ select hotel0_.id as id189_2_, hotel0_.address as address189_2_, hotel0_.checkinTime as checkinT3_189_2_, hotel0_.confirmationNumber as confirma4_189_2_, hotel0_.invitedTechId as invitedT7_189_2_, hotel0_.name as name189_2_, hotel0_.phone as phone189_2_, invitedtec1_.id as id184_0_, invitedtec1_.comments as comments184_0_, invitedtec1_.confirmedBy as confirm11_184_0_, invitedtec1_.confirmedDate as confirme3_184_0_, invitedtec1_.contractor as contractor184_0_, invitedtec1_.flightNeeded as flightNe4_184_0_, invitedtec1_.hotelNeeded as hotelNee5_184_0_, invitedtec1_.inviteDate as inviteDate184_0_, invitedtec1_.method as method184_0_, invitedtec1_.payRate as payRate184_0_, invitedtec1_.paymentItem_id as payment13_184_0_, invitedtec1_.replyDate as replyDate184_0_, invitedtec1_.status as status184_0_, invitedtec1_.techRequirement as techReq14_184_0_, flight2_.id as id156_1_, flight2_.airline as airline156_1_, flight2_.confirmationNumber as confirma3_156_1_, flight2_.departure as departure156_1_, flight2_.flightNumber as flightNu5_156_1_, flight2_.invitedTechId as invitedT7_156_1_, flight2_.terminal as terminal156_1_ from Hotel hotel0_ inner join InvitedTech invitedtec1_ on hotel0_.invitedTechId=invitedtec1_.id left outer join Flight flight2_ on invitedtec1_.id=flight2_.invitedTechId where hotel0_.invitedTechId=?
13:09:26,357 DEBUG ~ select flight0_.id as id156_1_, flight0_.airline as airline156_1_, flight0_.confirmationNumber as confirma3_156_1_, flight0_.departure as departure156_1_, flight0_.flightNumber as flightNu5_156_1_, flight0_.invitedTechId as invitedT7_156_1_, flight0_.terminal as terminal156_1_, invitedtec1_.id as id184_0_, invitedtec1_.comments as comments184_0_, invitedtec1_.confirmedBy as confirm11_184_0_, invitedtec1_.confirmedDate as confirme3_184_0_, invitedtec1_.contractor as contractor184_0_, invitedtec1_.flightNeeded as flightNe4_184_0_, invitedtec1_.hotelNeeded as hotelNee5_184_0_, invitedtec1_.inviteDate as inviteDate184_0_, invitedtec1_.method as method184_0_, invitedtec1_.payRate as payRate184_0_, invitedtec1_.paymentItem_id as payment13_184_0_, invitedtec1_.replyDate as replyDate184_0_, invitedtec1_.status as status184_0_, invitedtec1_.techRequirement as techReq14_184_0_ from Flight flight0_ inner join InvitedTech invitedtec1_ on flight0_.invitedTechId=invitedtec1_.id where flight0_.invitedTechId=?
13:09:26,357 DEBUG ~ select hotel0_.id as id189_2_, hotel0_.address as address189_2_, hotel0_.checkinTime as checkinT3_189_2_, hotel0_.confirmationNumber as confirma4_189_2_, hotel0_.invitedTechId as invitedT7_189_2_, hotel0_.name as name189_2_, hotel0_.phone as phone189_2_, invitedtec1_.id as id184_0_, invitedtec1_.comments as comments184_0_, invitedtec1_.confirmedBy as confirm11_184_0_, invitedtec1_.confirmedDate as confirme3_184_0_, invitedtec1_.contractor as contractor184_0_, invitedtec1_.flightNeeded as flightNe4_184_0_, invitedtec1_.hotelNeeded as hotelNee5_184_0_, invitedtec1_.inviteDate as inviteDate184_0_, invitedtec1_.method as method184_0_, invitedtec1_.payRate as payRate184_0_, invitedtec1_.paymentItem_id as payment13_184_0_, invitedtec1_.replyDate as replyDate184_0_, invitedtec1_.status as status184_0_, invitedtec1_.techRequirement as techReq14_184_0_, flight2_.id as id156_1_, flight2_.airline as airline156_1_, flight2_.confirmationNumber as confirma3_156_1_, flight2_.departure as departure156_1_, flight2_.flightNumber as flightNu5_156_1_, flight2_.invitedTechId as invitedT7_156_1_, flight2_.terminal as terminal156_1_ from Hotel hotel0_ inner join InvitedTech invitedtec1_ on hotel0_.invitedTechId=invitedtec1_.id left outer join Flight flight2_ on invitedtec1_.id=flight2_.invitedTechId where hotel0_.invitedTechId=?
13:09:26,358 DEBUG ~ select flight0_.id as id156_1_, flight0_.airline as airline156_1_, flight0_.confirmationNumber as confirma3_156_1_, flight0_.departure as departure156_1_, flight0_.flightNumber as flightNu5_156_1_, flight0_.invitedTechId as invitedT7_156_1_, flight0_.terminal as terminal156_1_, invitedtec1_.id as id184_0_, invitedtec1_.comments as comments184_0_, invitedtec1_.confirmedBy as confirm11_184_0_, invitedtec1_.confirmedDate as confirme3_184_0_, invitedtec1_.contractor as contractor184_0_, invitedtec1_.flightNeeded as flightNe4_184_0_, invitedtec1_.hotelNeeded as hotelNee5_184_0_, invitedtec1_.inviteDate as inviteDate184_0_, invitedtec1_.method as method184_0_, invitedtec1_.payRate as payRate184_0_, invitedtec1_.paymentItem_id as payment13_184_0_, invitedtec1_.replyDate as replyDate184_0_, invitedtec1_.status as status184_0_, invitedtec1_.techRequirement as techReq14_184_0_ from Flight flight0_ inner join InvitedTech invitedtec1_ on flight0_.invitedTechId=invitedtec1_.id where flight0_.invitedTechId=?
13:09:26,359 DEBUG ~ select hotel0_.id as id189_2_, hotel0_.address as address189_2_, hotel0_.checkinTime as checkinT3_189_2_, hotel0_.confirmationNumber as confirma4_189_2_, hotel0_.invitedTechId as invitedT7_189_2_, hotel0_.name as name189_2_, hotel0_.phone as phone189_2_, invitedtec1_.id as id184_0_, invitedtec1_.comments as comments184_0_, invitedtec1_.confirmedBy as confirm11_184_0_, invitedtec1_.confirmedDate as confirme3_184_0_, invitedtec1_.contractor as contractor184_0_, invitedtec1_.flightNeeded as flightNe4_184_0_, invitedtec1_.hotelNeeded as hotelNee5_184_0_, invitedtec1_.inviteDate as inviteDate184_0_, invitedtec1_.method as method184_0_, invitedtec1_.payRate as payRate184_0_, invitedtec1_.paymentItem_id as payment13_184_0_, invitedtec1_.replyDate as replyDate184_0_, invitedtec1_.status as status184_0_, invitedtec1_.techRequirement as techReq14_184_0_, flight2_.id as id156_1_, flight2_.airline as airline156_1_, flight2_.confirmationNumber as confirma3_156_1_, flight2_.departure as departure156_1_, flight2_.flightNumber as flightNu5_156_1_, flight2_.invitedTechId as invitedT7_156_1_, flight2_.terminal as terminal156_1_ from Hotel hotel0_ inner join InvitedTech invitedtec1_ on hotel0_.invitedTechId=invitedtec1_.id left outer join Flight flight2_ on invitedtec1_.id=flight2_.invitedTechId where hotel0_.invitedTechId=?
13:09:26,360 DEBUG ~ select flight0_.id as id156_1_, flight0_.airline as airline156_1_, flight0_.confirmationNumber as confirma3_156_1_, flight0_.departure as departure156_1_, flight0_.flightNumber as flightNu5_156_1_, flight0_.invitedTechId as invitedT7_156_1_, flight0_.terminal as terminal156_1_, invitedtec1_.id as id184_0_, invitedtec1_.comments as comments184_0_, invitedtec1_.confirmedBy as confirm11_184_0_, invitedtec1_.confirmedDate as confirme3_184_0_, invitedtec1_.contractor as contractor184_0_, invitedtec1_.flightNeeded as flightNe4_184_0_, invitedtec1_.hotelNeeded as hotelNee5_184_0_, invitedtec1_.inviteDate as inviteDate184_0_, invitedtec1_.method as method184_0_, invitedtec1_.payRate as payRate184_0_, invitedtec1_.paymentItem_id as payment13_184_0_, invitedtec1_.replyDate as replyDate184_0_, invitedtec1_.status as status184_0_, invitedtec1_.techRequirement as techReq14_184_0_ from Flight flight0_ inner join InvitedTech invitedtec1_ on flight0_.invitedTechId=invitedtec1_.id where flight0_.invitedTechId=?
13:09:26,361 DEBUG ~ select hotel0_.id as id189_2_, hotel0_.address as address189_2_, hotel0_.checkinTime as checkinT3_189_2_, hotel0_.confirmationNumber as confirma4_189_2_, hotel0_.invitedTechId as invitedT7_189_2_, hotel0_.name as name189_2_, hotel0_.phone as phone189_2_, invitedtec1_.id as id184_0_, invitedtec1_.comments as comments184_0_, invitedtec1_.confirmedBy as confirm11_184_0_, invitedtec1_.confirmedDate as confirme3_184_0_, invitedtec1_.contractor as contractor184_0_, invitedtec1_.flightNeeded as flightNe4_184_0_, invitedtec1_.hotelNeeded as hotelNee5_184_0_, invitedtec1_.inviteDate as inviteDate184_0_, invitedtec1_.method as method184_0_, invitedtec1_.payRate as payRate184_0_, invitedtec1_.paymentItem_id as payment13_184_0_, invitedtec1_.replyDate as replyDate184_0_, invitedtec1_.status as status184_0_, invitedtec1_.techRequirement as techReq14_184_0_, flight2_.id as id156_1_, flight2_.airline as airline156_1_, flight2_.confirmationNumber as confirma3_156_1_, flight2_.departure as departure156_1_, flight2_.flightNumber as flightNu5_156_1_, flight2_.invitedTechId as invitedT7_156_1_, flight2_.terminal as terminal156_1_ from Hotel hotel0_ inner join InvitedTech invitedtec1_ on hotel0_.invitedTechId=invitedtec1_.id left outer join Flight flight2_ on invitedtec1_.id=flight2_.invitedTechId where hotel0_.invitedTechId=?
13:09:26,362 DEBUG ~ select flight0_.id as id156_1_, flight0_.airline as airline156_1_, flight0_.confirmationNumber as confirma3_156_1_, flight0_.departure as departure156_1_, flight0_.flightNumber as flightNu5_156_1_, flight0_.invitedTechId as invitedT7_156_1_, flight0_.terminal as terminal156_1_, invitedtec1_.id as id184_0_, invitedtec1_.comments as comments184_0_, invitedtec1_.confirmedBy as confirm11_184_0_, invitedtec1_.confirmedDate as confirme3_184_0_, invitedtec1_.contractor as contractor184_0_, invitedtec1_.flightNeeded as flightNe4_184_0_, invitedtec1_.hotelNeeded as hotelNee5_184_0_, invitedtec1_.inviteDate as inviteDate184_0_, invitedtec1_.method as method184_0_, invitedtec1_.payRate as payRate184_0_, invitedtec1_.paymentItem_id as payment13_184_0_, invitedtec1_.replyDate as replyDate184_0_, invitedtec1_.status as status184_0_, invitedtec1_.techRequirement as techReq14_184_0_ from Flight flight0_ inner join InvitedTech invitedtec1_ on flight0_.invitedTechId=invitedtec1_.id where flight0_.invitedTechId=?
13:09:26,362 DEBUG ~ select hotel0_.id as id189_2_, hotel0_.address as address189_2_, hotel0_.checkinTime as checkinT3_189_2_, hotel0_.confirmationNumber as confirma4_189_2_, hotel0_.invitedTechId as invitedT7_189_2_, hotel0_.name as name189_2_, hotel0_.phone as phone189_2_, invitedtec1_.id as id184_0_, invitedtec1_.comments as comments184_0_, invitedtec1_.confirmedBy as confirm11_184_0_, invitedtec1_.confirmedDate as confirme3_184_0_, invitedtec1_.contractor as contractor184_0_, invitedtec1_.flightNeeded as flightNe4_184_0_, invitedtec1_.hotelNeeded as hotelNee5_184_0_, invitedtec1_.inviteDate as inviteDate184_0_, invitedtec1_.method as method184_0_, invitedtec1_.payRate as payRate184_0_, invitedtec1_.paymentItem_id as payment13_184_0_, invitedtec1_.replyDate as replyDate184_0_, invitedtec1_.status as status184_0_, invitedtec1_.techRequirement as techReq14_184_0_, flight2_.id as id156_1_, flight2_.airline as airline156_1_, flight2_.confirmationNumber as confirma3_156_1_, flight2_.departure as departure156_1_, flight2_.flightNumber as flightNu5_156_1_, flight2_.invitedTechId as invitedT7_156_1_, flight2_.terminal as terminal156_1_ from Hotel hotel0_ inner join InvitedTech invitedtec1_ on hotel0_.invitedTechId=invitedtec1_.id left outer join Flight flight2_ on invitedtec1_.id=flight2_.invitedTechId where hotel0_.invitedTechId=?
13:09:26,363 DEBUG ~ select flight0_.id as id156_1_, flight0_.airline as airline156_1_, flight0_.confirmationNumber as confirma3_156_1_, flight0_.departure as departure156_1_, flight0_.flightNumber as flightNu5_156_1_, flight0_.invitedTechId as invitedT7_156_1_, flight0_.terminal as terminal156_1_, invitedtec1_.id as id184_0_, invitedtec1_.comments as comments184_0_, invitedtec1_.confirmedBy as confirm11_184_0_, invitedtec1_.confirmedDate as confirme3_184_0_, invitedtec1_.contractor as contractor184_0_, invitedtec1_.flightNeeded as flightNe4_184_0_, invitedtec1_.hotelNeeded as hotelNee5_184_0_, invitedtec1_.inviteDate as inviteDate184_0_, invitedtec1_.method as method184_0_, invitedtec1_.payRate as payRate184_0_, invitedtec1_.paymentItem_id as payment13_184_0_, invitedtec1_.replyDate as replyDate184_0_, invitedtec1_.status as status184_0_, invitedtec1_.techRequirement as techReq14_184_0_ from Flight flight0_ inner join InvitedTech invitedtec1_ on flight0_.invitedTechId=invitedtec1_.id where flight0_.invitedTechId=?
13:09:26,364 DEBUG ~ select hotel0_.id as id189_2_, hotel0_.address as address189_2_, hotel0_.checkinTime as checkinT3_189_2_, hotel0_.confirmationNumber as confirma4_189_2_, hotel0_.invitedTechId as invitedT7_189_2_, hotel0_.name as name189_2_, hotel0_.phone as phone189_2_, invitedtec1_.id as id184_0_, invitedtec1_.comments as comments184_0_, invitedtec1_.confirmedBy as confirm11_184_0_, invitedtec1_.confirmedDate as confirme3_184_0_, invitedtec1_.contractor as contractor184_0_, invitedtec1_.flightNeeded as flightNe4_184_0_, invitedtec1_.hotelNeeded as hotelNee5_184_0_, invitedtec1_.inviteDate as inviteDate184_0_, invitedtec1_.method as method184_0_, invitedtec1_.payRate as payRate184_0_, invitedtec1_.paymentItem_id as payment13_184_0_, invitedtec1_.replyDate as replyDate184_0_, invitedtec1_.status as status184_0_, invitedtec1_.techRequirement as techReq14_184_0_, flight2_.id as id156_1_, flight2_.airline as airline156_1_, flight2_.confirmationNumber as confirma3_156_1_, flight2_.departure as departure156_1_, flight2_.flightNumber as flightNu5_156_1_, flight2_.invitedTechId as invitedT7_156_1_, flight2_.terminal as terminal156_1_ from Hotel hotel0_ inner join InvitedTech invitedtec1_ on hotel0_.invitedTechId=invitedtec1_.id left outer join Flight flight2_ on invitedtec1_.id=flight2_.invitedTechId where hotel0_.invitedTechId=?
13:09:26,364 DEBUG ~ select flight0_.id as id156_1_, flight0_.airline as airline156_1_, flight0_.confirmationNumber as confirma3_156_1_, flight0_.departure as departure156_1_, flight0_.flightNumber as flightNu5_156_1_, flight0_.invitedTechId as invitedT7_156_1_, flight0_.terminal as terminal156_1_, invitedtec1_.id as id184_0_, invitedtec1_.comments as comments184_0_, invitedtec1_.confirmedBy as confirm11_184_0_, invitedtec1_.confirmedDate as confirme3_184_0_, invitedtec1_.contractor as contractor184_0_, invitedtec1_.flightNeeded as flightNe4_184_0_, invitedtec1_.hotelNeeded as hotelNee5_184_0_, invitedtec1_.inviteDate as inviteDate184_0_, invitedtec1_.method as method184_0_, invitedtec1_.payRate as payRate184_0_, invitedtec1_.paymentItem_id as payment13_184_0_, invitedtec1_.replyDate as replyDate184_0_, invitedtec1_.status as status184_0_, invitedtec1_.techRequirement as techReq14_184_0_ from Flight flight0_ inner join InvitedTech invitedtec1_ on flight0_.invitedTechId=invitedtec1_.id where flight0_.invitedTechId=?
13:09:26,365 DEBUG ~ select hotel0_.id as id189_2_, hotel0_.address as address189_2_, hotel0_.checkinTime as checkinT3_189_2_, hotel0_.confirmationNumber as confirma4_189_2_, hotel0_.invitedTechId as invitedT7_189_2_, hotel0_.name as name189_2_, hotel0_.phone as phone189_2_, invitedtec1_.id as id184_0_, invitedtec1_.comments as comments184_0_, invitedtec1_.confirmedBy as confirm11_184_0_, invitedtec1_.confirmedDate as confirme3_184_0_, invitedtec1_.contractor as contractor184_0_, invitedtec1_.flightNeeded as flightNe4_184_0_, invitedtec1_.hotelNeeded as hotelNee5_184_0_, invitedtec1_.inviteDate as inviteDate184_0_, invitedtec1_.method as method184_0_, invitedtec1_.payRate as payRate184_0_, invitedtec1_.paymentItem_id as payment13_184_0_, invitedtec1_.replyDate as replyDate184_0_, invitedtec1_.status as status184_0_, invitedtec1_.techRequirement as techReq14_184_0_, flight2_.id as id156_1_, flight2_.airline as airline156_1_, flight2_.confirmationNumber as confirma3_156_1_, flight2_.departure as departure156_1_, flight2_.flightNumber as flightNu5_156_1_, flight2_.invitedTechId as invitedT7_156_1_, flight2_.terminal as terminal156_1_ from Hotel hotel0_ inner join InvitedTech invitedtec1_ on hotel0_.invitedTechId=invitedtec1_.id left outer join Flight flight2_ on invitedtec1_.id=flight2_.invitedTechId where hotel0_.invitedTechId=?
13:09:26,366 DEBUG ~ select flight0_.id as id156_1_, flight0_.airline as airline156_1_, flight0_.confirmationNumber as confirma3_156_1_, flight0_.departure as departure156_1_, flight0_.flightNumber as flightNu5_156_1_, flight0_.invitedTechId as invitedT7_156_1_, flight0_.terminal as terminal156_1_, invitedtec1_.id as id184_0_, invitedtec1_.comments as comments184_0_, invitedtec1_.confirmedBy as confirm11_184_0_, invitedtec1_.confirmedDate as confirme3_184_0_, invitedtec1_.contractor as contractor184_0_, invitedtec1_.flightNeeded as flightNe4_184_0_, invitedtec1_.hotelNeeded as hotelNee5_184_0_, invitedtec1_.inviteDate as inviteDate184_0_, invitedtec1_.method as method184_0_, invitedtec1_.payRate as payRate184_0_, invitedtec1_.paymentItem_id as payment13_184_0_, invitedtec1_.replyDate as replyDate184_0_, invitedtec1_.status as status184_0_, invitedtec1_.techRequirement as techReq14_184_0_ from Flight flight0_ inner join InvitedTech invitedtec1_ on flight0_.invitedTechId=invitedtec1_.id where flight0_.invitedTechId=?
13:09:26,367 DEBUG ~ select hotel0_.id as id189_2_, hotel0_.address as address189_2_, hotel0_.checkinTime as checkinT3_189_2_, hotel0_.confirmationNumber as confirma4_189_2_, hotel0_.invitedTechId as invitedT7_189_2_, hotel0_.name as name189_2_, hotel0_.phone as phone189_2_, invitedtec1_.id as id184_0_, invitedtec1_.comments as comments184_0_, invitedtec1_.confirmedBy as confirm11_184_0_, invitedtec1_.confirmedDate as confirme3_184_0_, invitedtec1_.contractor as contractor184_0_, invitedtec1_.flightNeeded as flightNe4_184_0_, invitedtec1_.hotelNeeded as hotelNee5_184_0_, invitedtec1_.inviteDate as inviteDate184_0_, invitedtec1_.method as method184_0_, invitedtec1_.payRate as payRate184_0_, invitedtec1_.paymentItem_id as payment13_184_0_, invitedtec1_.replyDate as replyDate184_0_, invitedtec1_.status as status184_0_, invitedtec1_.techRequirement as techReq14_184_0_, flight2_.id as id156_1_, flight2_.airline as airline156_1_, flight2_.confirmationNumber as confirma3_156_1_, flight2_.departure as departure156_1_, flight2_.flightNumber as flightNu5_156_1_, flight2_.invitedTechId as invitedT7_156_1_, flight2_.terminal as terminal156_1_ from Hotel hotel0_ inner join InvitedTech invitedtec1_ on hotel0_.invitedTechId=invitedtec1_.id left outer join Flight flight2_ on invitedtec1_.id=flight2_.invitedTechId where hotel0_.invitedTechId=?
13:09:26,367 DEBUG ~ select flight0_.id as id156_1_, flight0_.airline as airline156_1_, flight0_.confirmationNumber as confirma3_156_1_, flight0_.departure as departure156_1_, flight0_.flightNumber as flightNu5_156_1_, flight0_.invitedTechId as invitedT7_156_1_, flight0_.terminal as terminal156_1_, invitedtec1_.id as id184_0_, invitedtec1_.comments as comments184_0_, invitedtec1_.confirmedBy as confirm11_184_0_, invitedtec1_.confirmedDate as confirme3_184_0_, invitedtec1_.contractor as contractor184_0_, invitedtec1_.flightNeeded as flightNe4_184_0_, invitedtec1_.hotelNeeded as hotelNee5_184_0_, invitedtec1_.inviteDate as inviteDate184_0_, invitedtec1_.method as method184_0_, invitedtec1_.payRate as payRate184_0_, invitedtec1_.paymentItem_id as payment13_184_0_, invitedtec1_.replyDate as replyDate184_0_, invitedtec1_.status as status184_0_, invitedtec1_.techRequirement as techReq14_184_0_ from Flight flight0_ inner join InvitedTech invitedtec1_ on flight0_.invitedTechId=invitedtec1_.id where flight0_.invitedTechId=?
13:09:26,368 DEBUG ~ select hotel0_.id as id189_2_, hotel0_.address as address189_2_, hotel0_.checkinTime as checkinT3_189_2_, hotel0_.confirmationNumber as confirma4_189_2_, hotel0_.invitedTechId as invitedT7_189_2_, hotel0_.name as name189_2_, hotel0_.phone as phone189_2_, invitedtec1_.id as id184_0_, invitedtec1_.comments as comments184_0_, invitedtec1_.confirmedBy as confirm11_184_0_, invitedtec1_.confirmedDate as confirme3_184_0_, invitedtec1_.contractor as contractor184_0_, invitedtec1_.flightNeeded as flightNe4_184_0_, invitedtec1_.hotelNeeded as hotelNee5_184_0_, invitedtec1_.inviteDate as inviteDate184_0_, invitedtec1_.method as method184_0_, invitedtec1_.payRate as payRate184_0_, invitedtec1_.paymentItem_id as payment13_184_0_, invitedtec1_.replyDate as replyDate184_0_, invitedtec1_.status as status184_0_, invitedtec1_.techRequirement as techReq14_184_0_, flight2_.id as id156_1_, flight2_.airline as airline156_1_, flight2_.confirmationNumber as confirma3_156_1_, flight2_.departure as departure156_1_, flight2_.flightNumber as flightNu5_156_1_, flight2_.invitedTechId as invitedT7_156_1_, flight2_.terminal as terminal156_1_ from Hotel hotel0_ inner join InvitedTech invitedtec1_ on hotel0_.invitedTechId=invitedtec1_.id left outer join Flight flight2_ on invitedtec1_.id=flight2_.invitedTechId where hotel0_.invitedTechId=?
13:09:26,370 DEBUG ~ select flight0_.id as id156_1_, flight0_.airline as airline156_1_, flight0_.confirmationNumber as confirma3_156_1_, flight0_.departure as departure156_1_, flight0_.flightNumber as flightNu5_156_1_, flight0_.invitedTechId as invitedT7_156_1_, flight0_.terminal as terminal156_1_, invitedtec1_.id as id184_0_, invitedtec1_.comments as comments184_0_, invitedtec1_.confirmedBy as confirm11_184_0_, invitedtec1_.confirmedDate as confirme3_184_0_, invitedtec1_.contractor as contractor184_0_, invitedtec1_.flightNeeded as flightNe4_184_0_, invitedtec1_.hotelNeeded as hotelNee5_184_0_, invitedtec1_.inviteDate as inviteDate184_0_, invitedtec1_.method as method184_0_, invitedtec1_.payRate as payRate184_0_, invitedtec1_.paymentItem_id as payment13_184_0_, invitedtec1_.replyDate as replyDate184_0_, invitedtec1_.status as status184_0_, invitedtec1_.techRequirement as techReq14_184_0_ from Flight flight0_ inner join InvitedTech invitedtec1_ on flight0_.invitedTechId=invitedtec1_.id where flight0_.invitedTechId=?
13:09:26,371 DEBUG ~ select hotel0_.id as id189_2_, hotel0_.address as address189_2_, hotel0_.checkinTime as checkinT3_189_2_, hotel0_.confirmationNumber as confirma4_189_2_, hotel0_.invitedTechId as invitedT7_189_2_, hotel0_.name as name189_2_, hotel0_.phone as phone189_2_, invitedtec1_.id as id184_0_, invitedtec1_.comments as comments184_0_, invitedtec1_.confirmedBy as confirm11_184_0_, invitedtec1_.confirmedDate as confirme3_184_0_, invitedtec1_.contractor as contractor184_0_, invitedtec1_.flightNeeded as flightNe4_184_0_, invitedtec1_.hotelNeeded as hotelNee5_184_0_, invitedtec1_.inviteDate as inviteDate184_0_, invitedtec1_.method as method184_0_, invitedtec1_.payRate as payRate184_0_, invitedtec1_.paymentItem_id as payment13_184_0_, invitedtec1_.replyDate as replyDate184_0_, invitedtec1_.status as status184_0_, invitedtec1_.techRequirement as techReq14_184_0_, flight2_.id as id156_1_, flight2_.airline as airline156_1_, flight2_.confirmationNumber as confirma3_156_1_, flight2_.departure as departure156_1_, flight2_.flightNumber as flightNu5_156_1_, flight2_.invitedTechId as invitedT7_156_1_, flight2_.terminal as terminal156_1_ from Hotel hotel0_ inner join InvitedTech invitedtec1_ on hotel0_.invitedTechId=invitedtec1_.id left outer join Flight flight2_ on invitedtec1_.id=flight2_.invitedTechId where hotel0_.invitedTechId=?
13:09:26,372 DEBUG ~ select flight0_.id as id156_1_, flight0_.airline as airline156_1_, flight0_.confirmationNumber as confirma3_156_1_, flight0_.departure as departure156_1_, flight0_.flightNumber as flightNu5_156_1_, flight0_.invitedTechId as invitedT7_156_1_, flight0_.terminal as terminal156_1_, invitedtec1_.id as id184_0_, invitedtec1_.comments as comments184_0_, invitedtec1_.confirmedBy as confirm11_184_0_, invitedtec1_.confirmedDate as confirme3_184_0_, invitedtec1_.contractor as contractor184_0_, invitedtec1_.flightNeeded as flightNe4_184_0_, invitedtec1_.hotelNeeded as hotelNee5_184_0_, invitedtec1_.inviteDate as inviteDate184_0_, invitedtec1_.method as method184_0_, invitedtec1_.payRate as payRate184_0_, invitedtec1_.paymentItem_id as payment13_184_0_, invitedtec1_.replyDate as replyDate184_0_, invitedtec1_.status as status184_0_, invitedtec1_.techRequirement as techReq14_184_0_ from Flight flight0_ inner join InvitedTech invitedtec1_ on flight0_.invitedTechId=invitedtec1_.id where flight0_.invitedTechId=?
13:09:26,372 DEBUG ~ select hotel0_.id as id189_2_, hotel0_.address as address189_2_, hotel0_.checkinTime as checkinT3_189_2_, hotel0_.confirmationNumber as confirma4_189_2_, hotel0_.invitedTechId as invitedT7_189_2_, hotel0_.name as name189_2_, hotel0_.phone as phone189_2_, invitedtec1_.id as id184_0_, invitedtec1_.comments as comments184_0_, invitedtec1_.confirmedBy as confirm11_184_0_, invitedtec1_.confirmedDate as confirme3_184_0_, invitedtec1_.contractor as contractor184_0_, invitedtec1_.flightNeeded as flightNe4_184_0_, invitedtec1_.hotelNeeded as hotelNee5_184_0_, invitedtec1_.inviteDate as inviteDate184_0_, invitedtec1_.method as method184_0_, invitedtec1_.payRate as payRate184_0_, invitedtec1_.paymentItem_id as payment13_184_0_, invitedtec1_.replyDate as replyDate184_0_, invitedtec1_.status as status184_0_, invitedtec1_.techRequirement as techReq14_184_0_, flight2_.id as id156_1_, flight2_.airline as airline156_1_, flight2_.confirmationNumber as confirma3_156_1_, flight2_.departure as departure156_1_, flight2_.flightNumber as flightNu5_156_1_, flight2_.invitedTechId as invitedT7_156_1_, flight2_.terminal as terminal156_1_ from Hotel hotel0_ inner join InvitedTech invitedtec1_ on hotel0_.invitedTechId=invitedtec1_.id left outer join Flight flight2_ on invitedtec1_.id=flight2_.invitedTechId where hotel0_.invitedTechId=?

我該如何解決? 如果我編寫自己的SQL,則可以使用in關鍵字在一項聲明中執行此操作。 我嘗試了類似@BatchSize(size = 20)以便一次獲取20條記錄,我嘗試使用@Fetch(FetchMode.JOIN)但所有嘗試均無效。 是否可以更改,以便僅執行1個查詢?

如果我從刪除其他查詢的注釋中刪除了appedBy,但是由於對象不了解這種關系,我將無法訪問這些屬性。

為了避免出現n + 1問題,您可以嘗試使用JOIN FETCH查詢,如下所示(未經測試):

SELECT inv from InvitedTech inv LEFT JOIN FETCH inv.flight LEFT JOIN FETCH inv.hotel

如果希望查詢在所有執行的查詢中獲取這些關系,則可以在flighthotel對象上使用@JoinFetch@BatchFetch批注。

或者,您可以使用查詢提示在每個查詢的基礎上獲取這些關系。

所有這些示例都在此博客文章中

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM