■ 스프링

 

  • 거대한 웹 애플리케이션개발하려면 

1)

끊임없이 변화하는 환경에 유연하게 대처할 수 있어야 한다. 즉 응집도는 강하고, 결합도는 낮아야 한다. 또 스펙이 변경되었을 때 자바코드에서 변경하는 것이 아니라, 설정(xml파일)에서 바꿀 수 있어야 한다.

2)

중복되는 기능(예를 들면 로그인 하지 않았을 때 index 로 이동하는 것, 트랜잭션 처리, 로그 출력)을 단 한 번에 선엉ㄴ적으로 할 수 있는게 좋다.

 

  • 스프링(Spring)은 많은 사람들이 참여하는 거대한(엔터프라이즈) (웹)애플리케이션 개발에 사용되는 프레임워크(Framework)다.
  • 프레임워크란(Framework)프로그래밍흐름객체생명주기관리한다. 프레임워크를 이용하여 개발하면 우리가 설정을 해주고 재료를 넣어주는 것이다.
  • 스프링(Spring)은 한마디로 얘기하면 빈팩토리(BeanFactory)다. 즉 빈(Bean)은 객체의 생명주기를 관리하는 컨테이너다. *스프링 빈이란 자바 객체이다. 스프링 컨테이너에 의해서 자바객체가 만들어 지게 되면 이 객체를 스프링 빈이라고 한다.
  • Ioc(Inversion of Control)에 대해서 알아보자.
  • 스프링의 가장 큰 기능은 DI(Dependency Injection)AOP(Aspect Oriented Programing)다.
  • DI(Dependendy Injection)란 의존성 주입이라는 뜻이다.
  • 의존성이란 특정 객체가 작동(비지니스로직을 수행)하려면 다른 객체가 필요하다는 것이다.
예를 들어 DAO는 mybatis 프레임워크의 SqlSession이 필요하다 == DAO는 SqlSession 에 의존적이다. 라고 표현

 

  • AOP(Aspect Oriented Programing)은 관점지향 프로그래밍이다.
  • 스프링 프레임워크의 가장 기본적인 설정ApplicationContext.xml 에 설정한다. *이름을 달라도 되나 일반적으로 이 이름으로 사용
  • 의존성을 주입 하는 것을 빈 와이어링(Bean wiring), 한글로 빈묶기라고 한다.

 

■ Spring + mybatis 를 이용하여 개발하려면

 

  1. jar파일(라이브러리)를 configuration build path 에서 add 한다. *jar 파일은 한마디로 archive 파일이다.
  2. VO / DAO / mapper / Service / config 패키지를 생성한다.
  3. applicationContext.xml 을 config 패키지에 생성(복사) 한다.
  4. mybatis-config.xml 도 config 패키지에 생성(복사) 한다.
  5. VO / DAO / Service / mapper 파일을 각각 생성한다. *DAO와 Service 는 인터페이스와 구현클래스(ImpI) 로 각각 생성한다.
  6. 우리가 만든 DAO 에 sqlSession을 주입한다. 또 Service 에 DAO 를 주입한다.

 

최근 글