스프링 프레임워크

Jonguk Kim·2021년 11월 24일
0

1. 스프링의 핵심

2. 스프링의 특징

1. POJO 기반의 구성 (Plain Old Java Object)

  • 코드 개발 시, 개발자가 특정한 라이브러리나 컨테이너의 기술에 종속되지 않음을 의미
  • Java 코드로 객체지향적 설계 구현
  • 높은 생산성과 유연한 테스트 가능

2. DI(Dependency Injection, 의존성 주입)를 통한 객체 관계 구성

  • 메소드나 객체(bean)의 호출 작업은 제어의 역전을 통해 외부에서 이루어짐
  • 제어의 역행을 전제조건으로 의존성 주입이 일어남
  • 의존성을 가진 객체에 대해 스프링에서 의존성 주입이 발생함
  • 의존성 주입 특성으로 인해 개발자가 POJO 개발이 가능

3. AOP(관점지향 프로그래밍) 지원

4. 편리한 MVC 구조

5. WAS에 독립적인 개발 환경

3. 스프링 (=스프링 프레임워크) 장점

1. 단순화된 단위 테스팅

  • 의존성 주입(DI)으로 단위 테스트을 단순화 시킴
    => 생산성 향상, 결함 조기 발견, 지속적인 통합 빌드에서 자동화된 단위 테스트 가능

2. 복잡한 코드 감소

  • DB Connect, Exception, Transaction, Logging 등의 복잡한 코드를 줄임
  • Prepared Statement와 스프링을 이용한 Query 실행 비교
//Prepared Statement 이용
PreparedStatement st = null;
try{
  st = conn.prepareStatement(INSERT_TODO_QUERY);
  st.setString(1, bean.getDescription());
  st.setBoolean(2, bean.isDone());
  st.execute();
} catch (SQLException e){
  logger.error("Failed : " + INSERT_TODO_QUERY, e);
} finally {
  if (st ! = null){
    try {
      st.close();
    } catch (SQLException e){
      //Pass
    }
  }
}

//Spring 이용 => 매우 간단히 해결
jdbcTemplate.update(INSERT_TODO_QUERY, bean.getDescription(), bean.isDone());

3. 아키텍처의 유연성

스프링 프레임워크는 모듈식으로 독립적인 구성을 가지고 있습니다.
웹 데이터에서 스프링 MVC 프레임 워크를 제공합니다.
Spring Beans로 비즈니스 로직을 위한 경량 구현체를 제공합니다.
데이터 레이어에서 JDBC 모듈을 이용하여 JPA, Hibernate등과 연결이 가능합니다.
AOP활용으로 Logging, Transaction, Security를 구현할 수 있습니다.

4. 스프링부트

  • 자바 프로그래밍을 쉽고 빠르게 만드는 도구
  • 햄버거 가게를 차린다면
    햄버거 알바 -> 배워나감 -> 시간걸림
  • 프랜차이즈 가입 (버거킹)
    레시피,서비스 등등 노하우 이를 활용
    => 스프링부트 = 프랜차이즈

https://joychae.tistory.com/27

https://goddaehee.tistory.com/156

profile
개발일지

0개의 댓글