2022.10.19 Spring-1

차유빈·2022년 10월 19일
0

Spring Framework란?

수업블로그 주소
https://blog.naver.com/drv982/222898670671


프로그램 설치 및 버전 확인

  • JDK 설치 확인 (환경변수)
  • cmd창에서 검색

jdk1.8버전 다운로드 -> SPRING 폴더 만들고 안에 넣기 이름 너무 길면 변경하면 됨

java ee 8버전(2020-06)으로 다운로드 -> SPRING 폴더안에 넣기

jdk1.8 폴더 - bin 절대경로 복사

eclipse.ini 파일을 메모장으로 열어서 위의 경로 추가해줘야함
(자바 여러개 있을때 java ee를 실행하기 위해)

이클립스 springframework 폴더로 저장 경로 설정

폰트 설정

4가지 UTF-8로 설정


프레임워크(Framework)

  • 뼈대나 근간을 이루는 코드들의 묶음
  • 사용해야 하는 이유
  1. 어느정도 완성한 상태에서 필요한 부분을 조립하는 형태의 개발이 가능
  2. 일정한 품질이 보장된 결과물
    (개발자와 상관없이 어느정도 비슷한 결과물을 얻을 수 있음)
  3. 개발 시간 단축

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

  • 자바 플랫폼을 위한 오픈 소스 애플리케이션
  • JAVA 기반의 프레임워크로서 여러 모듈로 구성되어 있는데, 이중 웹 어플리케이션을 만들고자 등장한게 SpringMVC 모듈 (SpringFramework는 웹 프레임워크가 아님)
  • 초기 설정이 매우 복잡

자바 프로젝트 만들기(스프링 프레임워크와 비교하기 위함)

  • 스프링 프레임워크를 왜 사용해야하는지 비교하기 위함


다형성(Polymorphism)

  • 객체 지향 패러다임의 4가지 주요 특성인 “캡슐화”, “추상화”, “다형성”, “상속”
  • 다형성이란 하나의 타입에 여러 객체를 대입할 수 있는 성질
    (이때 상속이나 구현을 통해 부모타입에 다양한 형태의 객체를 대입 가능)
  • 다형성을 활용하면 기능을 확장하거나, 객체를 변경해야할 때 타입 변경 없이 객체 주입만으로 수정이 일어나게 할 수 있다. 또한 상속을 사용한다면 중복되는 코드까지 제거할 수 있으므로 더욱 객체 지향 설계와 가까워질 수 있다.


자바 프로젝트에 스프링 프레임워크 적용

메이븐 프로젝트 만들기

빌드패스 => Facets 자바버전 1.8 (8버전)으로 설정해줘야함

Spring Context 다운

dependency 복사해서 pom.xml에 추가

스프링 프레임 워크의 가장 기초 디펜던시들이 다운 받아짐


로그 기록하기 slf4j , logback

beans.xml

Logging 이란 ?

  • 프로그램 개발 중이나 완료 후 발생할 수 있는 오류에 대해 디버깅하거나 운영 중인 프로그램 상태를 모니터링 하기 위해 필요한 정보(로그)를 기록하는 것
  • 애플리케이션 실행에 대한 추적을 기록하기 위해 어딘가에 메시지 (콘솔, 파일, 데이터베이스 등)를 작성하는 것
  • 디버깅 : 사용자 상호 작용 기록 (발생하는 이벤트 기록)

pom.xml 파일에 디펜던시 추가

main에서 실행


beans.xml 에 빈 추가하기

등록된 bean 객체만 En으로 변경하고 MainClass 실행 => En 메서드 실행됨
beans.xml 파일에서 빈 객체를 등록하면 객체가 프레임워크에 의해 스스로 생성됨


IOC 컨테이너

  • IoC(제어 반전)이란, 객체의 생성, 생명주기의 관리까지 모든 객체에 대한 제어권이 바뀌었다는 것을 의미
  • 인스턴스 생성부터 소멸까지의 인스턴스 생명주기 관리를 개발자가 아닌 컨테이너가 대신 해줍니다.


IOC 메이븐 프로젝트 생성

IOC/pom

beans.xml

TestBean.java

MainClass.java

  • xml파일이 클래스 내부 또는 외부에 있을 경우
    내부 : ClassPathResource res = new ClassPathResource("com/demo/config/beans.xml");
    외부 : FileSystemResource res = new FileSystemResource("beans.xml");
  • 빈팩토리는 스프링프레임워크 3.0이하 사용 => 4.0이상부터 종료됨


IOC 빈 객체 생성하기

BeanCreate 메이븐 프로젝트 생성

beans.xml

MainClass.java


profile
chacha's 프로그래밍 공부

0개의 댓글