study/개인공부

M2-W1-D3

잠수함 2021. 6. 2. 16:35
728x90

spring

1. 스프링?

- 자바엔터프라이즈 개발을 편리하게 해주는 오픈소스 경량급 어플리케이션 프레임워크

 

* framework

- 눈에 실질적으로 보이는것은 프레임워크 라이브러리

- 전체적인 부분을 만들어놓고 필요한 부분만 개발자들이 만들어서 사용하는 방식으로 사용

- 사용분야에 따라서 프레임워크의 종류가 달라짐(web, db, application tool)

 

2. 스프링 컨테이너

- EJB의 비즈니스 서비스 컨테이너의 기능은 유지하되 복잡성을 제거한 컨테이너의 필요성             
- 객체들의 라이프사이클을 관리해주는 컨테이너의 기본적인 기능
- 컨테이너에서 제공하는 API를 상속받거나 구현하여 코드를 작성하는 부분들을 제거             
- 컨테이너를 이루는 파일자체가 몇 메가 밖에 안 되는 작은 사이즈이며 구동에 필요한 시간이 짧고 자체 부하는 무시할 수준이고 컨테이너 내에 객체를 배치하는 복잡한 과정이 짧다.

 

3. spring module

 

4. spring 전략

- POJO를 이용한 가볍고 비침투적 개발(외부적으로 다른 코드들의 침투가 되는것들을 못들어오게 막는것)

- DI(Dependency Injection)와 인터페이스 지향을 통한 느슨한 결합도

- Aspect와 template를 통한 반복적이고 상투적인 코드중복 제거

 

5. AOP(Aspect Oriented Programming): 관점지향 프로그래밍

- OOP를 더욱 OOP답게 해주는 기술(더욱 완벽하게 해줌)

- 필요한 시점에 횡단 관심 모듈을 삽입하여 동작하게 하는 기술


Spring 실습

 

# spring-practices

     l------ hellospring03

     l------ emaillist03

     l------ guestbook03

     l------ aoptest

     l------ fileupload

     l------ container

     l------ loginexample

     l------ hellospring04(java config)     

     l------ hellospring05(java config02)

     l------ hellospring05(spring boot)

 

# mysite

     l------ mysite02

     l------ mysite03 (xml config)

 

 

1. Library 추가

- spring core

- spring web MVC

 

*xml 일부설정 (spring) -> 패키지 경로 설정을 잘못한다면 사용이 불가하기에 주의해서 작성해야함
<context:annotation-config />
<context:component-scan base-package="com.example.springex.controller" />

 

* application이 실행안 될 경우 checkpoint

1. @Controller <- 점검 //

 

'study > 개인공부' 카테고리의 다른 글

M2-W1-D4  (0) 2021.06.04
M2-W1-D4  (0) 2021.06.03
M2-W1-D1  (0) 2021.05.31
M1-W5-D4  (0) 2021.05.27
M1-W5-D3  (0) 2021.05.26