1. 스프링(Spring) 프로젝트 생성 전 개발 환경
🚀 개발 환경
▪ IDE : STS 3.9.18
▪ JAVA : JDK 11.0.22
▪ WAS : Apache Tomcat v9.0.89
1) ☕ JDK (Java Development Kit) 설치
💾 STS 3.9.18 호환을 위해 JDK 11 설치
https://drive.google.com/file/d/1UeWu8FXavhxNRzLiYhPRjJH7pJt1YXDp/view?usp=drive_link
2) 😽 톰캣 (Apache Tomcat) 설치
💾 Apache Tomcat v9.0.89 Core zip 설치
3) 🌿 STS (Spring Tool Suite) 설치
💾 Spring Tool Suite 3.9.18 설치
2. 자바 (JDK) 환경 변수 설정
환경 설정 방법에는 시스템 환경 변수 편집과 STS3 내에서 설정하는 방법 2가지가 있다.
기존에 자바(JDK)를 사용 중이고 자바(JDK) 환경 변수 설정을 했었다면 시스템 환경 변수 편집 없이 STS3 내에서 설정만 변경해도 가능한 듯 하다.
1) 시스템 환경 변수 편집
cmd 검색 후 명령 프롬프트 실행해서 자바 버전을 확인
아래 이미지처럼 버전이 11이 아니거나 뜨지 않는다면 시스템 환경 변수 편집 설정이 필요하다.
📌 자바(JDK) 시스템 환경 변수 설정은 아래 링크 참고!
2) STS3 내에서 설정
현재 Eclipse에서 JDK 17 버전을 사용했어서 JDK 17로 설정되어 있는 것을
JDK 11로 바꾸어 주는 과정이다.
2-1) Window - Preference 탭에서 java 검색 후,
Compiler 탭에서 JDK 버전에 맞게 'Compiler compliance level' 변경 (16 ➜ 11)
2-2) Installed JREs 탭에서 'Edit...' 클릭
'Directory' 클릭 후, JDK 11 버전 폴더를 찾아 경로를 설정, 이름도 jdk-11로 변경
'Finish' 클릭
2-3) Installed JREs 탭에서 'jdk-11 (default)'로 바뀐 걸 확인했으면 'Apply and Close'를 클릭
3. 스프링(Spring) 프로젝트 생성
3-1) File - New - Spring Legacy Project
3-2) Project name 입력 ➜ Templates에서 'Spring MVC Project' 선택 ➜ Next
3-3) 최상위 패키지 입력
3-4) pom.xml 안에서 자바(JDK) 버전 설정
pom.xml에서 스크롤을 내려 source와 target값을 1.6에서 자바(JDK) 버전에 맞게 변경 (현재 JDK 11 사용)
3-5) Maven Update Project : Project 우클릭 ➜ Maven ➜ Update Project
pom.xml을 수정하였으므로 maven update project를 함.
STS 내에서 실행이 된다...
프로젝트 실행할 때 jsp 파일을 우클릭하고 서버를 실행한다면 ? 404 에러
이유 : JSP파일이 'WEB-INF' 폴더에 있으면 직접 접근이 불가능하다. 'WEB-INF' 폴더는 보안상의 이유로 직접 URL로 접근할 수 없도록 설정되어 있다. 그러므로 컨트롤러로 접근해야 한다.
-> 'WEB-INF/views' 폴더 안에 있는 jsp 파일의 경우, 컨트롤러에서 해당 jsp 파일을 반환하도록 설정해야 한다.
4. STS3 설치 에러 및 스프링(Spring) 프로젝트 생성 시 에러
💥 Spring Legacy Project 생성 중, Spring MVC Project가 없는 에러
🔨 에러 해결
1. STS3 종료
2. 아래 파일 설치
https://drive.google.com/file/d/11XrlcocAWISNPtWaWX3tqeLkfMlmLnbz/view?usp=drive_link
3. 다운로드한 파일을 아래 경로에 삽입
현재워크스페이스\.metadata\.plugins\org.springsource.ide.eclipse.commons.content.core
💥 Spring Legacy Project 생성 시, Spring MVC Project를 클릭 ➜ 'Next' ➜ 에러
❗ 에러 내용
An error has occurred. See error log for more details.
Could not initialize class com.thoughtworks.xstream.converters.collections.PropertiesConverter
❓ 에러 원인
스프링 버전과 JDK 버전간의 호환 문제
🔨 에러 해결
1. JDK 11 설치
2. JDK 설정 : 위에서 설명한 것처럼 '시스템 환경 변수 편집' 또는 'STS3 내에서 설정'
3. sts-bundle - STS.ini 파일에서 아래 코드 삽입
4. STS 재실행
-vm
C:\Program Files\Java\jdk-11\bin\javaw.exe
아래 이미지와 같이 코드를 삽입하면 된다.
@Controller : 의존성 주입
@Controller라는 코드가 있어야 해당 코드가 controller의 역할을 함.
어노테이션이 없다면 일반 자바클래스이다.
@RequestMapping(value = "/주소", method = RequestMethod.GET|POST) : 요청을 받아 이동할 view, model을 반환
String이 반환값인 이유 : view 이름만 전달하기 위해서
ex) return "home"; -> home.jsp를 의미함
Model : request scope와 같은 역할로 보다 가벼움.
데이터 전송을 위해 만들어진 객체. 요청과 응답이 끝날때까지 유지되는 데이터
파일구조
src - main - webapp - WEB-INF - views에 jsp파일
src - main - webapp - resources에 css, js파일
페이지에 특정 영역 추가 : <% include file="영역.jsp"%>
ex) 헤더 영역 : <% include file="header.jsp"%>
예시)
@RequestMapping(value="/member/join.do", method=RequestMethod.POST)
public String joinMember() {
// 회원 가입 처리하는 코드
}
->
이 코드는 "만약 누군가가 /myapp/member/join.do 주소로 POST 요청을 보내면, 이 joinMember라는 함수를 실행해서 회원 가입을 처리해!"라고 컴퓨터에게 알림
@Mapper : mapper 역할 부여 코드
mybatis 사용법
1. DAO 구성 + mapper.xml 사용 (기존메이븐프로젝트)
2. mapper interface + mapper.xml
- Interface.java :
- Mapper.xml : sql구문 들어감
3. mapper interface + annotation
참조
[[Spring] 스프링(Spring) 프로젝트 생성하기
스프링 프로젝트를 생성하고 초기 환경 세팅을 하는데 시간이 걸린다고 했다. 나는 전자정부프레임워크로만 세팅해봤고, 회사에서 기본으로 제공하는 파일에다가 세팅을 해봐서 아예 처음부터
https://ldgeao99-developer.tistory.com/611
[3. 이클립스에서 STS3 플러그인 설치
* 지켜져야 할 순서 1) jdk 11설치 2) 이클립스 2021-09 버전 설치(jdk11과 호환이 좋았음) 3) .ini 파일 최상단에 아래 명령 추가(자기가 설치한 jdk 버전과 맞게 입력해줘야 함) - 이거 안해주면 exe에서 에
ldgeao99-developer.tistory.com](https://ldgeao99-developer.tistory.com/611)
'Language > Java' 카테고리의 다른 글
[Java] CSV 파일 데이터를 DB에 저장하는 방법 (0) | 2024.06.06 |
---|---|
☕ 자바(JDK) 환경 변수 설정 (0) | 2024.05.30 |
페이지 테스트4 (0) | 2024.04.30 |
페이지 테스트3 (0) | 2024.04.30 |
페이지 테스트2 (0) | 2024.04.30 |
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!