2020년 01월 29일
업데이트:
Spring Framework란?
자바 플랫폼을 위한 오픈 소스 애플리케이션 프레임워크로 간단하게 스프링(Spring)이라고도 불린다. 동적인 웹 사이트를 개발하기 위한 여러 가지 서비스를 제공하고 있으며 대한민국 공공기관의 웹 서비스 개발 시 사용을 권장하고 있는 전자정부 표준 프레임워크(Spring MVC Project 기반 프레임워크)의 기반 기술로서 쓰이고 있다.
Spring Framework의 특징
- IOC(Inversion of control) 제어 반전
컨트롤의 제어권을 프레임워크가 가지고 있다는 뜻으로, 객체의 생성부터 모든 생명주기의 관리까지 프레임워크가 주도하고 있다.
객체를 생성하고, 직접 호출하는 프로그램이 아니라, 만들어둔 자원을 호출해서 사용한다. - DI(Dependency Injection) 의존성 주입
설정 파일이나 어노테이션을 통해 객체간의 의존 관계를 설정하여 개발자가 직접 의존하는 객체를 생성할 필요가 없다.
- POJO 기반 프레임워크(Plain Old Java Object)
특정 기술이나 라이브러리 없이 유용한 기능을 그대로 사용할 수 있고, 순수한 자바 객체를 사용하듯이 자바의 객체지향적 설계가 가능하다.
코드가 간결해져 개발이 쉽고, 기존 Java API, 라이브러리 지원에 용이하다. - Spring AOP (Aspect Oriented Programming) 관점 지향 프로그래밍
트랜잭션, 로깅, 보안 등 여러 모듈, 여러 계층에서 공통으로 필요로 하는 기능의 경우 해당 기능들을 분리하여 관리한다.
- Spring JDBC
Mybatis나 Hibernate 등의 데이터베이스를 처리하는 영속성 프레임워크와 연결할 수 있는 인터페이스를 제공한다.
- Spring MVC
MVC 디자인 패턴을 통해 웹 어플리케이션의 Model, View, Controller 사이의 의 존 관계를 DI 컨테이너에서 관리하여 개발자가 아닌 서버가 객체들을 관리하는 웹 애플리케이션을 구축 할 수 있다.
Spring 개발 환경 구축
문자 인코딩 설정
새로운 이클립스로 작업을 진행 할 경우 문자의 인코딩을 UTF-8로 변경해준다.
- Window -> Preperences -> enco 검색 -> 전부 UTF-8로 변경해주기,
- json -> jsonFiles -> UTF-8로 변경해주기,
- General->Editors->TextEditors->Spelling ->UTF-8로 변경해주기.
이클립스와 톰캣 연결
Window -> Preperences -> Runtime Envorionments -> Add -> Apache Tomcat v8.5 선택 -> Browse -> 톰캣이 설치되어있는 폴더 선택 -> Finish
서버 실행 단축키 설정 & 탭 키 사이즈 지정 & 글자수 지정
- 서버 실행 단축키 설정 : Window -> Preperences -> keys -> run on server 검색 -> Binding = F10
- 한 줄에 보여지는 글자 수 지정 : Window -> Preperences -> html검색 -> Editor -> line width :999
- 탭 키 사이즈 지정 : Window -> Preperences ->general -> editors -> textEditors ->displayed tab width : 2
Maven 다운로드
이클립스는 기본적으로 설치되어있으나 이클립스 내장 maven을 사용하면 아주 깊숙한 곳에 있는 폴더에 저장되기 때문에 따로 관리도 힘들고, 수정 삭제도 힘들다.
👆🏼 이미지 클릭 시 공식 홈페이지로 이동
Download 클릭 -> Binary zip archive 다운로드(윈도우 환경 용) -> 관리하기 편한 폴더(한글X, 띄어쓰기X)에 저장 -> 압축 풀기 -> 압축을 푼 폴더 안에 라이브러리 관리 폴더(repository) 생성 -> repository폴더의 경로를 복사한다.
conf폴더 -> setting파일 우클릭 -> 연결프로그램 -> VSCode -> localRepository 태그에 방금 복사한 repository폴더의 경로 붙여넣기.
이클립스와 메이븐 연동
preferences -> maven -> User Settings ->
UserSettigs: Browse -> dev 폴더에 압축 푼 메이븐 폴더로 이동 -> conf-> settings.xml 선택
Spring 설치
Eclipse -> help > eclipse Marketplace -> sts3 검색 -> (Standalone Edition) Installed -> confirm -> agree -> Finish
sts 구성 설정 추가
- 이클립스 설치 폴더 -> eclipse.ini 를 메모장으로 옮겨 놓고, -vmargs 위에 -vm 추가 후 그 아래에 jdk.bin 경로 추가 + \javaw.exe
저장 후 이클립스 재 시작.
- 이클립스 -> New -> Spring 검색 -> Spring legacy Project 선택 -> 프로젝트 이름 지정, Spring MVC Project 선택 -> 최상위 3레벨 지정 -> Finish
- pom.xml 파일 클릭 -> springframework버전 5.2.8.RELEASE로 변경 -> spectJ버전 1.9.4로 변경 -> slf4j 버전 1.7.25로 변경
- https://mvnrepository.com/ 접속 -> gson 검색 -> 2.8.6버전 클릭 -> maven textarea 에있는것 클릭(복사) -> form.xml에 추가
- pom.xml -> dependency 태그의 groupId 가 javax.servlet 인 항목(Maven에서 제공하는 JSTL, 정상 적용이 되지 않음) 지우기.
- build 태그 안의 groupId : org.apache.maven.plugins 의 버전, 소스 변경
버전 2.5.1-> 3.1로 변경 / 소스,타겟 -> 1.8로 변경
서버 생성
- WEB-INF 에 lib 폴더 생성 -> jstl jar파일 lib폴더에 넣기 -> home.jsp에 태그 라이브러리 작성
- 프로젝트 우클릭 -> properties -> project Facets ->다이나믹 웹 모듈 3.1로 변경 -> 자바 1.8로 변경 -> rumtimes에서 아파치 톰캣 8.5 체크
공유하기
Twitter Google+ LinkedIn
댓글남기기