개발의 시작과 끝
2020.05.13 / Day - 31 자바 J2EE, JDK, JRE, J2SE 차이 본문
31일차
JAVA J2EE, JDK, JRE, J2SE 설명 및 기능
Java SE(Standard Edition)
자바 스탠다드 에디션은 가장 보편적으로 쓰이는 자바 API집합체입니다. 예전에는 J2SE로 불렸으나 버전 6.0이후에 Java SE로 변경되었습니다. 이전에는 썬 마이크로시스템즈에서 관리했으나 현재는 JCP 주도하에 개발되고 있습니다. 일반 자바 프로그램 개발을 위한 용도로 사용되며 스윙이나 AWT와 같은 GUI 방식의 기본 기능이 포함됩니다.
Java EE(Enterprise Edition)
자바 엔터프라이즈 에디션은 자바를 이용한 서버측 개발을 위한 플랫폼입니다. Java EE는 표준 플랫폼인 Java SE를 사용하는 서버를 위한 플랫폼입니다. 엔터프라이즈 환경을 위한 도구로 EJB, JSP, Servlet, JNDI 같은 기능을 지원하며 WAS를 이용하는 프로그램 개발 시 사용됩니다.
*EJB(Enterprise JavaBeans): 기업환경의 시스템을 구현하기 위한 서버측 컴포넌트 모델이다. 즉, EJB는 애플리케이션의 업무 로직을 가지고 있는 서버 애플리케이션이다. EJB 사양은 Java EE의 자바 API 중 하나로, 주로 웹 시스템에서 JSP는 화면 로직을 처리하고, EJB는 업무 로직을 처리하는 역할을 한다.
JDK(Java Development Kit)
자바 개발을 위한 필수 도구입니다. JDK는 JRE를 포함하고 있습니다.
JAVA J2EE, JDK, JRE, J2SE 차이점
JRE(Java Runtime Environment)
JDK로 만들어진 프로그램을 실행할 수 있도록 합니다. 파일 용량이 적은 대신 개발을 할 수 없습니다. 예를 들어 한글 뷰어의 경우 한글 파일을 읽을 수 있지만 작성하지는 못하는 기능과 비슷합니다.
2SE (JAVA 2 Standard Edition)
일반 자바 프로그램 개발을 위한 용도로 이용되는 개발도구이며 각종 자료구조, 기본 유틸리티, 스윙이나 AWT와 같은 GUI도구등의 기본기능을 포함하고 있다. 즉, 개발을 할 때의 필수적인 요건인 셈이다. J2SE는 어떠한 자바 프로그램을 개발하더라도 무조건 설치되어야 함은 당연하며, SDK, RE, Plugin 등으로 구성되어 있다.
J2EE (Java 2 Enterprise Edition)
자바를 이용한 서버측 개발을 위한 플랫폼이다. 표준 플랫폼인 Java SE를 사용하는 서버를 위한 플랫폼이고, 엔터프라이즈 환경을 위한 도구로 EJB, JSP, Servlet, JNDI 같은 기능을 지원하며 WAS를 이용하는 프로그램 개발 시 사용된다. 웹 어플리케이션을 개발하기 위한 라이브러리가 포함되어 있다. 즉, J2SE외에 (웹 )서버사이드 프로그 램을 개발하기 위한 것들로, EJB, Servlet, JSP 등을 개발하기 위해서 필요하다. 또한 EJB container/Web container/ 그외 툴이 포함되어져 있다.
간략하게 차이를 말하자면, J2SE는 pc를 만들 때 사용하는 것이고, J2EE는 웹서버를 만들 때 사용하는 것이다.
JRE
먼저 JRE는 Java Runtime Environment의 약자로 자바 프로그램을 실행시켜주는 환경을 구성해주는 도구다. 즉 JAVA를 개발할 필요는 없는데, 실행은 시켜줘야 하는 경우에는 꼭 JRE가 있어야 한다. 반면 JAVA 개발시 꼭 필요한 것이 있는데 그것이 바로 JDK다.
JDK
JDK는 Java Development Kit의 약자로 말그대로 자바 개발시 필요한 툴킷을 제공하는 도구모음이다. 개발하려면 당연히 실행도 시켜야 하므로 JDK 안에는 JRE가 포함되어 있다.
번외(JAava ME, SDK, JVM)
Java ME(Micro Edition)
자바 마이크로 에디션은 제한된 자원을 가진 휴대폰, PDA, 셋탑박스 등에서 Java프로그래밍 언어를 지원하기 위해 만들어진 플랫폼입니다. 임베디드 시스템에서 자바로 프로그램을 개발할 떄 이용합니다.
SDK(Standard Development Kit or Softeware Development Kit)
개발 언어의 소프트웨어 개발 킷으로, 프로그램을 개발하려면 개발하는 프로그램있어야 하는데 이를 의미합니다.
JVM(Java Virtual Machine)
자바가상머신의 약자로, 사용자가 자바 파일을 생성한 후 JDK의 컴파일을 커쳐 바이트 코드인 .class가 되어서 JVM을 거치면 컴퓨터가 사용할 수 있는 기계언어로 변경해주는 역할입니다.
'풀스택 > 자바 공부, 복습' 카테고리의 다른 글
2020.05.13 / Day - 31 자바 상속과 구성 (0) | 2020.05.13 |
---|---|
2020.05.13 / Day - 31 자바 CGI, 서블릿, 톰캣 (0) | 2020.05.13 |
2020.05.13 / Day - 31 자바 JVM과 바이트코드 (0) | 2020.05.13 |
2020.05.12 / Day - 30 자바 게시판 구현 회원가입, 로그인, 로그아웃 (0) | 2020.05.12 |
2020.05.11 / Day - 29 자바 do while문 (0) | 2020.05.11 |