반응형

42673393-2CB9-4617-A738-607E5C9314BA.png

[테크/개발] 자바 백엔드의 날개, Spring Boot 개발 환경(IDE) 완벽 가이드: 나에게 맞는 도구는?

안녕하세요 가야태자 @talkit 입니다.

이번에 여러가지 자바 역사를 살펴봤고 스프링 부트의 역사와 개념도 알아봤는데, 이제 개발 환경을 꾸려볼려고 합니다. 이때 사용할 수 있는 개발 환경이 여러가지가 있는데 이 개발 환경들을 어떻게 구성할지에 대한 이야기를 해보고자 합니다.

스프링 부트(Spring Boot)는 과거의 복잡한 설정을 자동화해 주어 개발 생산성을 극대화해 주지만, 우리가 어떤 도구(IDE)를 손에 쥐느냐에 따라 그 개발의 '편안함'과 '작업 속도'는 천차만별로 달라집니다. 현재 자바 생태계에서 선택할 수 있는 대표적인 개발 환경들의 특징, 지원 OS, 그리고 가장 중요한 유료/무료 여부와 공식 참조 링크를 낱낱이 비교해 드리겠습니다.


🚀 [특화 섹션] 인텔리제이 커뮤니티(무료) vs 얼티밋(유료) 집중 비교

많은 초보 개발자분들이 *"인텔리제이가 대세라고 해서 다운받으려고 보니 얼티밋 버전은 너무 비싸요. 무료인 커뮤니티 버전으로 스프링 부트 개발해도 괜찮을까요?"*라는 질문을 던지십니다.

결론부터 말씀드리면 "개발은 가능하지만, 얼티밋에 비해 많은 수고로움(수동 작업)이 필요하다"입니다. 두 버전이 스프링 부트 개발 환경에서 어떤 차이를 보이는지 핵심만 비교해 드립니다.

1) 프로젝트 생성 방식의 차이

  • Ultimate (유료): IDE 내부에서 Spring Initializr를 곧바로 호출하여 몇 번의 클릭만으로 스프링 부트 프로젝트를 뚝딱 생성할 수 있습니다.
  • Community (무료): 내장 프로젝트 생성기에서 스프링 부트를 공식 지원하지 않습니다. 따라서 웹 브라우저를 켜고 스프링 공식 스타터 웹사이트(start.spring.io)에 접속하여 프로젝트를 생성한 뒤, 압축을 풀고 커뮤니티 버전에서 Import(열기)하는 번거로운 과정을 거쳐야 합니다.

2) 애플리케이션 구동 및 모니터링 (부트 대시보드)

  • Ultimate (유료): 전용 'Run Dashboard(Services)'가 존재하여 내장 톰캣 서버 제어, 액추에이터(Actuator) 연동 데이터 분석, 현재 활성화된 프로필(Profile) 변경 등을 GUI 환경에서 직관적으로 관리합니다.
  • Community (무료): 스프링 부트 전용 대시보드가 없습니다. 일반 자바 메인 클래스를 실행하듯 Application.java 파일을 직접 찾아 우클릭 후 Run을 실행해야 합니다. 여러 서버를 동시에 띄우거나 관리할 때 다소 직관성이 떨어집니다.

3) 코드 어시스트 및 설정 파일(Application.properties / yaml) 자동 완성

  • Ultimate (유료): 스프링 부트의 설정 파일들을 완벽하게 인식합니다. 예를 들어 server.port나 데이터베이스 연결 설정을 타이핑할 때 지능적인 자동 완성을 제공하고, 오타가 나면 경고해 줍니다. 또한 컨트롤러와 매핑된 URL 엔드포인트를 모아서 보는 전용 도구도 제공합니다.
  • Community (무료): 텍스트 기반의 단순 자동 완성만 지원하거나 아예 지원하지 않는 경우가 많아, 설정 파일의 키값을 개발자가 직접 공식 문서를 보며 타이핑해야 하므로 오타로 인한 삽질(?) 가능성이 커집니다.

