-
[ 스프링부트 ] 1. STS4 환경설정스타터스 백엔드 3기 2023. 1. 19. 16:39
[ 1. 설치 ]
1. spring.io => Projects => Spring Tools4 클릭

2. Spring Tools4 운영체제에 맞춰 다운로드

3. C:/sba 밑으로 가져와서 압축 푼다.
- 설치된다 (%)


4. 스프링툴 ini 확인하기
- 우리는 자바버전 17 있어서 버전 변경 하지 않아도 된다.

[ 2. STS4 실행 ]
1. workspace 만든다. (sba 밑의 workspace_boot)

2. Spring Starter Project 실행한다.

3. Spring Starter Project 생성하고 설정하기
- jar war 선택해야 함
- 웹 애플리케이션으로 동작시키기 위해서는 war가 필요하다.

체크한 부분만 변경함 
Spring Web 의존성을 선택한다. 4. 프로젝트 생성 후 로딩

5. ServletInitialzer를 Spring Boot App으로 Run 한다.
와!

6. 포트번호 변경 (application.properties)
- 포트번호가 8080이라 다른 톰캣 프로그램과 겹칠 수 있다.
- application.properties로 이동한다.
- server.port를 사용해서 포트번호를 설정한다.

8085포트로 실행되는 것을 알 수 있다. - properties의 주석은 #을 사용한다.
- 저장했을 때 경고는 UTF-8로 저장할까? 라고 물어보는 것이다.
- YES!!!!!!!!!!!!!!!!!

7. WEB-INF 폴더 생성 (view 설정)
- spring boot는 view를 네가 알아서 설정해라 이런 거라서 webapp까지밖에 없다.
- 조금더 view가 독립적이다.

webapp 밑은 모두 생성한 것이다. - jsp를 view로 설정한다.
- application.properties에 prefix와 suffix 설정을 추가한다.

7-1. JSP를 사용하기 위한 설정
- help - 이클립스 마켓플레이스 - web developer 검색
- Eclipse Enterprise java and Web Developer Tools 설치
- 설정하기




- 이제 jsp 파일 보인다!

7-2. 하지만 JSP 파일 냅다 에러
- 이유? STS4(스프링부트?)는 jsp 읽을 수 없다.
- pom.xml에 jsp-api 의존성 추가해야 한다.


test용 MVC 생성
1. model

2. Controller

3. view

resources 폴더가 없는데 어디서 사용해야 하나요?
- src/main/resources 폴더를 사용하면 됩니다.
- static 밑에 image / js(jquery) 넣어줌

요렇게 넣어준당 아 그런데. jsp파일에 제이쿼리를 넣고 싶어요. 어떻게 해야 하나요?
- /second/src/main/resources/static/js/jquery-3.6.1.min.js 라고 적어야 한다.
- 그런데 /second/src/main/resources/static까지는 스프링부트에서 당연하다고 생각한다.
- 그래서 <script src="js/jquery-3.6.1.min.js"> 로 적으면 된다.
servlet, jsp, jstl 사용하려면 라이브러리를 추가해야 한다.
ajax, file upload는 라이브러리가 내장되어 있다.
- 스프링부트는 ajax 내장객체가 있어서 의존성을 추가할 필요가 없다.
@ComponentScan
- @ComponentScan에 아무것도 입력 안 하면 해당 패키지의 component를 모두 읽는다.
- 아래처럼 기본패키지를 upload로 한다면 현재 패키지가 기본 대상이 되지 않기에 따로 적어줘야 한다.
- 여기는 기본패키지와 upload 패키지를 사용하기에 두 가지를 적어줬다.


@SpringBootApplication : 설정클래스파일, spring/tomcat 설정 할 수 있다.
@Configuration : 설정만 한다.
javax와 jakarta
문제상황
1. HttpServletResponse는 서블릿 객체이기에 사용하기 위해 javax.servlet 의존성을 pom.xml에 추가했다.
2. 오류 발생
3. 알고 보니 스프링이 Java EE => Jakarta EE로 마이그레이션(한 형식에서 다른 형식으로 이동)되며 javax.XXX 가 아닌 Jakarta.XXX를 사용해야 했다.
1. 상황

2. 오류 발생

3. 오류 이유

++ 설정파일 만들기 !!!
1. WebMvcConfigurer를 확장하는 인터페이스 생성
2. 얘는 만약 upload/** 를 호출하면 file:///c:/upload/ 의 이미지를 반환해준다.

프로젝트가 생성된 상태에서 편하게 의존성 추가하기
spring - add starters

여기서 dependencies 를 편하게 추가할 수 있다!
- myBatis와 JDBC와 MariaDB 의존성을 추가한다.

- 아래의 dependency가 자동 추가된다.

application.properties
- mybatis, config-location, mapper-locations 설정한다.
- datasource에 드라이버이름, url, username, password를 설정한다.
- config-location에 mybatis-config.xml을 설정한다.
mapper-locations에 classpath:mybatis/mapper/*-mapping.xml를 설정한다.
뒤에 s가 붙는 이유는 뒤에 -mapping.xml이 붙는 파일을 모두 찾을 거라 여러개라 그렇다.


@Mapper


'스타터스 백엔드 3기' 카테고리의 다른 글
유데미 스타터스 취업 부트캠프 3기 - 백엔드 9주차 (0) 2023.01.22 admin/ajax로 사용자 정보 조회하기. 스프링 부트로 게시판 만들기 (0) 2023.01.20 [ Spring ] 7. ajax (0) 2023.01.18 [ Spring ] 6. 파일 업로드 / 다운로드 (0) 2023.01.18 [ Spring ] 6. MyBatis와 Spring 연동 (Spring MVC 방식으로 회원관리 만들기) (0) 2023.01.17