간단 지식/web

03. Intelij에서 Spring framework 사용하기 - maven 기반

납작한돌맹이 2021. 3. 29. 02:39
반응형

여기저기 모든 블로그 방문해보고 나서야 찾은 나만의 방법이다. 학교에서 배우는 것들도 좋지만 이런 것도 가르쳐줬으면 좋겠다. 사용할 줄 아는 framework가 하나도 없는채로 졸업하는 사람도 꽤 있을 것 같은데 4년 다녀서 그런거 하나 모르면 너무 아쉬울 것 같다.

 


사람들마다 이 프레임워크를 사용하기 위한 환경 설정 방법이 다 달라서 처음 하는 사람들(나 포함)은 매번 중도 실패를 겪었을 것이다. 그 이유는 정말로 방법이 여러가지이기 때문인데 대표적으로 아래와 같이 한다고 한다.

a). maven 프로젝트를 만들고 spring을 추가하는 방법

b). spring 프로젝트를 만들고 maven을 추가하는 방법

우리는 제목에서도 알 수 있듯이 a방법을 진행할 것이다.

 

 

1. 새 프로젝트를 maven으로 생성한다.

 

2. add framework support에서 spring MVC 선택

 

3. project structure의 artifact에서 우측의 available element에 있는 라이브러리들을 모두 더블클릭하여 추가

 

4. 우측 상단의 add configuration에서 +를 눌러 톰캣 서버(local)을 추가(톰캣이 없다면 설치)

port가 8080으로 되있을텐데 내 경우는 8080이 다른 서비스와 충돌되기 때문에 8081로 수정해주었다. (톰캣 포트 수정방법: 톰캣 저장소의 conf폴더의 server.xml에서 connector=8080을 원하는 포트 넘버로 수정)

그리고 fix라고 빨간 에러가 뜰 수 있는데 그런 경우는 deployment에서 fix버튼을 누르면 알아서 아티팩트를 추가해서 수정해준다.

VM option은 인코딩과 관련된 부분인데 나중에 한글이 깨질 경우를 대비하여 알맞는 인코딩 수식을 적어줘도 된다.

5. web.xml 수정

    <servlet-mapping>
        <servlet-name>dispatcher</servlet-name>
        <url-pattern>*.form</url-pattern>
    </servlet-mapping>

web.xml에 있는 이 부분을 아래와 같이 고쳐준다. 파일 경로를 /로 구분하겠다는 의미이다.

    <servlet-mapping>
        <servlet-name>dispatcher</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>

 

6. dispatcher-servlet.xml 수정

서블릿이 jsp파일 경로를 prefix와 suffx로 찾을 수 있도록 고쳐준다.

 

7. WEB-INF 아래에 views 폴더 만들기

index.jsp 파일을 views 폴더 안으로 옮겨준다.

 

8. src - java 아래에 Controller 패키지 만들기

Controller 패키지를 만들고 그 안에 controller class를 생성한다.

여기까지가 mvc 구조 중 view와 controller에 해당된다. model은 DB가 해당된다.

 

9. 테스트

 

이제 model까지 추가한 spring mvc 구조는 다음 글에서 계속해서 만들어보자.

2021.04.01 - [3학년/web] - 12. Intelij에서 Spring framework 사용하기 - OracleDB

 

12. Intelij에서 Spring framework 사용하기 - OracleDB

 

20plus3.tistory.com

 

 

 

(이 글이 도움이 됐다면 광고 한번씩만 클릭 해주시면 감사드립니다, 더 좋은 정보글 작성하도록 노력하겠습니다 :) )

반응형

'간단 지식 > web' 카테고리의 다른 글

05. Intelij에서 Spring framework 사용하기 - OracleDB  (0) 2021.04.01
04. Mybatis란?  (1) 2021.04.01
02. JSP, Spring , Servlet, Servlet container 정리  (0) 2021.03.28
01. HTML 초간단 정리  (0) 2020.05.05