sts를 이용한 다양한 설정 확인(매핑 등의 설정)


설명
1. 도메인 이름에 관한 것
[여기서 <beans: bean class ~> 인 부분, Resolves views~]
원래 프로그램을 컴파일하면 http://localhost:8888/Hello/WEB-INF/views/member/logOut.jsp 경로가 이렇다.
근데, 지금까지 써온 것과 모든 url을 보면: 도메인이름(localhost:포트번호)/홈페이지이름(index나 home이나 등등)
http://localhost:8888/Hello/loginForm.do 이런식으로 적용이 된다.
이는, prefix와 suffix 덕분에 가능했던 것인데,
경로의 앞부분을 의미하는 prefix(대신 경로 정해주기(WEB-INF/views/)와 뒷부분을 의미하는 suffix(.jsp)를
요청 명 앞과 뒤에 붙임으로써, 서버가 하나의 경로로 인식될 수 있게 하는 것을 나타낸다.
-> 그러면서 url의 길이는 줄어들고 훨씬 효율적이게 되는 것이다.
그리고, ViewResolver의 역할은 요청명을 받고 해당 뷰로 이동하고자 할 때 쓰는 거다.
★ 지금 프로젝트 명이 co.kr.Hello인데, http://localhost:8888/Hello/loginForm.do 에서
Hello부분까지 제거하고자 한다면,

★ 더 나아가서,


이 말은, 지금 경로가 http://localhost:8888/loginForm.do 이렇게 됨을 알 수 있다.
근데 여기서, " .do " 를 없애고 진짜 알멩이만 남게(간단한 요청 명만) 하려면
<url-pattern>/</url-pattern> 이 부분을 <url-pattern> /*.do </url-pattern> 이렇게 고치면 된다.
** 그럼 http://localhost:8888/loginForm : 이런식으로 url에 써서 해당 홈페이지로 이동이 가능하다!
2. 컴포넌트 스캔(빈 등록 부분)
위의 글에서 아래를 찾으면, 컴포넌트 스캔 부분이 나온다.

컴포넌트 스캔이란? - 매핑한 부분을 명시적으로 아는 것
스프링 component-scan 개념 및 동작 과정
스프링 component-scan의 개념과 동작 과정에 대해 알아보려고 한다!얼마 전 면접에서 component-scan의 동작 과정에 대해 설명해달라는 질문을 받았다...질문을 받았을 때, component-scan...? 이것은..스캔하
velog.io
이 부분이 제대로 설정되어야 빈 등록이 잘되면서 매핑이 되는 것이고 동작을 할 수가 있다.
3. root-context.xml을 통해 SQL에 관한 처리를 가능하게 하기


5. 기존 pom.xml 에서 maven, 서블릿 등 운용에 필요한 패키지 넣기(기존 코드에서 Test 밑에 아래를 추가만 하면 됨)
<!-- MyBatis -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.2.8</version>
</dependency>
<!-- mybatis-spring -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
<version>1.2.2</version>
</dependency>
<!-- Mysql -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.31</version>
</dependency>
<!--spring-jdbc -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>3.2.3.RELEASE</version>
</dependency>