본문 바로가기
728x90

CS29

[Spring] 01. 프레임워크와 라이브러리 :: 스프링과 스프링부트 :: IoC와 DI 정리 스프링 부트와 스프링의 차이점을 말하기 전, 먼저 확인해야할 개념이 있다. 📍 라이브러리(Library)란? 애플리케이션 개발에 필요한 기능인 클래스, 함수 등을 모아놓은 코드의 모음이다. 프로그래밍 세계에서 라이브러리는 도서관이라는 뜻보다는 책들의 모음이라고 생각하면 된다. 또한 라이브러리는 독립적이기에 라이브러리끼리 영향을 크게 주지 않는다. 예를 들어, 자바의 JDBC 라이브러리를 사용하여 데이터베이스와 연결할 수 있지만, 개발자가 직접 연결을 설정하고 SQL 쿼리를 작성해야 한다. 📍 프레임워크(Framework)란? 소프트웨어 개발을 수월하게 하기 위한 SW 개발 환경이다. fram(틀) + work(일하다)의 합성어로, 일하기 위한 틀을 제공하는 것이다. 즉, 개발자는 그 흐름 안에서 필요.. 2025. 2. 21.
[Spring] 02. 스프링 빈(Bean)과 스프링 컨테이너 ⓵   스프링 컨테이너   스프링 컨테이너는 스프링 프레임워크의 핵심으로, @Autowired 같은 애플리케이션에서 사용되는 객체(빈)를 생성하고 관리하는 역할을 한다. 또한 객체의 생명 주기와 의존성을 제어하여, IoC와 DI를 통해 객체 간 결합도를 낮추고 유연성을 높인다. ⓶  빈 (Bean)    빈은 스프링 컨테이너가 생성하고 관리하는 객체로, 애플리케이션에서 필요한 서비스나 구성 요소를 나타낸다. 빈은 컨테이너에 의해 필요할 때 주입되며, 개발자는 이를 통해 객체 생성과 관리 부담을 줄일 수 있다. 참고로 스프링은 빈을 스프링 컨테이너에 등록하기 위해 XML 파일설정, 애너테이션 추가 등의 방법을 제공한다. 즉 빈을 등록하는 방법은 여러가지가 있다는 뜻이다.@Componet // 클래스 MyT.. 2025. 2. 21.
[정보처리기사 필기] 1과목 :: 소프트웨어 설계 요약 참고로 필자는 이미 정처기가 있지만 취준을 하다보면 정처리를 다시 봐야하는 순간들이 꼭 온다.그래서 두구두구두구두구두구두구🥁 볼겸 정리해보려한다.  📍  소프트웨어 생명주기(SW Life Cycle)폭포수 모형 (Waterfall Model)- 가장 오래되고 가장 폭넓게 사용된 고전적 생명주기 모형- 개발 중간에 요구사항의 변경이 용이하지 않음- 단계별 정의 및 산출물 명확- 한 단계가 끝나야 다음 단계로 이동, 선형 순차적 모형나선형 모형(Spiral)- 점진적 개발 과정 반복으로 요구사항 추가 가능- 정밀하고 유지보수과정 필요 없음- 계획 및 정의 -> 위험 분석 -> 공학적 개발 -> 고객평가애자일 모형(Agile Model)- 변화에 유연하게 대응- 일정한 주기(sprint)를 반복하며 개발-.. 2025. 2. 20.
[Spring] 03. AOP(관점 지향 프로그래밍)과 PSA(서비스 추상화) 💡 먼저 이전 글을 읽고 오자!더보기   스프링 프레임워크는 객체 지향 프로그래밍의 장점을 극대화하기 위한 여러 기법을 도입하고 있다. 그 중에서도 AOP(Aspect-Oriented Programming)와 PSA(Portable Service Abstraction)**는 각각 코드의 재사용성을 높이고, 다양한 서비스와의 유연한 통합을 가능하게 하는 핵심 개념이다. 이러한 기법들은 개발자가 비즈니스 로직에 집중하면서도, 시스템의 유지보수성과 확장성을 높일 수 있도록 돕는다. ⓵   AOP(Aspect-Oriented Programming)   관점 지향 프로그래밍이라고 불리는 개념은, 공통 기능을 비즈니스 로직과 분리해주는 개념이다. 예를 들어, 로그 기록이나 보안 체크 같은 기능을 모든 메서드에 추.. 2025. 2. 20.
[Spring] 04. 스프링 부트 요청 - 응답 과정 ( HTTP 요청 처리 과정) 💡 먼저 이전 글을 읽고 오자!더보기   Spring Boot에서 HTTP 요청이 발생할 때 프레젠테이션 계층, 비즈니스 계층, 퍼시스턴스 계층, 그리고 데이터베이스가 상호 작용하는 과정은 다음과 같다. 1. 프레젠테이션 계층 (Presentation Layer): 사용자가 HTTP 요청을 보내면 프레젠테이션 계층이 요청을 받게 된다. 일반적으로 Spring Boot에서는 컨트롤러(@RestController 또는 @Controller)가 이 역할을 수행한다. 예를 들어, @RequestMapping 또는 @GetMapping 등으로 매핑된 컨트롤러 메서드가 요청을 처리하게 된다. 컨트롤러는 요청을 필요한 서비스 계층으로 전달하거나, 필요한 경우 즉시 응답을 보낼 수 있다. 2. 비즈니스 계층 (Bus.. 2025. 2. 20.
[Spring] 05. ORM 개념 및 JPA와 하이버네이트 📍 ORM (Object-Relational Mapping) 이란? 객체 지향 프로그래밍 언어에서 데이터베이스와 상호 작용하기 위한 기술이다. ORM은 객체와 데이터베이스 테이블을 매핑하여 SQL 쿼리를 작성하지 않고도 데이터베이스 작업을 수행할 수 있도록 돕는다.즉, ORM을 사용하면 데이터베이스의 테이블을 클래스, 레코드를 객체, 필드를 객체의 속성으로 취급하여 프로그래밍 언어에서 직접 데이터베이스 조작을 수행할 수 있다.► ORM의 장점생산성 향상: SQL을 직접 작성하지 않고 메서드 호출을 통해 데이터 조작이 가능하므로 개발 속도가 빨라진다.유지보수성 향상: 코드와 데이터베이스가 객체 중심으로 통일되어 이해와 수정이 쉽다.보안성 강화: SQL 인젝션과 같은 보안 문제를 줄이는 데 도움이 된다. .. 2025. 2. 20.
728x90
반응형