티스토리 뷰

(120시간?)

스프링프레임워크 ~ 스프링부트까지.

 

※ Spring Frameworkd 수업 개요 ※

수업은 스프링프레임워크 ~ 스프링부트까지

게시판을 만들면서 5번 이후를 적용(배울 예정)

1. 스프링프레임워크 웹에서 가볍게 분산작업 할 수 있는 것.
2. DI와 IoC컨테이너 외부에서 객체를 만들어서 주입하는 것.
3. Spring MVC 구조 이해 이때, 환경설정.
처음에는 하나하나 환경설정을 만듦 → 툴 사용. mvc 구조.
4. Spring MVC 프로젝트 게시판 만드는 프로젝트
5. Rest 방식 데이터 교환 aJax와 비슷. 댓글달때, 아이디 중복확인할 때, 페이지 이동하지 않고 값(데이터)만 이동.
6. AOP와 트랜잭션 -개발자 관점에서 필요한 로그
데이터가 제대로 넘어갔는지, 함수가 제대로 실행되는지 확인하는 작업(Systeam.out.println 같은) 근데 AOP는 하나만 만들어서 필요할 때만 끼워서 사용할 수 있음. 편리.
AOP를 트랜잭션할 때 많이 사용.
7. 파일 업로드  
8. Spring Web Security 관리자, 회원, 비회원 등 사용자를 필터링

└스프링부트에서 하는 것과 똑같이 때문에 스프링부트 수업시간 때 함.

 


1. 스프링 프레임워크(Spring Framework)

(1) 프레임워크란?

어떤 것을 구성하는 구조 또는 뼈대. 기능을 미리 클래스나 인터페이스 등으로 만들어 제공하는 반제품.

-장점

일정한 기준에 따라 개발 → 개발 생산성과 보장된 품질의 애플리케이션 개발할 수 있음. 유지보수 및 확장성.

 

(2) 스프링 프레임워크

자바 웹 애플리케이션 개발을 위한 오픈 소스 프레임워크. EJB(Enterprise Java Beans)보다 가벼운 경량 프레임워크

(*EJB는 전용 서버 필요. 과거 사용했으나 최근에는 Spring 사용)

 

(3) 컨테이너(Container)

톰캣 스프링
서블릿 컨테이너  
서블릿의 생성, 초기화, 서비스 실행, 소멸의 모든 권한 소유,
서블릿 관리
클래스 객체(빈)을 개발자가 아닌 스프링이 권한 소유,
직접 관리

 

(4) Java SE와 Java EE

Java SE(Standard Edition) Java EE(Enterprise Edition)
일반적인 로컬 응용프로그램 개발을 위한 API 분산형, 기업형 응용 프로그램 개발을 위한 API
java.lang.*, java.util.* 등의 자바 언어 패키기 포함된 에디션 Java SE 플랫폼을 기반으로 그 위에 탑재
자바 프로그래밍 언어의 핵심 기능 제공
기초적 타입, 네트워킹, 보안, 데이터베이스 처리 등등
웹 프로그래밍에 필요한 기능 다수 포함
JSP, Servlet, JDBC 등등
파일 I/O, 콘솔I/O, 윈도우 I/O, 네트워크 I/O, Thread 등 결합력을 낮추는 DI, DB Transaction 처리 등

Java SE 위에 Java EE나 Spring 얹어서 사용.

MVC 트랜잭션 인증과 권한
DI AOP Servlet Filter

 

(5) 스프링 프레임워크 특징

경량 컨테이너 의존성 주입(DI) 제어 반전(IoC) 관점 지향(AOP) POJO 방식

-경량컨테이너 : EJB보다 가볍고 배우기 쉬움.

 

-의존성 주입(Dependency Injection) 기능 지원

 클래스 객체를 개발자가 코드에서 생성하지 않고 프레임워크가 생성하여 사용하는 방법

 

-제어 역행(Inversion of Control) 기술을 이용해 애플리케이션 간의 느슨한 결합을 제어

 서블릿이나 빈 등을 개발자가 코드에서 생성하지 않고 프레임워크가 직접 수행하는 방법

 

-관점 지향(Aspect-Oriented Proframming) 기능을 이용해 자원 관리

 핵심 기능 외 부수 기능들을 분리 구현함으로써 모듈성 증가시키는 방법

 

-POJO 방식 : 객체 지향 원리 충실하면서 환경과 기술에 종속되지 않고 필요에 따라 재활용될 수 있는 방식 설계.

 특정 규약과 환경에 종속되지 않는 것

 

(6) 스프링 프레임워크 주요 기능

Core Context DAO(Data Access Object)
다른 기능과 설정을 분리하기 위한
IoC 기능 제공
스프링의 기본 기능.
애플리케이션의 각 기능을 하는
빈(Bean)에 대한 접근 방법 제공
JDBC 기능을 좀 더 편리하게
사용할 수 있도록 함.
ORM(Object Relational Mapping) AOP(Aspect Oirented Programming) Web
하이버네이터나 마이바티스 같은 영속성 관련 프레임워크와 연동된 기능 제공 관점 지향 기능 제공 웹 애플리케이션 개발에 필요한
기능 제공
    WebMVC
    스프링에서 MVC 구현에 관련된
기능 제공

 

 

 

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2026/01   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
글 보관함