왜 옛날 Java Web 프로젝트에서는 유독 *.do url 을 많이 보일까?

식빵·2023년 12월 11일
0

Java Lab

목록 보기
16/29

Java Legacy 코드에서 자주보는 현상


Java 기반의 전자정부 프로젝트나, 레거시 웹 프로젝트 코드를 많이 보다 보면,
tomcatweb.xml<servlet mapping> 을 기재할 때
<url pattern> 을 아래와 같은 식으로 작성하는 경우가 유독 많았습니다.

<servlet-mapping>
  <servlet-name>action</servlet-name>
  <url-pattern>*.do</url-pattern>
</servlet-mapping>



*.do url 이 많이 보이는 이유


여태 한번도 궁금했던 적이 없었는데, 왜 이런 url mapping 이 많이 보이는 건지
의문이 생기기 시작했습니다. 그것도 유독 Java 웹 프로젝트에서 말이죠.

구글링을 한 결과 한 StackOverFlow 글에서 명쾌한 답을 줬습니다.

옛날에는 Struts 1 프레임워크로 Java Web 프로젝트를 작성하는 경우가 많았습니다.
그리고 Struts 1 에서 제공하던 User Guide 에서
url mapping 예시를 아래처럼 2가지 방식으로 제안했고,
대부분의 개발자들이 이 예시를 있는 그대로, 반복적으로 사용해서 그런 겁니다.

<!-- 방법1 -->
<servlet-mapping>
    <servlet-name>action</servlet-name>
    <url-pattern>/do/*</url-pattern>
</servlet-mapping>

<!-- 방법2 (사람들이 너도,나도 이걸 복붙해서 사용한 겁니다) -->
<servlet-mapping>
    <servlet-name>action</servlet-name>
    <url-pattern>*.do</url-pattern>
</servlet-mapping>

결론 :
사람들은 가이드 문서에 있는 걸 그대로 적용해서 계속 프로젝트를 찍어내다 보니,
Sturts 1 을 사용하면 .do관례적(또는 습관적)으로 지속해서 사용했던 겁니다.



이제 .do 는 지양합시다.

오늘날 springJava Web 프레임워크 의 사실상 표준이라고 생각합니다.
그러니 더 이상 Struts 1 의 관례를 따를 필요는 없겠죠?

기존에 .do 를 쓰던 프로젝트들은 어쩔 수 없지만,
새로운 프로젝트를 할 때는 이제 이런 옛 문화를 적용하지 맙시다.
url 이 안 이뻐요 😂

참고로 spring web + tomcat 환경에서 .do 를 없애는 방법은 제가
이전에 작성했던 글을 참고하시기 바랍니다.
spring boot 를 사용한다면 알아서 다 해주니, 신경쓰지 않으셔도 됩니다.


reference

profile
백엔드를 계속 배우고 있는 개발자입니다 😊

0개의 댓글