💡 가야태자의 커뮤니티 버전 활용 팁: > 비용 부담 때문에 반드시 인텔리제이 커뮤니티 버전을 써야 한다면, 마켓플레이스에서 'Spring Boot Helper' 같은 서드파티 플러그인을 찾아서 수동으로 설치해 보세요. 완벽하진 않지만 얼티밋 버전의 갈증을 조금이나마 해소할 수 있습니다. 다만, 무료 환경에서 편안한 스프링 부트 개발을 원하신다면 커뮤니티 버전보다는 차라리 아래의 STS 4VS Code가 기능적으로 더 쾌적할 수 있습니다.


1. 실무 트렌드의 절대 강자: IntelliJ IDEA (JetBrains)

현재 전 세계 자바 및 스프링 부트 개발자들이 가장 사랑하고, 실무 표준으로 자리 잡은 통합개발환경입니다.

  • 지원 OS: Windows, macOS, Linux
  • 비용 (유료/무료): 하이브리드 (Community 버전: 무료 / Ultimate 버전: 유료)
    • 개인 및 기업에서 무료로 쓸 수 있는 커뮤니티 버전이 있지만, 스프링 부트 전용 핵심 편의 기능들은 연간 구독 형태의 Ultimate(유료) 버전에 집중되어 있습니다.
  • Spring Boot 개발 편안함: * Ultimate 버전: ⭐⭐⭐⭐⭐ (최상 - 돈값을 톡톡히 하는 완벽한 빌트인 인프라)
    • Community 버전: ⭐⭐⭐☆☆ (보통 - 자바 코딩은 훌륭하나 스프링 특화 기능이 빠져 수동 작업 필요)

2. 스프링 공식 전용 도구: STS (Spring Tools 4)

스프링의 친정인 VMware(Tanzu)에서 전통의 이클립스(Eclipse)를 기반으로 스프링 개발에 딱 맞게 최적화하여 내놓은 공식 전용 IDE입니다.

  • 지원 OS: Windows, macOS, Linux
  • 비용 (유료/무료): 100% 무료 (오픈소스)
  • Spring Boot 개발 편안함: ⭐⭐⭐⭐☆ (우수)
    • 오직 '스프링 및 스프링 부트 개발'만을 타깃으로 커스텀 되었기 때문에, 무료 도구 중에서는 최고의 안정성과 편의성을 자랑합니다.
    • 화면 우측 하단의 '부트 대시보드(Boot Dashboard)'를 통해 여러 개의 스프링 부트 애플리케이션을 직관적으로 켜고 끌 수 있으며, 런타임 상태를 쉽게 모니터링할 수 있습니다. IntelliJ Ultimate의 유료 기능 중 상당수를 무료로 누릴 수 있는 훌륭한 대안입니다.
  • 공식 다운로드 및 사용법 링크: Spring Tools 4 공식 홈페이지 및 에코시스템 가이드

3. 초경량과 커스텀의 매력: VS Code (Visual Studio Code)

마이크로소프트에서 개발한 초경량 소스코드 에디터로, 웹 프론트엔드를 넘어 백엔드 영역까지 생태계를 급격히 확장하고 있습니다.

  • 지원 OS: Windows, macOS, Linux, Web(웹 브라우저)
  • 비용 (유료/무료): 100% 무료 (오픈소스)
  • Spring Boot 개발 편안함: ⭐⭐⭐⭐☆ (양호)
    • 마켓플레이스에서 'Spring Boot Extension Pack' 확장 플러그인을 설치하면 프로젝트 생성부터 구동까지 놀라울 정도로 유려하게 지원합니다.
    • IntelliJ나 Eclipse 계열에 비해 압도적으로 가볍고 실행 속도가 빠릅니다. 메모리를 적게 차지하므로, 사양이 다소 낮은 노트북 환경이나 가벼운 코딩 환경을 선호하는 개발자들에게 최고의 편안함을 선호하는 대안으로 각광받고 있습니다.
  • 공식 확장팩 안내 링크: VS Code 공식 가이드 - Spring Boot 개발 환경 구축 및 확장팩 안내

