pom.xml , web.xml

disdos0928·2022년 6월 21일
0

Spring

목록 보기
7/18
post-thumbnail

pom.xml

뭐가 엄청 많은데 가장 기본적인것
버전 + 플러그인 + 라이브러리 관리로 생각하고 있다.

  • Properties

  • Dependencies내부에는 dependency를 등록해 라이브러리를 적용한다.

예시 lombok 추가

<!-- dependencies : Maven 프로젝트는 외부 저장소와 의존 관계를 맺고 있어 프로젝트에 필요한 파일을(라이브러리) 
		사용자가 직접 받을 필요 없이 해당 태그 내에 지정된 형식으로 작성하면 네트워크를 통해 외부 저장소에서 자동으로 얻어와 세팅함. -->
	<dependencies>
		
		
	<!-- 롬복[lombok] 라이브러리 추가 -->
	<!-- https://mvnrepository.com/artifact/org.projectlombok/lombok -->
	<dependency>
	    <groupId>org.projectlombok</groupId>
	    <artifactId>lombok</artifactId>
	    <version>1.18.24</version>
	    <scope>provided</scope>
	</dependency>

내가 추가한 라이브러리
1. lombok
2. jstl( impl , spec , jstlel )
3. Spring 모듈 ( 뭐 이것저것 많은데 못알아보겟다 )
4. AspectJ ( AOP 기능을 사용하기 위한 언어 문법 )
5. AspectJ Weaver (AspectJ를 구성한 코드를 생성하는데 필요한 유틸)
6. Log4j (Logging 오늘 배운것 중 꿀템 syso 안찍어도됨)
7. InJext
8. jsp-api(Servlet 버전을 4.0으로 변경)
9. JUnit (단위 테스트 도구)
10. pom.xml 에러방지


뭐 엄청나게 많다 언제 다 이해하지

밑에 빌드 관련 설정도 있는데 이건 그냥 설정 관련 연결이라 필요한때 마다 보는게 정신건강에 이로울것 같다.

컴파이 관련 설정도 있는데 '버전 맞추자 이것만 기억하자.'



web.xml ( 배포서술자 )

WAS ( Web Apllication Server )
동적웹 수행 시작시 가장 먼저 읽어들이는 파일
서버 실행 시 초기 설정 내용

DispatcherServlet

클라이언트에게 들어오는 모든 요청을 1차적으로 앞에서 받아 들이는
'진짜' Front Controller 요청에 일치하는 Controller들과 연결하고
해당 Controller의 반환 결과에 따라 알맞은 View를 선택해 응답한다.

<servlet>
  <servlet-name>appServlet</servlet-name>
  <servlet-class>org.springframework.web.servlet.DispatcherServlet
  </servlet-class>
  <init-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>classpath:spring/appServlet/servlet-context.xml
    </param-value>
  </init-param>
  <load-on-startup>1</load-on-startup>
</servlet>

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

대략적으로 이해하자면
loadn - on startup 1으로 모든 요청중 가장 먼처 처리하게 되는것 같다
그 후 로직은 프링이가 알아서 controller로 보내주는것 같다
나중에 네트워크 심층 로직이랑 톰캣아파치 동작원리 자세하게 이해하기 위한 시간이 한번 필요할 것 같다.

또한 기본적으로 Servlet 프로젝트할때 가장 먼저 설정한 것 중 하나가
encodingFilter였는데 원래는 Java폴더 안에 Filter로 등록을 했는데
스프링에서 기본적으로 지원해주기 때문에.
web.xml에서 작성하면 된다
개꿀

<!-- 한글 깨짐 방지를 위한 Filter 추가 -->
<!-- 별도의 filter 클래스를 만들지 않고 스프링에서 제공하는 filter를 사용 -->
<filter>
  <filter-name>encodingFilter</filter-name>
  <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
  <init-param>
    <param-name>encoding</param-name>
    <param-value>UTF-8</param-value>
  </init-param>
</filter>
<filter-mapping>
  <filter-name>encodingFilter</filter-name>
  <url-pattern>/*</url-pattern>
</filter-mapping>

0개의 댓글