오늘 할 일
- GCP 서버로 Jmeter 스트레스 테스트 하기
- 0, 25, 50, 75, 100 예약률 별로 동적 vs 정적 비교
- java.sql.SQLException: Access denied for user 'root'@'localhost’
@Transactional(readOnly = true)
public List<ReservationTimeResponseDto> getReservationTime(Long hairshopId,
ReservationTimeRequestDto requestDto) {
List<Designer> designers = designerRepository.findByHairshopIdAndDate(hairshopId, requestDto.getDate());
List<Designer> allDesigners = designerRepository.findByHairshopId(hairshopId);
for(Designer d : allDesigners) {
boolean contains = false;
Long id = d.getId();
for(Designer d2 : designers) {
if(d2.getId() == id) {
contains = true;
break;
}
}
if(!contains) {
designers.add(d);
}
}
List<String> times = TimeUtil.getTimesFromStartAndEndTime(
requestDto.getReservationStartTime(), requestDto.getReservationEndTime());
List<ReservationTimeResponseDto> responseDtos = new ArrayList<>();
for (Designer designer : designers) {
List<String> reservationTimes = new ArrayList<>(times);
List<Reservation> reservations = designer.getReservations();
for (Reservation reservation : reservations) {
if (reservation.getStatus() == ReservationStatus.RESERVED) {
reservationTimes.remove(reservation.getTime());
}
}
responseDtos.add(ReservationConverter.toReservationTimeResponseDto(
designer, reservationTimes));
}
return responseDtos;
}
List<Designer> allDesigners = designerRepository.findByHairshopId(hairshopId);
for(Designer designer : allDesigners) {
boolean contains = false;
Long id = designer.getId();
for(ReservationTimeResponseDto responseDto : responseDtos) {
if(responseDto.getDesignerId() == id) {
contains = true;
break;
}
}
if(!contains) {
responseDtos.add( ReservationConverter.toReservationTimeResponseDto(
designer, times
));
}
}
- fetch join에서 별칭 사용 여부에 관해