4. 전통의 아키텍처: Eclipse (이클립스)

자바의 역사와 함께 숨 쉬어 온 전통의 오픈소스 대형 IDE입니다.

  • 지원 OS: Windows, macOS, Linux
  • 비용 (유료/무료): 100% 무료 (오픈소스)
  • Spring Boot 개발 편안함: ⭐⭐⭐☆☆ (보통)
    • 순수 이클립스에 STS 플러그인을 수동으로 설치하여 스프링 부트를 개발할 수 있습니다.
    • 하지만 플러그인 간의 버전 충돌 가능성이 있고, 과거 무거운 XML 방식의 잔재가 남아있어 초기 세팅이 다소 번거롭습니다. 만약 이클립스 기반의 개발 환경을 선호하신다면, 순수 이클립스보다는 앞서 소개해 드린 STS(Spring Tools 4)를 다운로드하여 곧바로 사용하시는 것이 정신 건강에 훨씬 이롭습니다.

5. 그 외의 틈새 선택지들

  • NetBeans (Apache): Windows/Mac/Linux 지원, 무료. 자바 표준 스펙(Jakarta EE)엔 강하나 스프링 부트 전용 플러그인 생태계가 빈약하여 추천도가 떨어집니다. (편안함: ⭐⭐☆☆☆)
  • Fleet (JetBrains): Windows/Mac/Linux 지원, 현재 프리뷰(무료) 진행 중. VS Code처럼 가벼우면서도 IntelliJ의 스마트 코드 분석 엔진을 가져와 쓸 수 있는 젯브레인의 차세대 경량 에디터입니다. (편안함: ⭐⭐⭐☆☆)
  • 클라우드 IDE (구름IDE, GitHub Codespaces 등): OS 무관, 기본 무료+유료 요금제. 웹 브라우저만 있으면 가상 컨테이너에서 스프링 부트를 띄울 수 있어 태블릿(아이패드 등) 코딩이나 외부 강의·실습용 환경 구성에 매우 편안합니다. (편안함: ⭐⭐⭐☆☆)

🏆 한눈에 보는 요약 및 추천 가이드

IDE 명 주요 추천 대상 비용 (개인/기업) Spring Boot 개발 편안함 정도
IntelliJ (Ultimate) 실무/상용 서비스 개발, 최고의 생산성을 위해 돈을 지불할 용의가 있는 분 유료 (구독제) 🔴 최상 (가장 스마트하고 편리함)
STS 4 비용 부담 없이 스프링 공식 전용 도구의 안정적인 기능을 쓰고 싶을 때 무료 (오픈소스) 🟢 우수 (무료 도구 중 가장 직관적)
VS Code 사양이 낮은 PC, 가볍고 빠른 기동성과 스타일리시한 코딩 환경 선호 무료 (오픈소스) 🟡 양호 (쾌적하고 가벼운 확장성)
IntelliJ (Community) 인텔리제이의 단축키와 코드 분석 엔진을 무료로 부드럽게 쓰고 싶을 때 무료 (오픈소스) 🟡 양호 (자바 코딩은 좋으나 스프링 수동 세팅 필요)
Eclipse 기존 금융권/공공기관의 오래된 레거시 시스템 유지보수 환경 무료 (오픈소스) ⚪ 보통 (직접 수동 플러그인 세팅 필요)

🏁 가야태자의 결론: 나에게 맞는 환경 구성은?

