티스토리 뷰
네, 아주 날카로운 질문입니다! 결론부터 말씀드리면 **전자정부프레임워크(eGovFrame)**의 구 버전이나 전통적인 Spring Legacy 프로젝트에는 @SpringBootApplication과 main 메서드가 없습니다.
이유는 **"서버를 누가 먼저 실행하느냐"**의 차이 때문입니다. 이해하기 쉽게 비교해 드릴게요.
1. 스프링 부트 vs 전자정부프레임워크(Legacy)
| 구분 | 스프링 부트 (Spring Boot) | 전자정부/Legacy (Spring MVC) |
| 실행 주체 | 내장형: 자바(main)가 서버를 켬 | 외장형: 서버(Tomcat)가 자바를 켬 |
| 메인 메서드 | 있음 (public static void main) | 없음 |
| 핵심 설정 | @SpringBootApplication 어노테이션 | web.xml 파일 (또는 Config 클래스) |
| 배포 파일 | .jar (자바 실행 파일) | .war (웹 압축 파일) |
Sheets로 내보내기
2. 왜 메인 메서드가 없나요?
전통적인 전자정부프레임워크 방식은 **WAS(Web Application Server)**라고 불리는 톰캣(Tomcat) 같은 별도의 소프트웨어가 주인공입니다.
- 톰캣 실행: 개발자가 톰캣 서버를 먼저 가동합니다.
- 설정 파일 읽기: 톰캣이 프로젝트 안에 있는 WEB-INF/web.xml 파일을 읽습니다.
- 스프링 구동: web.xml에 적힌 설정을 보고 그제야 스프링 컨테이너를 메모리에 올립니다.
- 객체 생성: 우리가 만든 @Controller, @Service 등을 이때 스캔해서 생성합니다.
즉, 서버가 이미 켜진 상태에서 내 코드가 그 위에 '탑승'하는 구조이기 때문에, 내가 직접 main 메서드를 써서 서버를 켤 필요가 없는 것이죠.
3. 대신 어디서 시작되나요? (핵심 파일)
전자정부프레임워크 프로젝트를 열어보시면 다음 파일들이 가장 중요합니다.
- src/main/webapp/WEB-INF/web.xml: 프로젝트의 설계도입니다. 여기서 DispatcherServlet이 설정되어 요청을 기다립니다.
- src/main/resources/egovframework/spring/context-*.xml: 스프링 부트의 자동 설정 대신, 여기서 DB 연결이나 서비스 스캔 설정을 일일이 적어둡니다.
4. 요즘 전자정부프레임워크는요?
최근에 나온 전자정부프레임워크 4.x 버전부터는 스프링 부트 기반을 지원합니다. 이 버전으로 프로젝트를 만들면 우리가 아는 @SpringBootApplication과 main 메서드가 생깁니다.
하지만 공공기관이나 기업에서 오랫동안 써온 3.x 버전 이하라면 99% 확률로 main 메서드 없이 web.xml과 XML 설정 파일들로 돌아가는 구조일 것입니다.
요약
"메인 메서드가 없다면, 톰캣(WAS)이 외부에서 나를 불러주는 수동적인 구조(Legacy)라고 이해하시면 됩니다."
※ 해당 내용은 Google Gmini3.0에서 작성되었습니다.
'WEB > 자바' 카테고리의 다른 글
| .do 를 제거하고 보여주는 경우에 특별한 이유가 있을까요? (0) | 2026.03.25 |
|---|---|
| 전자정부프레임워크(eGovFrame) 3.0 버전 (0) | 2026.03.25 |
| 어노테이션이 궁금합니다. (0) | 2026.03.25 |
| 스프링부트가 실행될때 어떤순서로 불러오는지 궁금합니다. (0) | 2026.03.25 |
| DAO - selectUserList - xml 어느파일에 있는줄 알고 가져와요? (0) | 2026.03.25 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 자바스크립트break
- 파비콘 #파비콘 사이트에 적용
- thymeleaf
- 탭메뉴자바스크립트
- iptime와이파이증폭기 #와이파이증폭기설치
- echart
- SQL명령어 #SQL
- 좋은책
- ajax
- 자바스크립트정규표현식
- 자바스크립트countiue
- 증폭기 #아이피타임증폭기
- 좋은책 #밥프록터 #부의원리
- jQuery #jQuery이미지슬라이드 #이미지슬라이드
- 연명의료결정제도 #사전연명의료의향서 #사전연명의료의향서등록기관 #광주사전연명의료의향서
- jdk #jre
- 자바스크립트 #javascript #math
- 광주분식 #광주분식맛집 #상추튀김 #상추튀김맛집 #광주상추튀김
- 정보처리기사 #정보처리기사요약 #정보처리기사요점정리
- lg그램pro #lg그램 #노트북 #노트북추천 #lg노트북
- // 사진직: 데이터가 없으면 DEFAULT_IMG 사용 const profileSrc = (d.img && d.img !== "") ? d.img : DEFAULT_IMG;('#user-photo').attr('src'
- 테스크탑무선랜카드 #무선랜카드 #아이피타이무선랜카드 #a3000mini #무선랜카드추천
- sw기술자평균임금 #2025년 sw기술자 평균임금
- 썬크림 #닥터지썬크림 #내돈내산 #내돈내산썬크림 #썬크림추천 #spf50썬크림 #닥터지메디유브이울트라선
- 쇼팬하우어 #좋은책
- css미디어쿼리 #미디어쿼리 #mediaquery
- 와이파이증폭기추천 #와이파이설치
- 파비콘사이즈
- 바지락칼국수 #월곡동칼국수 #칼국수맛집
- 무료폰트 #무료웹폰트 #한수원한돋움 #한수원한울림 #한울림체 #한돋움체
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 |
| 29 | 30 | 31 |
글 보관함

