TIL 특강

mil nil·2022년 12월 22일
0

TIL (Today I Learned)

목록 보기
37/74

오늘 배운 것

TIL 특강

  • 채용은 앎의 증명이다.
  • 프로젝트를 직접 설명할 수 있어야 한다.
  • 성장! 성실! 흡수력!
  • TIL은 곧 면접장에서의 오픈북이다.
  • 문시해알
    문: 문제
    시: 시도 (자세히)
    해: 해결
    알: 새롭게 안 것 (자세히)
  • WIL: 알게 된 점 / 다음주 목표 / 목표 달성 여부
  • 제대로 안 써 온 것이 사실인데 다시 제대로 써봐야겠다.
  • cs지식도 코드로 구현 가능한 것 위주로 공부

스프링 입문 과제 리뷰 - 김승민 튜터 (복습)

두 강의를 다시 들으며 프로젝트 추가 수정

application.properties

spring.jpa.properties.hibernate.show_sql=true
logging.level.org.hibernate.type.descriptor.sql=trace

위 내용을 추가해주면 아래와 같은 날아가는 쿼리를 확인할 수 있다.

  • 수정 기능 쿼리

  • 예외처리

@RestControllerAdvice
public class ExceptionHandler {

    @ResponseStatus(value = HttpStatus.BAD_REQUEST)
    @org.springframework.web.bind.annotation.ExceptionHandler(IllegalArgumentException.class)
    public String handlerIllegalArgumentException(IllegalArgumentException e) {
        return  e.getMessage();
    }
}

-> @RestControllerAdvice는 Controller의 상위에서 에러를 처리해주는 느낌으로 이해

  • 일단은 간단하게 이렇게 적용된다는 것만 이해하였다.

깔끔하게 메시지만 뜨는 것을 확인할 수 있다.

  • 비즈니스 로직은 서비스에서 처리하지 않는다. 비교, 확인 등

  • 지금까지는 인터페이스를 잘 사용하지 않았지만 인터페이스로 진행해보는 연습이 필요


알고리즘 공부

[다음에 올 숫자] - 등차, 등비 판단하여 다음에 올 숫자 찾기 (https://school.programmers.co.kr/learn/courses/30/lessons/120924)

class Solution {
    public int solution(int[] common) {
        if (common[1] - common[0] == common[2] - common[1])
            return common[common.length - 1] + common[1] - common[0];
        return common[common.length - 1] * (common[1] / common[0]); //common[0]이 0이라면? 나누기 불가능.
    }
}
  • 나누기(/)를 할 때는 분모에 0이 들어오지 않는지 항상 주의해야 한다.
  • 이번 문제의 테스트 코드에서는 통과 되었지만 운이 좋았다.
    -> 내가 된 이유. 등차인지를 먼저 확인하였기 때문, 등차가 아닌 경우에만 등비수열의 계산이 들어가는데 등비 수열에서는 숫자 0이 절대 들어갈 수 없기 때문이다.

더 공부할 것

  • 예외 처리의 구체적인 부분에서 에러 지정, 범위 지정 등을 더 공부할 필요가 있다.
profile
자바 배우는 사람

0개의 댓글