2023. 12. 3. 14:43ㆍcs및 소프트스킬/백엔드
1. Spring Framework?
=> Java 기반 오픈 소스 기반 Framework이며 경량 컨테이너를 이용하여 자바 객체를 담고 직접 관리를 하는 것
2. Spring Framework 특징
=> 의존성 주입(DI), 경량 프레임워크, 제어의 역행(IoC), MVC 패턴, 관점지향 프로그래밍(AOP)로 구성 되어 있습니다.
3. 의존성 주입(DI; Dependency Injection)
=> 각 계층 및 서비스들간 의존이 존재 할 경우 프레임워크와 서로 연결, 하나의 클래스에서 다른 클래스를 사용하기 위해 생성자를 사용하여 의존성을 주입 시킨다. (controller에서 service 사용, service에서 mapper 사용의 예시)
4. 경량 프레임워크
=> Java 객체를 직접 관리하며, 생성, 소멸과 같은 라이프 사이클을 관리하며 스프링 프레임워크에서 필요한 객체를 얻을 수 있다.
5. 관점 지향 프로그래밍(AOP)
=> My-Batis와 트랜잭션, 로깅 및 보안 등 공통적으로 사용하는 모듈을 담는 것을 말한다. 즉 비즈니스 로직을 해치지 않고 재사용 하기 편하게 만들어짐
6. Spring MVC
=> MVC 패턴을 적용하는 기법 중 하나로, Spring 에서 DispatcherServlet에서 controller를 이용하여 사용하며 적절한 서비스를 이용해 Model을 이용한 데이터와 View단을 처리하는 역할을 수행한다.
7. Spring과 Spring Boot의 차이점은 무엇인가요?
=> Spring Boot에서는 Spring 기능에서 Tomcat이 내장되어져 있다는 것이 큰 특징이며 spring과 다르게 환경 설정 xml을 일일히 설정하지 않아도 properties 파일에서 손쉽게 설정이 가능합니다.
8. Controller, Service, Repository의 역할과 차이점은 무엇인가요?
=> Controller는 입출력을 위한 것으로 사용되어지며, Service는 비즈니스 로직 처리와 데이터 가공 처리하는 역할을 수행하며 Repository는 DBMS를 직접 연동하여 사용 하는 것을 의미합니다.
9. JPA
=> Java의 ORM(Object Relational Mapping)으로 클래스와 Table과 연동 시켜주는 역할을 수행하며 추상화 인터페이스를 통해 SQL문 작업을 요청
10. Mybatis
=> SQL 실행 및 트랜잭션을 관리하는 기술 중 하나로 중복된 JDBC를 하나로 쓰이게 해주고, mapper.xml을 이용하여 sql문을 통해 데이터를 접근을 용의하게 해줍니다.
'cs및 소프트스킬 > 백엔드' 카테고리의 다른 글
Swagger란? Swagger 도입 방법(Java - Spring Boot 기반 작업 기준) (0) | 2023.12.27 |
---|---|
[백엔드] cs 지식1 - 백엔드 기초 (1) | 2023.12.03 |