분류 전체보기

· CS지식
스프링을 배우면서 가장 처음 접하는 개념이 IOC와 DI를 접하게 된다. IOC : Inversion Of Control, 즉 제어의 역전이라고 직역을 한다.DI : Dependency Injection, 즉 의존성 주입이라고 직역을 한다. 그러면 이 말들이 대체 뭘까? 왜 제어의 역전이라고 하고 왜 의존성 주입이 스프링의 특징일까?  우선 스프링은 하나의 프레임워크이다.프레임워크 : 어떤 결과물을 구현하기 위해 클래스, 코드들이 합쳐진 형태. 즉 프레임워크가 뼈대라고 볼 수 있다.예를 들면 ppt에서 제공하는 기본 템플릿 느낌? 즉 스프링은 어떤 결과물을 제작하기 위한 하나의 뼈대를 제공하는 도구이며, 우리는 이러한 도구를 이용해서 무언가를 만들어낼 수 있는 것. 그렇기에 스프링은 다양한 편의 기능을 ..
이것이 백엔드 개발이다, 객체지향의 사실과 오해 등등 책을 읽어보면서 지금의 내 코드를 보면서 코드 리팩토링을 진행해보려고 한다. 변경 기록을 블로그에 작성. 1. DIP 원칙에 맞게 의존성 변경public class MemberController { private final MemberServiceImpl userService; ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡpublic class EmailController { private final EmailServiceImpl emailSe..
자바 8에서 부터 지원하는 기능으로, 여러 기능을 하나의 코드에서 연결하여 데이터를 정제하고 변경할 수 있다.(즉 메서드를 체이닝해서 쓴다고 본다)또한 스트림을 사용하면 멀티스레드 구성 없이 데이터를 병렬로 처리할 수 있다. 먼저 예시를 보면서 코드가 어떻게 바뀌는지 하나씩 알아보자.내가 원하는 건 이름, 키, 몸무게를 가지는 Human 리스트가 있고, 해당 리스트에서 키 160 이상, 몸무게 내림차순으 Human의 이름만 출력하고 싶다. Human 클래스public class Human { private String name; priva..
· CS지식
Java에서는 final 키워드를 사용하면 불변의 특징을 가지게 된다. 불변이란?값을 수정하지 못하는 특징을 가진다.그러기에 동일한 데이터를 제공할 수 있다.(thread-safe 특징을 가진다.)즉 한 번 할당하면 더 이상 해당 값을 수정하지 못하게 된다.  final은 변수, 클래스, 메서드에 붙일 수 있다. 1. 파라미터에 붙이는 경우public void fun(final int num){ num = 3; }num = 3을 하는 부분에서 컴파일 에러가 발생한다. 이미 파라미터로 넘어온 num에 final이 붙어서 더 이상 재할당이 불가능한 상태.  2. 변수에 final 붙이는 경우class Car{ ..
· 일상
SSAFY에서 Java를 처음 접하고 웹 개발을 처음 접하면서 1년간 열심히 뭔가를 만들어내고 학습을 지속했었다. 수료 후 나는 1분기동안 어떤 결과물을 도출했는지 정산해보려고 한다. 기업 지원 사람인 : 31개 서류합격 : 5개 코딩테스트 or 과제 탈락 : 3개 면접 탈락 : 2개 직접 지원 : 6개 서류합격 : 2개 코딩테스트 or 과제 탈락 : (진행중) 면접 탈락 : 1개 프로젝트 https://github.com/qkrrlgus114/restapi GitHub - qkrrlgus114/restapi: restapi 경로가 생각나지 않을 때 추천해주는 서비스 restapi 경로가 생각나지 않을 때 추천해주는 서비스. Contribute to qkrrlgus114/restapi developmen..
· 일상
https://www.worlditshow.co.kr/main/main.php IT전시회 World IT Show 국내 최대 규모 IT전시회 4월 코엑스 개최 www.worlditshow.co.kr 누군가가 올려준 내용 하나로 여기에 다녀오기로 결정. AI가 만드는 일상의 혁신이라는데 최대 규모이고 카카오, 엘지, 삼성, SK등 대기업과 다양한 스타트업, 중소, 중견이 모이길래 이건 가봐야겠다 싶어서 출동했습니다. 이게 줄인데... 심지어 사전 등록자 명찰 교환 줄이었습니다. 교환 기계가 10개가 넘어서 빠르게 빠지긴 했는데 그래도 여기서 5분~10분은 기다렸었던 명찰 GET 3층이 대기업이 많았고, 1층은 스타트업 AI 위주였습니다. 먼저 1층부터 다녀왔습니다. 아이앤나 처음에 보면서 기억에 남았던 기..
· 오류해결
리프레시 토큰 재발급 API를 만들면서 문제가 발생했다. API의 요구사항은 다음과 같다. accessToken, refreshToken 2개의 쿠키를 필수로 전달. jwt 필터 건너뜀. 스프링 시큐리티 건너뜀. 즉 2개의 쿠키를 전달해 준다면 일치하는 리프레시를 찾아서 살아있다면 재발급을 진행해 주는 형식이다. 컨트롤러 @PostMapping("refresh-token") public ResponseEntity
· 오류해결
오랜만에 QueryDSL을 통해 쿼리를 작성하려고 하는데 RefreshToken Entity에서 큐클래스가 임포트 불가능한 문제가 발생했다. 다른 Entity에서는 사진처럼 잘 import가 되고 있는데 RefreshToken만 import하면 빨간줄 떴다가 바로 삭제가 돼서 QClass가 없나 싶어서 확인해봤다. 분명 QClass는 다 만들어져 있는데?.. 여기서 아차 싶은 부분이 생겼다 대부분 보통 QClass는 build/generated 폴더에 만드는 걸로 알고 있는데 내 코드는 src/main에 생성하도록 지정이 되어 있던 것. 근데 여태까지 문제 없이 사용했는데? 이 방법이 진짜 문제가 없는 건지 궁금해지기 시작했다. 일단 김영한님도 그렇고 호돌맨님의 인프런 댓글도 확인해본 결과 전부 buil..
indeep
'분류 전체보기' 카테고리의 글 목록 (5 Page)