작은 발자국들의 위대한 여정
[테스트 코드] Controller Test Code / @WebMvcTest / 행위 검증
Controller 클래스의 테스트 코드를 작성하다 보면 컨트롤러 단에서 호출하는 서비스 메서드가 호출할 때 어떤 값이 필요하고 어떤 값을 반환하는지 정도의 검증을 하는 작업도 함께 진행한다. 컨트롤러 메서드는 아래와 같이 존재한다. (ApiResult 클래스는 외부 응답 시 공통적으로 사용하는 클래스이다.) @RestController @RequiredArgsConstructor public class ControllerA { private final ServiceA serviceA; @PostMapping("/a") public ResponseEnity controllerMethodA () { serviceA.methodA(); return new ResponseEntity(ApiResult.succ..
[디자인 패턴] 데코레이터 패턴
데코레이터 패턴이 무엇인지 알아보고 예제를 통해 이해하고자 합니다. 목표 데코레이터 패턴 이해 사용의 장단점 데코레이터 패턴 예제 데코레이터 패턴 데코레이터 패턴은 어떤 객체에 책임을 덧붙이는 패턴으로, 기능 확장이 필요할 때 기존 코드를 변경하지 않고 부가 기능을 동적으로(유연하게) 추가할 수 있도록 하는 패턴 입니다. 서브 클래스 대신 쓸 수 있는 유연한 대안이 됩니다. 예시 '에스프레소'라는 베이스를 만드는 머신기가 있는데, 고객들이 머신기에서 라떼와 모카, 바닐라 라떼도 만들수 있도록 해달라는 요청 사항이 들어옵니다. '에스프레소' 클래스를 상속받는 '우유' 클래스 -> 라떼 '에스프레소' 클래스를 상속받는 '모카 시럽' 클래..
![[Spring Batch] 1. 스프링 배치 공부 순서와 간단 소개](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fcc8aYE%2FbtsjnG3lKCa%2Fk7dmlYQdmmGbBewmDtguD1%2Fimg.png)
[Spring Batch] 1. 스프링 배치 공부 순서와 간단 소개
기록 순서 1. 스프링 배치 소개 (탄생 배경, 적용 가능한 task, 아키텍처) 현재 글 2. 스프링 배치 시작 (스프링 배치 플젝 + 의존성 구성, 간단한 실습_job 구성+실행) 3. 스프링 배치 도메인 이해 (job, step, 등 각 도메인에 대한 이해_특징,기능,정의) 🌟🌟🌟 4. 스프링 배치 실행 (완성된 job 실행, 도메인 간 상호관계 및 흐름 파악) 체계적&유연한 배치 모델 구성 4. 아키텍처 Application 스프링 배치 프레임웍을 통해 개발자가 만든 배치 Job과 커스텀 코드 포함되어 있다. Batch Core Job을 실행, 모니터링, 관리하는 API로 구성 JobLauncher, Job, Step, Flow 등 Batch Infrastructure Application, Ba..
웹 취약점 분석 및 조치 (매개변수 조작 취약점)
진행한 업무 중 웹 취약점으로 평가되어 조치를 진행한 업무에 대해 간단히 기록하고자 합니다. 취약점 조치 방법 취약점 조치는 위험 수용, 위험 예외, 위험 조치 세 가지로 분리할 수 있고, 각각의 의미는 다음과 같습니다. 위험 수용 : 문제를 해결하지 않고 수용한다. 위험 예외 : 문제가 아닌 것으로 판단하고 예외 처리한다. 위험 조치 : 문제를 해결해서 취약점을 제거한다. 취약점으로 평가된 문제점은 XSS, 부적절한 오류 처리(톰캣 버전 노출), 매개변수 조작 문제 등이 있었습니다. 이를 조치하느냐 수용하느냐는 여러 상황(context) 아래에 판단을 할 수 있는데, 각 문제에 대한 risk값을 매기는 척도가 있습니다. 본인은 이 중 매개변수 조작 문제만 위험 조치로 판단하고 해결하는 것을 진행하였습니..

백엔드 개발자로 입사하다. (2022.08)
취직까지.. 2022년 2월 졸업을 하고 개인적인 사정으로 인해 4월부터 취업 준비를 시작했고 약 3개월 정도 빡세게 한 것 같다. 취준을 하면서 알게된 것은 나를 어필하는 능력이 부족하다는 것이다. 그래서 자소서 작성이나 포트폴리오를 만드는데에 노력이나 시간을 많이 쓴 것 같다. 사실 자소서에 어떤 내용을 쓸지, 어떤 걸 내 강점으로 내세우면 좋을지, 지원을 많이 해보면서 감이 생길 수 있을텐데 지원하는 데에 너무 많은 고민을 했다. 취준 관련 글들을 찾아 보면 일단 지원을 해라. 내가 들어가고 싶은 회사를 우선순위 매겨서 리스트화하고 내림차순으로 지원하면서 감을 잡으라. 등등의 조언들이 많고 나도 그래야겠다🔥 생각 했는데 실제론 그러지 못했다.💦 입사한 지 한달하고 1주일이 지난 시점인데, 취업하기 ..
Spring Framework와 Spring Boot
이번 포스팅에서는 Spring Framework와 Spring Boot 에 대해 알아보겠습니다.💡 Spring Framework가 뭐야?Spring Framework는 자바 애플리케이션 개발을 위한 오픈소스로 공개된 애플리케이션 프레임워크입니다.Spring 이 등장함으로 인해 개발자들이 기술을 사용하기 위해 불가피하게 작성해야했던 복잡한 코드들을 걷어내주었고, 이로 인해 코드의 복잡성을 낮춰주었다고 합니다. 더보기Framework ?프레임워크란, 어떠한 목적을 쉽게 달성할 수 있도록 해당 목적과 관련된 코드의 뼈대를 미리 만들어둔 것을 의미한다.애플리케이션 프레임워크는 애플리케이션을 개발하는데에 있어 필요한 모든 업무 분야 및 기술과 관련된 코드들의 뼈대를 제공합니다. Spring Framework의 ..