스프링 부트 개발 환경을 구성할 때의 핵심은 "자신의 장비 사양""비용 투자 여부"입니다.

  1. 만약 장비가 훌륭하고 생산성을 위해 비용을 투자할 의향이 있다면 IntelliJ Ultimate(유료) 환경이 최고의 정답입니다.
  2. 인텔리제이 특유의 UI와 코드 리팩토링 능력을 사랑하지만 비용이 부담된다면 조금 번거롭더라도 IntelliJ Community(무료) 버전에 수동 플러그인을 세팅해 볼 수 있습니다.
  3. 완전히 무료이면서도 장황한 수동 세팅 없이 스프링 부트 전용 기능을 안정적으로 쓰고 싶다면 STS 4가 가장 합리적인 선택입니다.
  4. 마지막으로, 컴퓨터 사양이 아쉽거나 경량화된 환경을 원한다면 VS Code 조합을 추천해 드립니다.

여러분은 어떤 IDE로 스프링 부트의 첫 발을 내딛고 싶으신가요? 여러분의 PC 환경과 목적에 맞는 최적의 환경을 꾸리시길 바라며, 다음에는 실제 프로젝트를 생성하고 구동하는 이야기로 찾아오겠습니다.

궁금한 점이나 의견이 있으시다면 언제든 댓글로 소통해 주세요! 😊

반응형
반응형

image.png

[테크/회고] 자바 웹 프레임워크 연대기: 스트럿츠(Struts)의 왕좌와 스프링(Spring)의 대혁명

자바(Java) 백엔드 생태계를 주도해 온 프레임워크의 역사를 되짚어보면, 이는 단순히 기술의 변화가 아니라 "복잡성과의 처절한 사투", 그리고 "개발자 중심의 생산성 향상"이라는 거대한 흐름의 연속이었습니다.

오늘날 자바 개발자들에게 공기처럼 당연한 존재가 된 Spring BootSpring MVC가 있기까지, 자바 웹 생태계의 패러다임을 바꾸었던 두 주인공 '스트럿츠(Struts)''스프링(Spring)'의 흥망성쇠, 그리고 자바의 표준이 된 스프링 생태계의 거대한 진화 과정을 한눈에 정리해 봅니다.


1. 태동기: EJB의 독점과 스파게티 코드의 어둠 (2000년대 초)

초기 대규모 자바 엔터프라이즈 환경은 썬 마이크로시스템즈(Sun Microsystems)가 주도한 J2EE 규격과 EJB(Enterprise JavaBeans)가 지배하고 있었습니다. 분산 환경과 트랜잭션을 컨테이너가 알아서 제어해 준다는 거창한 명분이 있었지만, 현실은 처참했습니다. 코드 한 줄을 고치거나 테스트하려면 수많은 인터페이스를 상속받아야 했고, 무거운 WAS(웹 애플리케이션 서버)를 매번 재부팅해야 했습니다. "자바의 본질인 객체지향(POJO)을 잃어버렸다"는 혹평이 쏟아졌습니다.

덮친 데 덮친 격으로 당시 웹 화면을 담당하던 JSP 영역은 HTML, 자바스크립트, 비즈니스 로직, 데이터베이스 쿼리까지 한 파일에 뒤섞여 있는 이른바 '모델 1' 방식이 흔했습니다. 조금만 프로젝트가 커져도 유지보수가 불가능한 스파게티 코드가 되기 일쑤였습니다.


2. 스트럿츠(Struts)의 등장: 최초의 웹 MVC 표준과 황금기 (2000년대 초중반)

이 어둠 속에서 자바 웹 구원의 투수로 등판한 것이 바로 아파치 재단의 스트럿츠(Struts)였습니다. 2001년 출시된 스트럿츠는 스파게티 코드처럼 엉켜있던 웹 개발 프로세스에 '모델 2 MVC(Model-View-Controller) 패러다임'을 확고하게 심어주었습니다.

  • 화면(View), 비즈니스 로직(Model), 제어 흐름(Controller)을 명확하게 분리.
  • 개발자들이 역할 분담을 할 수 있는 구조적 명확성 제공.

