BackEnd 5

[Spring] DI (Dependency Injection) with XML Configuration

DI(Dependency Injection)이란 의존 관계 주입 또는 의존성 주입이라고 불린다.Spring은 3가지 핵심 프로그래밍 모델 (AOP, DI, IOC)를 지원하는데, 그 중 하나가 바로의존 관계 주입 (Dependency Injection)이다. 그리고 Spring은 객체의 의존 관계 주입을 통해 객체의 의존 관계를 관리한다.DI는 외부에서 객체 간의 관계를 결정해주는데, 즉 객체를 직접 생성하는 것이 아니라 외부에서 생성 후 주입시켜주는것 이라고 할 수있다. 의존성 주입이란 스프링 컨테이너에서 객체 Bean을 먼저 생성해두고, 생성한 객체를 지정한 객체에 주입하는 방법!✅ 1. Dependency(의존성) 이란?객체 A가 객체 B를 사용해야 한다면, A는 B에 의존 한다고 말한다.예를 들어..

BackEnd/Spring 2025.03.14

[Spring] Maven, build-tool에 대한 정리

spring initializer에서 처음 스프링 프로젝트 환경 설정을 할때이런 화면에서 Project 빌드 툴을 설정할 수 있다.이 빌드 툴들이 정확히 어떤 역할을 하는지에 대해 Maven을 위주로 정리해 보았다.✅ 빌드 도구Spring initializr에서 프로젝트를 생성할 때 Gradle-Groovy, Gradle-Kotlin, Maven 중 하나를 선택할 수 있다.이들은 빌드 도구 (build tool)으로 프로젝트의 의존성 관리와 빌드 과정을 자동화 하는 역할을 하는데,어떤 것을 선택하느냐에 따라서 빌드 방식과 설정 파일의 문법이 달라진다. 개발자가 작성한 소스 코드를 실행할 수 있는 독립적인 형태 (.war, .jar)로 변환하는 과정 및 결과를 빌드라고 말한다.변환하는 과정에는 컴파일 과정..

BackEnd/Spring 2025.03.13

[UMC] 7기 회고 - Node.js 파트

✅ 1. 소개안녕하세요! 이제 곧 3학년이 되는 소프트웨어학과 대학생 입니다.🖐️UMC 6기(WEB)부터 7기 (Node.js) 까지 활동을 해왔으며, 이번 7기에서 진행된 백엔드 개발 스터디와 프로젝트를 성공적으로 마무리 했습니다.UMC 7기에 참여하며, 성취의 즐거움을 느끼며 성장의 시간을 보냈습니다!7기 활동을 위주로 제가 경험했던 UMC 활동의 회고를 진솔하게 작성해 보려고 합니다.지원을 고민 중인 분들께 도움이 되었으면 좋겠네요. ✅  2. 활동 경험2-1. 지원 동기2024년, 저는 대학교 2학년이었으며 1년 내내 UMC Web(6기)과 Node.js(7기) 파트에서 활동했습니다.1학년이 끝나고 2학년이 시작되면서 진로에 대해서 고민이 많았습니다.개발도 분야가 정말 다양한데 그 중 프론트엔드..

BackEnd/Node.js 2025.02.27

[Node.js] Node.js 부하 테스트 툴 autocannon

이번 프로젝트에서 부하 테스트를 Autocannon으로 사용하게 되었다autocannon은 Javascript으로 만들어진 HTTP API 부하 테스트 툴 이라고 한다.https://www.npmjs.com/package/autocannon1. Autocannon 설치npm install -g autocannon 전역으로 autocannon을 설치한다2. 테스트할 API 엔드포인트 준비자기가 구현한 API와,요청 헤더에 넣을 값 (Authorization: Bearer , Content-Type: applicatoin/json..)도 준비하자.3. autocaanon의 명령어 구성기본적인 옵션으로는-c : concurrent connections, 동시 연결e.g.) -c 100 -> 동시에 100개의 ..

BackEnd/Node.js 2025.02.15

[Server] 프로젝트 아키텍처, 서비스 계층 패턴과 DTO

Service-Layer PatternService-Layer Pattern는 비즈니스 로직의 분리를 목적으로 한다.다른 계층에 영향을 주지 않고, 특정 계층만 수정하고 확장할 수 있기 때문에, 새로운 기능을 개발하면서 확장하거나 유지 보수할 때 유리하다는 장점이 있다.Controller- 클라이언트의 요청을 수신하여 (request body) 비즈니스 로직이 구현된 서비스 계층을 호출한다.- 서비스에서 반환된 데이터를 받아 클라이언트에게 응답한다.- 단지 요청을 받아 클라이언트에게 HTTP 응답 처리를 진행한다. (routing)Service Layer- 비즈니스 로직, 캡슐화 및 추상화가 이루어지는 곳이다.- Controller로 부터 전달된 **요청에 로직을 적용하는 계층이다.**- Reposito..

BackEnd/Server 2025.01.05