보호되어 있는 글입니다.
보호되어 있는 글입니다.
올해 초부터 본격적으로 개발자 취업 시장에 뛰어들어서 다양한 IT 기업에 이력서를 넣기 시작했고, 감사하게도 면접도 꽤 많이 볼 수 있었다. "면접은 많이 봐야 는다"고 이야기 많이 들었는데 이거 진짜 100000% 맞는 말이다. 면접 볼 수 있는 기회가 생긴다면 꼭 가보는 것을 추천하고, 몇번 가보다 보면 생각보다 면접 질문들이 거기서 거기구나 하는 느낌을 꽤 받는다. 그리고 만약 다대다 면접이라면 다른 지원자는 어떻게 준비했구나 직접 들어볼 수 있는 절호의 기회이기 때문에 면접이 잡힌다면 꼭 가보는 것이 좋다.. 면접비나 면접 선물? 키트를 주는 곳들도 꽤 있는데 그런걸 비교해 보는 것도 나름의 소소한 재미가 있다. 운이 좋게도 한 기업에 최종 합격하게 되었고, 그동안 취준하면서 받았던 질문 목록들에..
의역/오역이 있을 수 있고 잘못된 부분이 다수 존재할 수 있습니다 요약 1. JSON을 파싱함 2. 기본 생성자를 이용해 반환할 객체(Object)를 생성한다 3. 키값을 기준으로 반복문을 돈다 3-1. 객체에서 getter 또는 setter를 통해 얻은 프로퍼티들 중 키값의 이름이랑 같은거를 찾음 3-2. 리플렉션을 이용해 빈 객체에 값을 채워넣는다 3-3. 반복 4. 결과(Object) 리턴 # Jackson - the Java Json Library / the best JSON parser for Java - 스프링 부트에서 기본적으로 내장하고 있음 # ObjectMapper - com.fasterxml.jackson.databind - POJO JSON 변환하는 역할 수행 MyValue value..
의역/오역이 있을 수 있고 잘못된 부분이 존재할 수 있습니다 요약 1. @RequestBody는 HttpMessageConverter가 HTTP Request Body 내의 데이터를 객체로 변환(역직렬화)하도록 시키는 애노테이션이다. 2. @Valid를 붙이면 검증을 할 수 있고, 실패 시 MethodArgumentNotValidException을 던진다. 3. application/json 타입의 경우 MappingJackson2HttpMessageConverter가 데이터를 객체로 역직렬화 해준다. 4. MappingJackson2HttpMessageConverter는 ObjectMapper를 사용하는데, 프로퍼티를 이용하기 때문에 getter / setter 둘 중 하나만 있으면 된다 @Reques..
의역/오역이 있을 수 있고 잘못된 부분이 존재할 수 있습니다 핵심 요약 1. @ModelAttribute는 "가장 적절한" 생성자를 찾아 객체를 생성 및 초기화한다 2. 객체 생성 및 초기화 -> Data Binding -> Validation 순서로 진행된다 3. Data Binding은 getter / setter가 존재하는 변수에 한해서 이루어진다 @ModelAttribute - Annotation that binds a method parameter or method return value to a named model attribute, exposed to a web view. (메서드 파라미터를 Bind 해주거나, 웹 뷰에 노출되는 모델을 지정된 name 속성으로 담아 리턴해주는 애노테이션) ..
요약 401 Unauthorized -> @WithMockUser, @WithMockUserDetails 사용 403 Forbidden -> with(csrf()) 추가 @WebMvcTest Annotation that can be used for a Spring MVC test that focuses only on Spring MVC components. Using this annotation will disable full auto-configuration and instead apply only configuration relevant to MVC tests (i.e. @Controller, @ControllerAdvice, @JsonComponent, Converter/GenericConverte..
- AWS EC2 (Amazon Linux2 -> CentOS 기반) - Nginx -> 리버스 프록시 용도 - Let's Encrypt(Certbot) -> SSL 인증서 발급 용도 - SpringBoot 및 쉘 스크립트 0. 사전 개념 정리! # 프록시, 리버스 프록시란? "프록시 = 중개" 해주는 역할로 이해하면 쉽다! - 사용자를 대신해 서버에 접근 해주는 역할 -> 보안, 성능, 안정성 향상 + 캐시 서버 역할 가능 -> 포워드 프록시와 리버스 프록시로 구분할 수 있다 - 내부 망에서 사용해서 외부 인터넷 망으로 연결하기 전에 걸러내는 역할 - 클라이언트가 특정 웹 사이트에 접근하는 것을 사전 차단하는 역할 (학교에서 유해사이트 차단 등... ㅋㅋ) - 포워드 프록시 서버의 IP를 대신 사용하는..