JAVA · SPRING · JSP MAINTENANCE

Java · Spring · JSP 레거시 시스템 유지보수

JSP · Servlet, Spring · 전자정부 표준프레임워크, Spring Boot로 만든 업무 시스템을 이어받아 운영합니다. 만든 업체와 연락이 끊긴 시스템도 소스와 서버를 직접 분석해 보안 업그레이드, 장애 대응, 기능 개선까지 맡습니다.

제너릭아이티는 Java 기반 업무 시스템을 직접 개발하고 운영하는 개발사입니다. Spring Boot 2.7 · 3.x와 Java 11 · 17로 만든 영업관리 · 레포팅 · 인사관리 · HR 진단 시스템을 운영하고 있고, JSP · Servlet으로 만든 오래된 웹 시스템도 이어받아 유지보수합니다.

이런 Java 시스템이라면

  • 10년 전 외주로 만든 JSP · Spring 시스템인데, 만든 업체와 연락이 끊겼다
  • Java 6 · 7 · 8, Tomcat 7 · 8, Spring 3 · 4처럼 보안 지원이 끝난 버전으로 돌아가고 있다
  • 전자정부 표준프레임워크 2.x · 3.x 기반이라 맡아줄 업체를 찾기 어렵다
  • 보안점검에서 오래된 라이브러리(Log4j · Struts · Commons 계열 등) 취약점을 지적받았다
  • 빌드 방법을 아는 사람이 없어 작은 수정도 못 하고 있다

맡는 Java 기술 범위

구분대상주로 하는 작업
JSP · ServletJSP · Servlet, JSTL, Struts 1 · 2, iBatis · JDBC 직접 호출구조 분석, 취약 코드(SQL 인젝션 · XSS) 수정, 보안 기능 추가
SpringSpring 3 · 4 · 5 MVC, 전자정부 표준프레임워크 2.x · 3.x · 4.x, MyBatis프레임워크 버전 업, 라이브러리 교체, 기능 개선
Spring BootSpring Boot 2.x · 3.x, JPA · QueryDSL, Spring Security운영 · 장애 대응, 2.x → 3.x 전환, 인증 · 권한 보강
Java · WASJava 6 ~ 21, TomcatJDK · Tomcat 지원 버전 전환, WAS 보안 설정
빌드 · 배포Ant · Maven · Gradle, 수동 WAR 배포빌드 환경 복구, 배포 절차 문서화
DB · 서버Oracle · MySQL · MariaDB · MS-SQL, CentOS · Ubuntu · Windows ServerDB 버전 업, 지원 종료 OS 이전, 서버 이관

Java 레거시에서 자주 하는 작업

지원 종료 버전 업그레이드

Java · Spring · Tomcat은 버전마다 보안 지원 기간이 정해져 있고, 지원이 끝나면 새 취약점이 나와도 패치가 나오지 않습니다. 예를 들어 Spring Boot 2.7은 2023년 11월에 오픈소스 지원이 끝났고, Tomcat 8.5도 2024년 3월에 지원이 끝났습니다. Spring Boot 3.x로 옮기려면 Java 17 이상이 필요하고 javax.* 패키지를 jakarta.*로 바꿔야 해서, 코드와 라이브러리를 함께 고쳐야 합니다. 운영을 멈추지 않도록 단계를 나눠 진행합니다. (참고: 오래된 Java · Spring 시스템, 버전 확인하는 법과 안전한 업그레이드 순서)

취약 라이브러리 교체

오래된 Java 시스템에는 Log4j 1.x · 취약 버전 2.x, Struts, Commons FileUpload · Collections, 구버전 Jackson처럼 알려진 취약점이 있는 라이브러리가 남아 있는 경우가 많습니다. 사용 중인 라이브러리 목록을 뽑아 취약 버전을 찾고, 교체 후 깨지는 코드를 수정합니다.

보안점검 지적 사항 조치

SQL 인젝션 · XSS 같은 취약 코드 수정, 로그인 실패 잠금 · 2단계 인증 · 접속기록 · 개인정보 암호화 같은 보안 기능을 JSP · Spring 시스템에 직접 개발해 넣습니다. 자세한 내용은 협력업체 보안점검 대응과 보안점검 체크리스트 가이드를 참고하세요.

빌드 · 배포 환경 복구