스트럿츠는 출시 직후 폭발적인 인기를 끌며 2003년부터 2007년 무렵까지 전 세계 자바 웹 시장을 사실상 지배했습니다. 당시 한국의 초기 대형 공공기관 프로젝트나 대기업 시스템 역시 대부분 스트럿츠를 뼈대로 구축되었습니다. 자바 웹 개발자들에게 "웹 앱은 무조건 MVC로 짜야 한다"는 공식을 각인시킨 주역이 바로 스트럿츠입니다.


3. 스프링(Spring)의 탄생: 오픈소스 혁명과 '공존'의 시대 (2000년대 중반)

스트럿츠가 앞단(웹 화면 제어)을 평정하고 있을 때, 뒤 영역(비즈니스 로직 및 객체 관리)에서는 또 다른 혁명이 시작되고 있었습니다. 2004년, EJB의 지독한 복잡성에 분노한 로드 존슨(Rod Johnson)을 필두로 스프링 프레임워크(Spring Framework) 1.0이 세상에 나왔습니다.

스프링은 무거운 컨테이너 없이도 엔터프라이즈 기능을 수행할 수 있도록 IoC/DI(의존성 주입)AOP(관점 지향 프로그래밍)를 전면에 내세웠습니다. 기술 인프라와 비즈니스 로직을 완벽히 분리하여 "다시 순수한 자바(POJO)로 돌아가자"고 외친 것입니다.

재미있는 점은, 초기 스프링은 스트럿츠의 경쟁자가 아니라 '가장 완벽한 파트너'였다는 사실입니다. 2000년대 중반 자바 웹 진영의 가장 트렌디하고 강력한 '꿀조합' 스택은 다음과 같았습니다.

  • 웹 화면 및 요청 제어(MVC): Struts
  • 비즈니스 로직 및 트랜잭션 관리(DI/AOP): Spring
  • 데이터베이스 매핑(SQL 매퍼): iBATIS (현 MyBatis)

웹 요청을 받는 앞문(Controller)은 스트럿츠가 열고, 문을 열고 들어온 데이터를 처리하는 알맹이 객체 관리는 스프링이 맡는 식으로 두 프레임워크는 아름답게 공존했습니다.


4. 세대교체: '공존'에서 '대체'로, 스프링의 왕좌 장악 (2000년대 후반)

영원할 것 같았던 스트럿츠와 스프링의 동맹은 2000년대 후반으로 넘어가며 균열이 가기 시작했고, 결국 완전한 세대교체로 이어지게 됩니다. 여기에는 몇 가지 결정적인 이유가 있었습니다.

  • Spring MVC의 대두: 스프링 진영에서 자체 웹 프레임워크인 Spring MVC를 고도화(Spring 2.5 ~ 3.0)하면서 굳이 앞단에 스트럿츠를 따로 연동할 필요가 없어졌습니다. 스프링 컨테이너와 완벽하게 네이티브로 결합하는 Spring MVC는 스트럿츠보다 훨씬 유연하고 강력했습니다.
  • 설정 지옥(XML)의 한계: 스트럿츠는 화면 하나나 액션 하나를 추가할 때마다 거대한 struts-config.xml 설정을 매번 장황하게 수정해야 하는 번거로움이 있었습니다.
  • 결정타가 된 보안 취약점 사태: 스트럿츠가 스트럿츠2(Struts2)로 버전 업을 치는 과정에서, 원격으로 코드를 실행할 수 있는 치명적인 보안 취약점(CVE)이 주기적으로 발생했습니다. 금융권과 대기업 시스템이 해커들의 표적이 되자, 안정성이 최우선인 기업들은 대대적으로 스트럿츠를 버리고 스프링 생태계로 탈출하기 시작했습니다.

5. 스프링 생태계의 거대한 양대 축: Spring Framework vs Spring Boot

