본문 바로가기

공부/메모18

이미지 AWS 3S 파일 업로드 및 삭제 공부 - 1 https://earth-95.tistory.com/117 [SpringBoot] SpringBoot를 이용한 AWS S3에 여러 파일 업로드 및 삭제 구현하기 들어가기 전에 원래는 AWS API Gateway + AWS lambda + AWS S3 방식으로 이미지 업로드 및 삭제를 구현하고자 했습니다. 이때, 일반적으로 javascript나 python을 사용하는 것으로 보았는데 해당 언어로 구현하 earth-95.tistory.com 2022. 4. 26.
예외처리를 알아보자 - 2 https://www.youtube.com/watch?v=5XHhAhN-9po 원하는 예외처리 정확히 데러코드, 타입, 메시지를 응답을 함으로써, 클라이언트에서 어떤 에러가 발생했는지 전달을 함 1.Throwable 2.Exception 3.AroundHubException 어떻게 만드는지 대부분읜 내용은 Throwable쪽에 정의가 되어있음 Throwable에서 메시지를 처리하는 기능이 있구나! 익셉션에대한 생성자 -> String messge -> spuer를 다시 파라미터로 넘기게 됨 메시지를 받아서 -> 값을 넣어줌 값을 가져오기위해서 getMessge라는 메소드를 사용 메시지의 값을 가져옴 패키지 경로까지 다 가져오게 됨 스트링메시지에다가 디테일 메시지의 값을 넣어 줌 클래스 이름과 msge를 .. 2022. 4. 20.
예외 처리를 알아보자 - 1 https://www.youtube.com/watch?v=nyN4o9eXqm0 객체에서 상속을 받고 exception이 상속이 받고 cheked : 반드시 예외처리를 해야되냐 unchecked : 명시적으로 예외처리를 하지 x아도 되느냐 확인시점) 컴파인 단계에서 가능하냐 실행 중에 가능하냐 로직상 별로 문제가 없어보인다, 있어보인다라는 차이 문법적으로 오류가 발생할 떄 -> checked 가동중에 발생할 수 있는 (매개변수, 다른 값들이나 들오지 않는 것들) 어플리케이션이 가동 중에 확인가능한 것 들 -> uncheck @controlleradvice 컨트롤러와 레스트 컨트롤러에서 발생하는 예외를 한 곳에서 관리하고 처리할 수 있게 하는 어노테이션 -> 컨트롤러 예외처리 범위를 설정 할 수 있음 @re.. 2022. 4. 20.
Spring Jpa의 사실과 오해 https://youtu.be/rYj8PLIE6-k 다중성 방향성 단방향 : 한쪽방향으로 양방향 : 상호참조 단방향 매핑만으로 연관관계 매핑은 이미 완료 단방향 매핑에 비해 양방향 매핑은 복잡하고 객체에서 양쪽 방향을 모두 관리해 줘야 함 -> 반대방향으로의 객체 그래프 탐색 기능만 추가 됨 영속성 전의 (persistence cascade) Entity의 영속성 상태 변화를 연관된 Entity에도 함께 적용하는 것 연관관계 엔티티들도 저장되고 수정이 됨 추가로 업데이트 쿼리가 발생함 일대다 연속성 전이하는 경우, 추가적으로 업데이트 쿼리가 발생하는 문제 오히려 일대다 양방향 관계로 변경하기 양방향 -> 주인을 설정하는 것이 좋음 외래키 기본키를 외래키로 쓰는 경우@MapsId를 써서 이쪽이 연관관계 주.. 2022. 4. 17.
JPA의 @Enumerated을 알아보자 - 2 https://velog.io/@yundleyundle/JPA-%EB%A7%A4%ED%95%91-%EC%96%B4%EB%85%B8%ED%85%8C%EC%9D%B4%EC%85%98%EC%9D%B4-%EB%AD%94%EB%8D%B0#-enumerated [JPA] 매핑 어노테이션이 뭔데?? Spring 을 사용하기만해도 어노테이션이 많은데 JPA를 쓰기 위해서는 어떤 어노테이션이 필요할까??Entity Class를 생성하면서 가장 많이 사용하고 또한 필수로 알아야 하는 어노테이션 부터 알아보 velog.io @Enumerated @Enumerated는 자바의 enum Type을 매핑하기 위해 사용한다. 속성으로는 value 속성을 가지고 있는데 순서를 저장할 것인지, String으로 이름을 저장할 것인지 설.. 2022. 4. 16.
JPA 지연 로딩과 즉시 로딩 https://youtu.be/U2s2JhzPZf4 지연로딩 : 객체가 실제 사용될 때 로딩 멤버만 가져오고싶어 -> 팀을 사용하는 시점에 가져오고 싶어 (최대한 지연해서 로딩 함) 실제로 그 데이터를 사용하는 시점에 TEAM을 조회함 즉시 로딩 : JOIN SQL로 한번에 연관된 연관된 객체까지 미리 조회 처음부터 한방에 줘야 함 -> 비즈니스 상황에 따라 다 맞음 상황 1 : 멤버는 쓰는데, 팀을 사용하지 않음 -> 꼭 필요할 때만 지연 로딩 상황 2 : 멤버를 가져오면, 대부분 팀을 가져옴 90%이상 -> 네트워크를 타는 것이 줄어 드니까 (한방 쿼리) 성능개선 가능 ORM 객체와 RDB 두 기둥위에 있는 기술 -> 기승전 90% DB (데이터 중심적 과제 - 얼마나 빨리 조회하고 얼마나 잘 저장하.. 2022. 4. 16.