만든 업체가 떠난 Java 시스템은 소스는 있어도 빌드 방법을 아는 사람이 없는 경우가 많습니다. 운영 서버의 WAR · class 파일과 소스를 비교해 실제 운영 버전을 확인하고, 빌드 · 배포 절차를 다시 만들어 문서로 남깁니다.

운영 중인 Java 시스템

고객사시스템기술
태산xxx영업관리 · 레포팅 · 인사관리 시스템Spring Boot 2.7 · 3.3, Java 17, JPA · QueryDSL, Spring Security
마인xxxHR 진단 솔루션 · 레포팅 시스템Spring Boot 2.7, Java 17, JPA · QueryDSL, Spring Security
이지xxx헬스퀘어 플랫폼Spring Boot 2.7, Java 11, JPA · QueryDSL

이 밖에 JSP · Servlet으로 만든 기업 웹 시스템, PHP · ASP 시스템도 함께 운영하고 있습니다. 전체 목록은 레거시 · 보안 유지보수에서 볼 수 있습니다.

인수 절차

  1. 자료 확인 — 소스, 운영 서버 접근 권한, 관리자 · 테스트 계정, 남아 있는 문서를 확인합니다.
  2. 구조 · 버전 진단 — Java · Spring · WAS · 라이브러리 버전, 빌드 방식, DB 구조, 보안 취약점을 정리합니다.
  3. 범위 · 견적 제안 — 월 정액 유지보수 범위와 우선 조치할 보안 · 업그레이드 항목을 제안합니다.
  4. 안정화 — 빌드 · 배포 환경 복구, 백업 체계 정비, 긴급 취약점 조치를 먼저 진행합니다.
  5. 월간 운영 — 장애 대응, 기능 개선, 월간 보안 점검, 단계적 버전 업그레이드를 이어갑니다.

유지보수 방식

  • 월 정액 유지보수: 장애 대응, 소규모 수정, 월간 보안 점검을 포함합니다. 월 50만 원부터(VAT 별도)이며 시스템 규모에 따라 달라집니다.
  • 건별 개발: 버전 업그레이드, 보안 기능 개발, 기능 추가처럼 범위가 정해진 작업은 건별로 견적을 드립니다.
  • 무료 진단: 계약 전에 Java · Spring · WAS 버전과 주요 취약점을 진단해 드립니다. 진단만 받고 끝내도 됩니다.

자주 묻는 질문

다른 업체가 만든 JSP · Spring 시스템도 맡을 수 있나요?
가능합니다. 소스와 운영 서버 접근 권한을 받아 구조와 버전을 먼저 분석합니다. 문서가 없거나 빌드 방법을 모르는 상태여도 운영 중인 파일과 소스를 비교해 이어받습니다.
전자정부 표준프레임워크로 만든 시스템도 되나요?
됩니다. 전자정부 표준프레임워크는 Spring 기반이라 Spring MVC · MyBatis 구조로 분석해 유지보수하고, 필요하면 지원되는 버전으로 업그레이드합니다.
Java 8 · Tomcat 8 시스템을 꼭 업그레이드해야 하나요?
보안점검이나 개인정보 처리가 있는 시스템이라면 지원되는 버전으로 옮기는 것을 권합니다. 다만 한 번에 바꾸면 위험하므로, 취약 라이브러리 교체와 WAS 보안 설정을 먼저 하고 Java · 프레임워크 버전 업은 단계적으로 진행합니다.
Spring Boot 2.x를 3.x로 옮기는 데 얼마나 걸리나요?
시스템 규모와 사용 라이브러리에 따라 다릅니다. Java 17 전환, javax → jakarta 패키지 변경, Spring Security 설정 변경이 주된 작업이며, 무료 진단 후 기간과 비용을 안내해 드립니다.
월 비용은 어느 정도인가요?
월 정액 유지보수는 월 50만 원부터입니다(VAT 별도). 시스템 규모, 월간 점검 범위, 예상 개발 요청량에 따라 달라지며 무료 진단 후 견적을 드립니다.

Java · JSP 시스템, 맡길 곳을 찾고 계신가요?

시스템 이름, Java · Spring · Tomcat 버전, 현재 상황만 알려주시면 인수 가능 여부와 유지보수 범위부터 안내해 드립니다.

Java · Spring 유지보수 상담