스트럿츠를 흡수하고 자바 생태계를 통일한 스프링은 거대해진 몸집만큼 강력한 진화를 거듭했습니다. 현대 자바 백엔드는 크게 인프라와 기술 표준을 정의하는 'Spring Framework'와, 이를 기반으로 빠른 생산성을 제공하는 'Spring Boot'의 두 축으로 움직입니다. 각 프레임워크가 걸어온 핵심 버전을 브리핑합니다.

🧱 Spring Framework의 진화 (1.0에서 6.0까지)

  • 1.0 (2004): 순수 자바 객체(POJO) 기반의 DI/AOP 개념 증명. 무거운 XML 설정 중심.
  • 2.0 ~ 3.0 (2006~2009): 웹 계층을 위한 Spring MVC의 본격적인 강화. 점차 XML을 벗어나 @Component, @Autowired 같은 자바 어노테이션(Annotation) 기반 설정의 표준 도입.
  • 4.0 (2013): 자바 8(Java 8) 지원 개시. 람다식과 새로운 날짜 API 등을 수용하며 현대적 자바 문법과의 정합성 확보.
  • 5.0 (2017): 대규모 트래픽 처리를 위한 비동기·논블로킹 리액티브 프로그래밍 스택인 Spring WebFlux 탑재.
  • 6.0 (2022~현재): 자바 17을 최소 요구 버전으로 지정하여 구조적 최적화 단행. 가상 스레드(Project Loom) 연동 및 클라우드 환경을 위한 GraalVM 네이티브 이미지 빌드 공식 지원.

🚀 Spring Boot의 진화 (1.0에서 4.5까지)

  • 1.0 (2014): 수많은 XML/자바 설정에 지친 개발자들을 구원하기 위해 등장. "설정보다는 관례(Convention over Configuration)"를 모토로 내장 톰캣(Tomcat)과 자동 설정(starter) 개념 최초 도입.
  • 2.0 (2018): Spring Framework 5.0 기반으로 업그레이드되면서, 리액티브 웹 스택과 새로운 모니터링 툴(Actuator) 기능 대폭 강화.
  • 3.0 (2022): 자바 17 표준 탑재 및 Spring 6 기반 리프레시. 빌드 타임에 C/C++ 프로그램처럼 바이너리를 뽑아내어 구동 속도를 밀리초(ms) 단위로 줄이는 GraalVM 네이티브 컴파일 전면 수용. 클라우드 네이티브(MSA/Serverless)의 최적화 달성.
  • 4.0 ~ 4.5 (현재): 더 고도화된 자바 최신 스펙 완벽 튜닝. 대규모 언어 모델(LLM) 연동을 위한 Spring AI 프레임워크 인프라가 코어 단에 밀접하게 내장되었으며, 가상 스레드(Virtual Thread) 최적화를 통해 리액티브 코딩 없이도 초고효율 멀티스레딩을 가볍게 구동하는 완성형 아키텍처 구축.

6. 두 프레임워크의 상관관계: 엔진과 자동차

종종 신입 개발자들이 "스프링 프레임워크와 스프링 부트 중 무엇을 공부해야 하나요?" 혹은 "부트가 나왔으니 스프링 프레임워크는 끝난 건가요?"라는 질문을 하곤 합니다. 하지만 두 기술은 대체 관계가 아닌 완벽한 상호보완적 결합 관계입니다.

쉽게 비유하자면, 스프링 프레임워크는 '고성능 자동차 엔진'이고, 스프링 부트는 그 엔진을 얹고 바퀴, 시트, 내비게이션까지 완벽하게 조립해 둔 '완성차'입니다.

  • Spring Boot: 편리한 완성차 (내장 톰캣, 자동 설정, 자동 버전 관리)
  • Spring Framework: 핵심 심장 엔진 (DI/AOP Core, Spring MVC, WebFlux 테크놀로지)

