Dev/Java

[java] 자바 프레임워크

창문닦이 2019. 3. 18. 17:42

Framework 

프로그램 개발의 다양한 기능들을 통합적으로 제공한다.

프레임워크는 하나의 애플리케이션을 구축할 때 모든 애플리케이션의 공통적인 개발 환경을 제공. 쉽게 말해 개발에 필요한 화면 구현, DB연동, 개발환경들의 공통적인 부분을 제공함으로서 비용 절감 가능. 프레임워크는 상품을 만들기 위한 공장, 라이브러리는 상품을 만드는데 필요한 부품에 해당하는 개념으로 이해하면 된다.

JAVA Framework

 

 

1. Struts1 

 

현재 회사에서 많이 사용하진 않으나 기존에 개발된 프로그램이 있으므로 알아둬야 함. 스트럿츠는 Java Servlet나 JavaServer Pages (JSP)의 기술을 이용하고 Web 어플리케이션을 구축한 데에 유용한 오픈 소스 체제를 제공. MVC 패턴에서 Controller 역할을 하는 웹 어플리케이션 프레임 워크이다.

 

 

2. Hibernate

 

많이 사용하지 않음, 자바 기반의 ORM (Object Relationship Mapper). ORM은 데이터베이스와 객체 지향 프로그래밍 언어간의 호환되지 않는 데이터를 변환하는 프로그래밍 기법이다. 객체 관계 매핑이라고도 한다. ORM은 DB의 테이블들을 객체화 하여 접근 할 수 있으며, PreparedStatement 의 파라미터와, ResultSet 의 값을 자바 빈의 객체화 쉬운 매핑을 시켜주어 자바 코드를 간략화시킨다.

 

 

3. iBatis(2.0) -> MyBatis(3.0) 

iBatis와 MyBatis는 SQL Mapper를 활용해서 JDBC를 쉽고 편하게 사용할 수 있게 도와주는 개발 프레임워크. 자바 기반의 ORM (Object Relationship Mapper). 관계형 데이터베이스에 접근할 때 필요한 자바코드를 현저하게 줄일 수 있다. 간단한 XML 서술자를 사용해서 간단하게 자바 빈즈를 SQL statement에 매핑 시킨다. 간단함(Simplicity)이란 다른 프레임워크와 객체 관계 매핑 툴에 비해 mybatis(ibatis)의 가장 큰 장점이다. mybatis(ibatis) Data Mapper를 사용하기 위해서 자바 빈즈와 XML 그리고 SQL에 선지식이 필요 하며 Data Mapper를 사용하면 실제 SQL문의 모든 기능을 가질 수 있다.

 

JDBC 개발 절차 

Driver 등록 ▶ Connction 생성하여 DB연결 ▶ Statement-쿼리문 객체생성 ▶ Execute-쿼리문 실행 ▶ Result - 결과저장 ▶ Close-Connction,Statement닫기

 

JDBC를 이용함에 따라 반복되는 개발 과정이 굉장히 많았다. iBatis는 위의 6단계의 JDBC 개발절차를 추상화하여 개발 생산성을 높인다. SqlMapConfig.xml에 DB정보를 등록하고 이 정보를 이용하여 커넥션을 생성한다. SqlMap을 사용하기 위해서 SqlMap 설정파일과 SQLMap 매핑 파일이 필요하다.

 

4. Rails : 나왔다가 반짝하고 사라짐

 

 

5. Struts2

Struts1 과 Struts2가 연동되어 일부분이 나뉘어 개발된 프로그램들이 존재하므로 공부해야한다. Struts 2 는 Struts 1과는 전혀 다른 아키텍처로 구성되어 있다.(Struts 2 는 Struts1에 기반 하지 않음)

 

 

6. Spring2.5 > 3.0 (3.0버전부터 스프링의 기반이 만들어짐. 이 버전부터 대부분의 기능이 구현이 됨)

다양한 프레임워크를 섞어 사용하는 프로젝트들이 많으므로 경우의 수를 고려하여 공부 진행

 

 


다운로드 사이트

http://www.apache.org/

- struts1 : http://struts.apache.org/

 

 

-mybatis : http://blog.mybatis.org/

 

 

 

- ibatis - 2.3.4.726.zip (ibatis 의 마지막 버전. 검색하면 다운로드 사이트 많음)