엔터프라이즈 애플리케이션에서 Java ee 6 대 스프링 프레임 워크를 사용하는 것이 장점/단점은 무엇입니까? 대규모 프로젝트의 경우 어느 것이 더 낫습니다 (이유)? java ee 6과 비교하면 스프링 단점은 무엇입니까? 봄에는 경험이 없지만 그 차이점을 알고 싶습니다.Java ee 6 스택 대 스프링 프레임 워크의 차이점은 무엇입니까?
답변
Java EE의 주요 장점은 공식 프레임 워크입니다. Spring은 Spring과 동일한 기능을 가지고 있습니다. 하나의 상자 - 컨테이너에 항상 들어 있다는 사실을 제외하면 사실입니다 (일부 구성 요소가 필요하지 않더라도 존재합니다). 물론 Java EE의 일부 구성 요소 (예 : Weld)를 자바 SE 응용 프로그램에 별도로 연결할 수도 있지만 일반적이 아닙니다.
스프링은 원하는 구성 요소 측면에서 더 구성 가능합니다. 신청서에 필요한 것을 결정할 수 있습니다 (일반적으로 DI). Spring은 JSP와 같은 Java EE 기능을 사용할 수도있다.
Java EE의 작은 하위 집합 (종속성 삽입과 같은) 만 필요한 경우에는 Spring을 사용하는 것이 좋습니다. Java EE의 여러 기능 (예 : JTA + JMS + DI + 등)이 필요한 경우 Glassfish를 사용합니다.
가장 큰 차이점은 스프링 프레임 워크에서는 완전한 JavaEE 컨테이너가 필요 없다는 것입니다. 그렇지 않으면, 그들은 같은 문제에 대한 다소 다른 두 가지 해결책입니다. 이 의견의 근거가되기 때문에 질문의 장점/단점 부분에 대해서는 언급하지 않겠습니다.
웹 프로필 덕분에 완전한 java ee 컨테이너를 사용할 필요가 없습니다. –
@ hasansafiary 이것은 사실이지만, 응용 프로그램이 또한 사소한 업무 로직을 수행하고 있다고 가정했습니다. – Henry
JavaEE 6은 이전보다 Spring 2/3과 훨씬 유사합니다. Spring의 주요 기능/프로젝트는 JavaEE에 상응하는 것이므로 실행할 전체 JavaEE 서버가 필요하지 않습니다. 당신은 단지 당신이 사용하는 영역이 필요합니다.
Java EE의 한 가지 장점은 작은 JavaEE API 만 종속성으로 코딩하고 구현을 서버의 책임으로 두는 것입니다. 공인 된 서버가 필요하지 않습니다. 필요한 구현만으로 Tomcat에서 실행할 수 있습니다. 그들은 이미 TomEE 프로젝트를 통해 당신을 위해 그것을했습니다.
그래서 그게 전부입니다. 클래스에서 org.springframework 대신 java 및 javax 패키지 만 사용하려면 JavaEE를 선택하십시오.
비 자바 또는 javax 패키지 (이유는 무엇입니까?)를 사용하지 않으려 고 Spring 및 기타 Java 이외의 라이브러리를 사용할 수 있습니다.
둘 다 많은 문제에 대한 솔루션을 제공하며 Stackoverflow의 모든 답변이 편향됩니다. 그 일반적인 질문을하는 것은 유용하지 않습니다. 그것은 달려있다. 당신은 무엇입니까? 구문 및 사용 환경 설정. 성능 요건. 보안 요구 사항 ... 각 구성 요소는 사용법에 따라 더 나아질 수 있으며 두 가지를 모두 사용하고 각 구성 요소 중에서 선택할 수 있습니다.
나는 보안 및 성능 및 모든 것이 중요하다는 엔터프라이즈 애플리케이션을 원하지만 Java ee가 엔터프라이즈 애플리케이션에 가장 적합하다는 것을 증명해야한다. –
좋은 질문이지만 불행히도 주제가 너무 넓기 때문에 의견을 제시하지 않습니다. – Henry
감사합니다 henry, 내가 그들을 알 수 있도록 도와 줄 수 있습니까? –