스프링 부트는 독자적인 프레임워크가 아닙니다. 내부를 뜯어보면 결국 스프링 프레임워크가 핵심 심장(Core)으로 돌고 있습니다. 과거에는 엔진(Spring Framework)만 덜렁 주어졌기 때문에 개발자가 직접 차체(Tomcat 서버)를 구해서 용접하고, 연료 공급 장치(XML 파일 수백 줄)를 직접 커스텀 조립해야 했습니다.

반면, 스프링 부트는 개발자가 Boot를 실행하는 순간, 뒤편에서 스프링 프레임워크의 DI/AOP 엔진을 깨우고 필요한 라이브러리들을 관례에 맞게 알아서 조립해 줍니다. 결국 부트를 깊고 단단하게 쓴다는 것은 그 내부에서 돌아가는 스프링 프레임워크의 사상을 완벽히 이해하는 것과 같습니다.


🏁 마치며

  • 스트럿츠(Struts)는 무질서하던 자바 웹 개발에 최초로 MVC 패턴의 규격을 제시하며 웹 제어의 대중화를 이끈 선구자였습니다.
  • 스프링(Spring Framework)은 EJB의 무거움에 반대하며 순수 자바(POJO) 정신을 깨웠고, 기술을 유연하게 통합하는 포용력으로 시작해 웹 영역(Spring MVC)까지 완벽히 흡수하며 생태계를 통일했습니다.
  • 스프링 부트(Spring Boot)는 거대해진 스프링 엔진을 개발자들이 단 몇 초 만에 도로 위로 끌고 나갈 수 있게 완성차 형태로 포장해 준 혁신이었습니다.

현재 스트럿츠는 오래된 레거시 시스템의 유지보수 단계에서나 볼 수 있는 '살아있는 화석'이 되었지만, 그가 남긴 MVC 패러다임은 여전히 스프링의 심장 속에 살아 숨 쉬고 있습니다. 세월을 관통하며 다듬어진 이 견고한 생태계 덕분에, 현대의 우리는 인프라 설정에 고통받지 않고 오롯이 비즈니스 로직에만 집중할 수 있는 최고의 개발 풍요를 누리고 있습니다.

이전글

[Java 보안] 오픈 JDK 벤더별 EOS 비교 및 자바 보안 패치의 중요성 / https://www.steemit.com/kr/@talkit/java-jdk-eos--xz1g03

[Java와 AI] 자바가 AI 시대의 주역이 되지 못한 이유와 새로운 반격 / https://www.steemit.com/java/@talkit/java-ai-ai--tfzrzd

[개발 상식] 1960년대 기계어부터 현대 AI 기반 코드 최적화까지 한눈에 보기 / https://www.steemit.com/kr/@talkit/ai--px1egt

[Java] 자바 역사 가이드: SE와 EE(Jakarta EE) 통합 타임라인과 대전환 비화 / https://www.steemit.com/kr/@talkit/java-se-eejakarta-ee--p5j85z

[Java] 자바의 탄생 배경과 역사, C언어와의 차이점 총정리 / https://www.steemit.com/kr/@talkit/java-c--ji3f9j

반응형
반응형




거의 매일 JSTL을 사용하다가 오랫만에 jsp에서 Spring에서 넘긴 값을 받아야 될 일이 생겼습니다.


그래서 찾아 봤는데 자료가 잘 안보이더라구요.


드디어 찾았습니다. ^^;;


http://okky.kr/article/176030


URL에서 발견 했습니다.


model.addAttribute("strYear", strYear1);


콘트롤러에서 위와 같이 넘겼습니다.


JSTL은 아래와 같이 받으시면 됩니다.


${strYear}



그런데 JSP에서는 위 URL에도 나와 있지만,


String strYear = (String) request.Attribute("strYear");


와 같이 받으시면 됩니다.


잊어 버리지 말자고 일단 적어 둡니다. ^^;;


그리고 로그인을 해야 되서 답변에 감사 인사를 못 드렸는데 ^^;;


gruaband 님 감사합니다.



반응형

+ Recent posts