프레임워크 Framework : 일종의 틀. 건물로 예를 들자면 건물의 철물 구조같은것. API등을 제공해주고 개발에 필요한 여러 기능들을 제공해준다.
이전에 많이 사용했던 프레임워크는 struts고 요새 많이 표준 프레임워크로 사용되는 게 Spring. struts과도 연동이 된다.
- struts? 아파치 스트럿츠 (Apache Struts)는 Java EE 웹 애플리케이션을 개발하기 위한 오픈 소스 프레임워크임.
*Spring을 잘 알기 위해선 Java, jsp/sevlet, javascript, html, jquey 등의 기본지식이 있으면 좋다.
Spring은 자바언어를 기반으로 한 어플리케이션을 제작할때 효율적으로 빠르게 개발할 수 있도록 지원해주는 어플리케이션 프레임워크이다. 스프링은 Tomcat을 사용할 수 있고 컨테이너가 필요 없어서 비용이 절감된다. 비교적 가벼워서 테스트하기가 쉽고 개발속도도 빠른게 장점이다. 더 많은 정보는 사이트에서 볼 수 있다. (spring.io)
개발환경 :
Eclipse(Java EE), STS 를 통해 개발 가능하다.(개발툴) 그 전에 JDK 도 설치해두어야 한다.(환경변수 설정) Tomcat 설치 후 이클립스와 연동도 해두자.(웹 컨테이너). 이클립스 help - eclipse marketplace에서 STS plugin 설치하자. 아래 링크는 방법은 맞지만 버전을 다르게 설치해야한다. 이클립스 : 2019-03 R 패키지, 톰캣 : 8.5, JDK : 1.8 (8)
https://keep-steady-keep.tistory.com/64 : 이클립스와 JDK 설치 방법
https://keep-steady-keep.tistory.com/65 : 톰캣 설치와 이클립스와 연동 방법
DI (Dependency Injection, 의존성 주입) :
미리 객체를 만들어놓고 제 3 객체에서 이 객체를 사용할 수 있도록 주입시키는 것. Java상에서 new B() 처럼 인스턴스를 생성해서 만들었던 것. 하지만 이건 의존성 문제가 있다. 만약 B에서 바뀐 내용이 있다면 이걸 A도 반영이 되어야 한다. 만약 기존 로직을 적용해서 사용하고 싶다면 A에서 수정해서 사용해주어야 한다. 만약 이게 수만가지가 된다면 한가지 변경했을 때 변경해야하는게 수만가지가 될 수 있다. 이걸 방지 위해 서로 종속되지 않도록 도입되는게 DI이다. 이게 잘 활용되는게 Spring framework이다. spring에선 A객체에서 B객체를 직접 생성하는게 아니라 다른 객체에서 new B라는 객체를 만들고 A는 method를 사용해서 만들어진 객체를 사용한다. 이렇게 새로운 객체를 따로 만들어 놓고 사용할 수 있도록 주입을 시킨다 해서 DI라고 부른다.
스프링 설정은 우선 eclipse에서 window -> perspective -> open perspective에서 spring을 선택해준다.
그럼 아래처럼 나뭇잎 모양의 아이콘이 생긴다.
이제 File -> new -> spring legacy project로 새로운 스프링 프로젝트를 만들어줬다.
에러!
이렇게 했을때 프로젝트가 만들어지지도 않고 별의별 에러가 잔뜩 났었다.
이클립스, 톰캣, JDK 다시 버전 맞춰서 새로 깔아줬다.
이클립스 : 2019-03 R 패키지
톰캣 : 8.5
JDK : 1.8 (8)
그 후에도 pom.xml에서 에러가 발생했다.
에러 목록:
pom.xml unknown error eclipse
org.apache.maven.plugins:maven-resources-plugin:3.2.0:resources failed:
Loading Spring static imports into Eclipse code assist favourites org/eclipse/jdt/internal/compiler/parser/Scanner$AjcClosure1
type can not find the tag library descriptor for "http://java.sun.com/jsp/jstl/core" 등등...
해결 방법:
project 우클릭 후 run as -> maven clean -> maven install 해주고
<properties>
<maven-jar-plugin.version>3.1.1</maven-jar-plugin.version>
<java.version>1.8</java.version>
</properties>
를 pom.xml 에 추가해준뒤 project 우클릭 후 maven -> update project 해주니 에러가 해결되었다. 아마 java 버전을 새버전으로 설치하고 maven 플러그인을 설치 미리 했었는데 그때 남아있던 버전정보들 때문에 에러가 발생한 것 같다.
File -> new -> spring legacy project -> Simple Spring Maven 을 선택했더니 안에 MANIFEST.MF 파일만 생성되어서 Spring MVC Project로 생성했더니 성공했다.
Simple Spring Maven 으로 MANIFEST.MF만 생성되는건 찾아봤더니 3개정도 같은 현상이 나왔지만 딱히 해결방법을 아직 찾지 못했다.
'Spring' 카테고리의 다른 글
톰캣 설치 이클립스 연동하기 (0) | 2021.05.13 |
---|---|
이클립스 Eclipse / JDK 설치 방법 (0) | 2021.05.13 |
댓글