SOLID
1. SRP - 단일 책임의 원칙
"하나의 메서드는 하나의 책임만 진다"
입력, 처리, 출력을 분리. + Model.
요청이 들어오면 DispatcherServlet이 Model을 생성해서 요청의 정보를 저장하고 Controller로 보낸다.
Controller에서 작업을 하고, Model에 작업 결과를 map으로, 저장한다. 그리고 모델과 뷰의 이름을 DispatcherServlet으로 보낸다.
DispatcherServlet에서 받은 뷰의 이름으로 Model을 보내고, 해당 뷰에서 응답을 클라이언트로 보낸다.
<%@ page contentType="text/html; charset=utf-8" %>
둘 다 spring설정 파일.
servlet-context.xml은 스프링 웹관련 설정파일.
root-context.xml은 스프링의 웹이 아닌 설정파일.
아래는 기본으로 설정되어있다.
<!-- resources폴더(이미지) 경로 맵핑 -->
<resources mapping="/resources/**" location="/resources/" />
<!-- InternalViewResolver는 view의 접두사, 접미사를 자동으로 붙여준다 -->
<beans:bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<beans:property name="prefix" value="/WEB-INF/views/" />
<beans:property name="suffix" value=".jsp" />
</beans:bean>
<!-- 프로젝트의 java 버전, spring버전 설정 -->
<properties>
<java-version>11</java-version>
<org.springframework-version>3.1.1.RELEASE</org.springframework-version>
<org.aspectj-version>1.6.10</org.aspectj-version>
<org.slf4j-version>1.6.6</org.slf4j-version>
</properties>
<!-- EL로 source, taget의 java버전 처리 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.5.1</version>
<configuration>
<source>${java-version}</source>
<target>${java-version}</target>
<compilerArgument>-Xlint:all</compilerArgument>
<showWarnings>true</showWarnings>
<showDeprecation>true</showDeprecation>
</configuration>
</plugin>