728x90
- 기존의 객체지향(JAVA) 불편함 확인
[다형성 문제점]
-객체 생성 코드를 모두 찾아서 변경해야 한다.(유지보수 어려움)
-다형성 개념을 활용한 기존 클래스가 변경되었을 때 참조 변수 선언 부분은 수정하지 않아도 되지만 어쨌든 객체 생성 부분 코드를 모두 찾아서 변경되어야 하는 불편함 존재
[스프링 프레임워크]
-스프링 프레임워크 적용 시 자바코드 작성 부분 확연히 줄어드는 효과 큼
-다만, 초기 프로젝트 셋팅 복잡
1) xml 사용하는 방법
2) 자바 @애노테이션 사용하는 방법
▶[Maven]
-자바 프로젝트 빌드 자동해주는 도구
-개발자가 (.xml) 에 작성한 프로젝트 정보를 토대로 컴파일하고 라이브러리 연결 지원
[스프링 프로젝트 생성]
-관련 프로젝트 정보 추가하고 저장하는 순간
-> 작업 진행 (스프링 관련 라이브러리 자동으로 다운로드받음)
<관련 단축키> (ctrl+shift+F) : xml 파일에 메이븐 관련 의존 모듈 추가할 때, 코드 정리 (ctrl+shift+/) : 자동 주석처리 (ctrl+shift+원(\) ): 주석 해제 |
[pom.xml] : 메이븐 의존 모듈 추가
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>ko.co.softcampus</groupId>
<artifactId>SpringBasic</artifactId>
<version>0.0.1-SNAPSHOT</version>
<!-- xml에서 사용할 속성들 -->
<properties>
<!-- 자바 버전 -->
<java-version>1.8</java-version>
<!-- 스프링 버전 -->
<org.springframework-version>4.3.25.RELEASE</org.springframework-version>
<!-- <org.springframework-version>5.1.9.RELEASE</org.springframework-version> -->
<org.slf4j-version>1.7.26</org.slf4j-version>
<ch.qos.logback-version>1.2.3</ch.qos.logback-version>
</properties>
<dependencies>
<!-- spring context -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>4.3.25.RELEASE</version>
</dependency>
<!-- slf4j -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>${org.slf4j-version}</version>
</dependency>
<!--logback -->
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>${ch.qos.logback-version}</version>
<exclusions>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
</exclusion>
</exclusions>
<scope>runtime</scope>
</dependency>
</dependencies>
</project>
[파일 구조]
src/main/java 에 패키지[kr.co.softcampus.main] -> MainClass.java 파일 작성 패키지[kr.co.softcampus.config] -> beans.xml 파일 작성 패키지[kr.co.softcampus.beans] ->HelloWorld 인터페이스 작성(추상메소드 sayHello() 정의) ->구현한 (1) HelloWorldEn 클래스 작성 (2) HelloWorldKo 클래스 작성 |
--> 처음 프로젝트 생성만 까다롭다.
이 설정 기반으로 자바 소스 코드 간결해지고 유지보수 용이해짐.
[참고] - SpringFramework 개발자를 위한 실습을 통한 입문 과정 |
728x90
'Web(웹)_관련 공부 모음 > [강의] SpringFramework' 카테고리의 다른 글
JDBC & MyBatis - [DB 연동] (0) | 2022.02.18 |
---|---|
@Component - [ @Component 설정] (0) | 2022.02.16 |
@어노테이션 - [Annotation 활용하기] (0) | 2022.02.14 |
스프링 DI - [Dependency Injection] (0) | 2022.02.12 |
스프링 IoC [Inversion of Control] (0) | 2022.02.11 |