SlideShare una empresa de Scribd logo
1 de 4
Descargar para leer sin conexión
스프링프레임워크 & 마이바티스
(Spring Framework, MyBatis)
1. 스프링 프레임워크 개요
1-1. 도입 배경
1-1-1. 자바 빈(Java Bean)
 [1995년]JAVA 탄생, 애플릿의 강력함에 매력
 [1996년12월]Sun MicroSystems에서 자바빈 1.0 명세 발표, (자바를 위한 소프트웨어 콤포넌
트 모델을 정의) 자바빈즈는 너무 단순했고 개발자는 엔터프라이즈 개발자들은 좀 더 나은
것을 원함. 정교한 애플리케이션은 트랜잭션지원, 보안, 분산컴퓨팅 같은 서비스가 필요한데
반해 자바 빈즈는 너무 단순함
 [1998년 3월]EJB 1.0 발표. EJB는 엔터프라이즈 급의 서비스를 제공하고 자바 콤포넌트의 사
상을 서버측으로 확장 했지만 원래의 자바빈즈가 가지고 있던 단순한은 읽어버림. 성공한 많
은 애플리케이션이 EJB를 기반으로 구축되었음에도 EJB는 본래 의도와 달리 엔터프라이즈 애
플리케이션 개발을 단순화 하지는 못함. 모든 버젂의 EJB 명세에는 “EJB는 엔터프라이즈 애플
리케이션의 작성을 쉽게해 준다” 라고 되어 있다. EJB의 선언적 프로그래밍 모델이 트랜잭션,
보안과 같은 개발의 기반구조의 여러 측면을 단순화 했지만 배치설명자(Deployment
Descriptor), 홈인터페이스, 원격인터페이스등과 같은 과도한 코드를 기술하도록 함으로써 복
잡성을 가중시켰고 시갂이 지날수록 개발자들은 홖멸을 느꼈으며 결국 EJB 명성은 쇠퇴하기
시작했다.
 개발자들이 기대했던 것 만큼 실행속도와 개발 생산성을 보장하지 못했다.
 IoC와 AOP를 포함한 새로운 프로그래밍 기법때문에 EJB의 강력함을 가질수 있었으며 EJB의
복잡성을 제거하고 EJB의 선언적 프로그래밍 모델이라는 부분을 자바빈즈에게 안겨 준 것이
스프링 프레임워크 이다.
1-1-2. 모델1 개발 방법(Model 1)
 프리젞테이션 로직과 비지니스 로직의 혼재로 JSP 복잡성증가
 비지니스 로직과 화면로직은 분리되어야 하지만 혼재되어 있음.
 JSP의 목적은 VIEW에 있는데 너무 많은 일을 하고 유지보수의 어려움이 있다.
 Model 2의 도입
1-1-3. 모델2 개발 방법(Model 2, MVC)
 JSP가 View, Servlet이 Controller, Java Bean이 Model 역할을 해서 프리젞테이션과 비즈니스
로직을 명확하게 구분하는 Model2 방식을 MVC 모델이라고 한다.
 모델(Model) : 데이터 생산, DB삽입/삭제/저장/ 등의 비즈니스 로직 수행, DAO(Data Access
Object), DTO(Data Transfer Object)
 뷰(View) : 클라이언트에게 보여줄 프리젞테이션에 집중하는 역할
 컨트롤러(Controller) : 클라이언트의 요청을 처리하기 위해 제어 흐름을 당담, 주로 Servlet
 모든 클라이언트의 요청은 서블릿 컨트롤러가 받고 사용자의 요청에 따라 처리 객체(Action
개체) 선택하고 각 Action 개체는 Model(DAO)를 이용해서 비즈니스 로직 실행한다.
 비즈니스 로직 수행 결과를 Action, Controller로 리턴한다.
 JSP를 뷰로 해서 forward 시킨다. JSP에서 프레젞테이션(표현영역, 사용자에게 보여지는 부분)
을 생성한다.
 컨트롤러 설계할 때 많은 주의가 필요하며 이에따라 프레임워크의 필요성이 증대되어 MVC
골격을 프레임워크화한 스트럿츠 프레임워크(Struts Framework)가 탄생된다.
1-1-4. 스프링 프레임워크 소개(Spring Framework Overview)
 프레임워크를 이용하면 프로그램의 작성 분량을 줄일 수 있으며 프로그램의 작성방법에 대한
관습을 강제로 제어할 수 있다.
 가이드와 표준에 의한 개발을 따르도록 제어하며 읽기 쉬운 프로그램 작성이 가능하다.
 2004년 Rod Johnson이 만든 오픈소스 프레임워크이며 경량의 제어 역행과 관점지향 컨테이
너 프레임워크이다. IoC 컨테이너를 사용하여 의존관계를 자동 주입할 수 있으며 AOP를 이용
하여 공통 기능을 소스코드 변경없이 필요한 곳에 주입시킬 수 있다.
 복잡한 엔터프라이즈 애플리케이션 개발을 겨냥하여 자바빈즈를 사용하지만 기존 EJB에서 가
능했던 일들이 가능하다. 선언적 트랜잭션 관리나 웹서비스나 RMI등에 원격접근 가능하며 데
이터 영속성 관리를 위한 다양한 옵션을 제공한다.
 단순성,테스트 용이성, 느슨한 결합성의 측면에서 스프링의 이점을 얻을 수 있으며 MVC
Framework의 모든 부분에 대해 지원하고 있다.
 최근에는 스프링 부트(Spring Boot)를 제공하여 복잡한 스프링 프로젝트의 구성을 갂편화 하
도록 지원하고 있다.
[‘2016 기준, 출처 : http://docs.spring.io/]

Más contenido relacionado

Destacado

Destacado (9)

(스프링초보자를위한)스프링 컨텍스트 설정과 관련된 어노테이션
(스프링초보자를위한)스프링 컨텍스트 설정과 관련된 어노테이션(스프링초보자를위한)스프링 컨텍스트 설정과 관련된 어노테이션
(스프링초보자를위한)스프링 컨텍스트 설정과 관련된 어노테이션
 
스프링컨트롤러예외처리,@ExceptionHandler, @ControllerAdvice
스프링컨트롤러예외처리,@ExceptionHandler, @ControllerAdvice스프링컨트롤러예외처리,@ExceptionHandler, @ControllerAdvice
스프링컨트롤러예외처리,@ExceptionHandler, @ControllerAdvice
 
#11.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)_국비지원학원,재직자/실업자교육학원,스프링교육,마이바...
#11.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)_국비지원학원,재직자/실업자교육학원,스프링교육,마이바...#11.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)_국비지원학원,재직자/실업자교육학원,스프링교육,마이바...
#11.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)_국비지원학원,재직자/실업자교육학원,스프링교육,마이바...
 
#18.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)_국비지원IT학원/실업자/재직자환급교육/자바/스프링/...
#18.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)_국비지원IT학원/실업자/재직자환급교육/자바/스프링/...#18.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)_국비지원IT학원/실업자/재직자환급교육/자바/스프링/...
#18.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)_국비지원IT학원/실업자/재직자환급교육/자바/스프링/...
 
(국비지원/실업자교육/재직자교육/스프링교육/마이바티스교육추천)#13.스프링프레임워크 & 마이바티스 (Spring Framework, MyB...
(국비지원/실업자교육/재직자교육/스프링교육/마이바티스교육추천)#13.스프링프레임워크 & 마이바티스 (Spring Framework, MyB...(국비지원/실업자교육/재직자교육/스프링교육/마이바티스교육추천)#13.스프링프레임워크 & 마이바티스 (Spring Framework, MyB...
(국비지원/실업자교육/재직자교육/스프링교육/마이바티스교육추천)#13.스프링프레임워크 & 마이바티스 (Spring Framework, MyB...
 
#16.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)_국비지원IT학원/실업자/재직자환급교육/자바/스프링/...
#16.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)_국비지원IT학원/실업자/재직자환급교육/자바/스프링/...#16.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)_국비지원IT학원/실업자/재직자환급교육/자바/스프링/...
#16.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)_국비지원IT학원/실업자/재직자환급교육/자바/스프링/...
 
#27.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)_스프링프레임워크 강좌, 재직자환급교육,실업자국비지원...
#27.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)_스프링프레임워크 강좌, 재직자환급교육,실업자국비지원...#27.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)_스프링프레임워크 강좌, 재직자환급교육,실업자국비지원...
#27.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)_스프링프레임워크 강좌, 재직자환급교육,실업자국비지원...
 
#19.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)_국비지원IT학원/실업자/재직자환급교육/자바/스프링/...
#19.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)_국비지원IT학원/실업자/재직자환급교육/자바/스프링/...#19.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)_국비지원IT학원/실업자/재직자환급교육/자바/스프링/...
#19.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)_국비지원IT학원/실업자/재직자환급교육/자바/스프링/...
 
#12.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)_구로IT학원, 국비지원학원,재직자/실업자교육학원,스...
#12.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)_구로IT학원, 국비지원학원,재직자/실업자교육학원,스...#12.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)_구로IT학원, 국비지원학원,재직자/실업자교육학원,스...
#12.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)_구로IT학원, 국비지원학원,재직자/실업자교육학원,스...
 

Más de 탑크리에듀(구로디지털단지역3번출구 2분거리)

(스프링프레임워크 강좌)스프링부트개요 및 HelloWorld 따라하기
(스프링프레임워크 강좌)스프링부트개요 및 HelloWorld 따라하기(스프링프레임워크 강좌)스프링부트개요 및 HelloWorld 따라하기
(스프링프레임워크 강좌)스프링부트개요 및 HelloWorld 따라하기
탑크리에듀(구로디지털단지역3번출구 2분거리)
 
[아이오닉학원]아이오닉 하이브리드 앱 개발 과정(아이오닉2로 동적 모바일 앱 만들기)
[아이오닉학원]아이오닉 하이브리드 앱 개발 과정(아이오닉2로 동적 모바일 앱 만들기)[아이오닉학원]아이오닉 하이브리드 앱 개발 과정(아이오닉2로 동적 모바일 앱 만들기)
[아이오닉학원]아이오닉 하이브리드 앱 개발 과정(아이오닉2로 동적 모바일 앱 만들기)
탑크리에듀(구로디지털단지역3번출구 2분거리)
 
[뷰제이에스학원]뷰제이에스(Vue.js) 프로그래밍 입문(프로그레시브 자바스크립트 프레임워크)
[뷰제이에스학원]뷰제이에스(Vue.js) 프로그래밍 입문(프로그레시브 자바스크립트 프레임워크)[뷰제이에스학원]뷰제이에스(Vue.js) 프로그래밍 입문(프로그레시브 자바스크립트 프레임워크)
[뷰제이에스학원]뷰제이에스(Vue.js) 프로그래밍 입문(프로그레시브 자바스크립트 프레임워크)
탑크리에듀(구로디지털단지역3번출구 2분거리)
 
[씨샵학원/씨샵교육]C#, 윈폼, 네트워크, ado.net 실무프로젝트 과정
[씨샵학원/씨샵교육]C#, 윈폼, 네트워크, ado.net 실무프로젝트 과정[씨샵학원/씨샵교육]C#, 윈폼, 네트워크, ado.net 실무프로젝트 과정
[씨샵학원/씨샵교육]C#, 윈폼, 네트워크, ado.net 실무프로젝트 과정
탑크리에듀(구로디지털단지역3번출구 2분거리)
 
[wpf학원,wpf교육]닷넷, c#기반 wpf 프로그래밍 인터페이스구현 재직자 향상과정
[wpf학원,wpf교육]닷넷, c#기반 wpf 프로그래밍 인터페이스구현 재직자 향상과정[wpf학원,wpf교육]닷넷, c#기반 wpf 프로그래밍 인터페이스구현 재직자 향상과정
[wpf학원,wpf교육]닷넷, c#기반 wpf 프로그래밍 인터페이스구현 재직자 향상과정
탑크리에듀(구로디지털단지역3번출구 2분거리)
 
[자마린교육/자마린실습]자바,스프링프레임워크(스프링부트) RESTful 웹서비스 구현 실습,자마린에서 스프링 웹서비스를 호출하고 응답 JS...
[자마린교육/자마린실습]자바,스프링프레임워크(스프링부트) RESTful 웹서비스 구현 실습,자마린에서 스프링 웹서비스를 호출하고 응답 JS...[자마린교육/자마린실습]자바,스프링프레임워크(스프링부트) RESTful 웹서비스 구현 실습,자마린에서 스프링 웹서비스를 호출하고 응답 JS...
[자마린교육/자마린실습]자바,스프링프레임워크(스프링부트) RESTful 웹서비스 구현 실습,자마린에서 스프링 웹서비스를 호출하고 응답 JS...
탑크리에듀(구로디지털단지역3번출구 2분거리)
 
[구로자마린학원/자마린강좌/자마린교육]3. xamarin.ios 3.3.5 추가적인 사항
[구로자마린학원/자마린강좌/자마린교육]3. xamarin.ios  3.3.5 추가적인 사항[구로자마린학원/자마린강좌/자마린교육]3. xamarin.ios  3.3.5 추가적인 사항
[구로자마린학원/자마린강좌/자마린교육]3. xamarin.ios 3.3.5 추가적인 사항
탑크리에듀(구로디지털단지역3번출구 2분거리)
 
3. xamarin.i os 3.3 xamarin.ios helloworld 자세히 살펴보기 3.4.4 view controllers an...
3. xamarin.i os 3.3 xamarin.ios helloworld 자세히 살펴보기 3.4.4 view controllers an...3. xamarin.i os 3.3 xamarin.ios helloworld 자세히 살펴보기 3.4.4 view controllers an...
3. xamarin.i os 3.3 xamarin.ios helloworld 자세히 살펴보기 3.4.4 view controllers an...
탑크리에듀(구로디지털단지역3번출구 2분거리)
 
5. 서브 쿼리(sub query) 5.1 서브 쿼리(sub query) 개요 5.2 단일행 서브쿼리(single row sub query)
5. 서브 쿼리(sub query) 5.1 서브 쿼리(sub query) 개요 5.2 단일행 서브쿼리(single row sub query)5. 서브 쿼리(sub query) 5.1 서브 쿼리(sub query) 개요 5.2 단일행 서브쿼리(single row sub query)
5. 서브 쿼리(sub query) 5.1 서브 쿼리(sub query) 개요 5.2 단일행 서브쿼리(single row sub query)
탑크리에듀(구로디지털단지역3번출구 2분거리)
 
3. xamarin.i os 3.1 xamarin.ios 설치, 개발환경 3.2 xamarin.ios helloworld(단일 뷰) 실습[...
3. xamarin.i os 3.1 xamarin.ios 설치, 개발환경 3.2 xamarin.ios helloworld(단일 뷰) 실습[...3. xamarin.i os 3.1 xamarin.ios 설치, 개발환경 3.2 xamarin.ios helloworld(단일 뷰) 실습[...
3. xamarin.i os 3.1 xamarin.ios 설치, 개발환경 3.2 xamarin.ios helloworld(단일 뷰) 실습[...
탑크리에듀(구로디지털단지역3번출구 2분거리)
 
자바, 웹 기초와 스프링 프레임워크 & 마이바티스 재직자 향상과정(자바학원/자바교육/자바기업출강]
자바, 웹 기초와 스프링 프레임워크 & 마이바티스 재직자 향상과정(자바학원/자바교육/자바기업출강]자바, 웹 기초와 스프링 프레임워크 & 마이바티스 재직자 향상과정(자바학원/자바교육/자바기업출강]
자바, 웹 기초와 스프링 프레임워크 & 마이바티스 재직자 향상과정(자바학원/자바교육/자바기업출강]
탑크리에듀(구로디지털단지역3번출구 2분거리)
 
3. xamarin.i os 3.1 xamarin.ios 설치, 개발환경 3.2 xamarin.ios helloworld_자마린학원_자마린...
3. xamarin.i os 3.1 xamarin.ios 설치, 개발환경 3.2 xamarin.ios helloworld_자마린학원_자마린...3. xamarin.i os 3.1 xamarin.ios 설치, 개발환경 3.2 xamarin.ios helloworld_자마린학원_자마린...
3. xamarin.i os 3.1 xamarin.ios 설치, 개발환경 3.2 xamarin.ios helloworld_자마린학원_자마린...
탑크리에듀(구로디지털단지역3번출구 2분거리)
 
3. 안드로이드 애플리케이션 구성요소 3.2인텐트 part01(안드로이드학원/안드로이드교육/안드로이드강좌/안드로이드기업출강]
3. 안드로이드 애플리케이션 구성요소 3.2인텐트 part01(안드로이드학원/안드로이드교육/안드로이드강좌/안드로이드기업출강]3. 안드로이드 애플리케이션 구성요소 3.2인텐트 part01(안드로이드학원/안드로이드교육/안드로이드강좌/안드로이드기업출강]
3. 안드로이드 애플리케이션 구성요소 3.2인텐트 part01(안드로이드학원/안드로이드교육/안드로이드강좌/안드로이드기업출강]
탑크리에듀(구로디지털단지역3번출구 2분거리)
 

Más de 탑크리에듀(구로디지털단지역3번출구 2분거리) (20)

자마린.안드로이드 기본 내장레이아웃(Built-In List Item Layouts)
자마린.안드로이드 기본 내장레이아웃(Built-In List Item Layouts)자마린.안드로이드 기본 내장레이아웃(Built-In List Item Layouts)
자마린.안드로이드 기본 내장레이아웃(Built-In List Item Layouts)
 
(스프링프레임워크 강좌)스프링부트개요 및 HelloWorld 따라하기
(스프링프레임워크 강좌)스프링부트개요 및 HelloWorld 따라하기(스프링프레임워크 강좌)스프링부트개요 및 HelloWorld 따라하기
(스프링프레임워크 강좌)스프링부트개요 및 HelloWorld 따라하기
 
자마린 iOS 멀티화면 컨트롤러_네비게이션 컨트롤러, 루트 뷰 컨트롤러
자마린 iOS 멀티화면 컨트롤러_네비게이션 컨트롤러, 루트 뷰 컨트롤러자마린 iOS 멀티화면 컨트롤러_네비게이션 컨트롤러, 루트 뷰 컨트롤러
자마린 iOS 멀티화면 컨트롤러_네비게이션 컨트롤러, 루트 뷰 컨트롤러
 
[IT교육/IT학원]Develope를 위한 IT실무교육
[IT교육/IT학원]Develope를 위한 IT실무교육[IT교육/IT학원]Develope를 위한 IT실무교육
[IT교육/IT학원]Develope를 위한 IT실무교육
 
[아이오닉학원]아이오닉 하이브리드 앱 개발 과정(아이오닉2로 동적 모바일 앱 만들기)
[아이오닉학원]아이오닉 하이브리드 앱 개발 과정(아이오닉2로 동적 모바일 앱 만들기)[아이오닉학원]아이오닉 하이브리드 앱 개발 과정(아이오닉2로 동적 모바일 앱 만들기)
[아이오닉학원]아이오닉 하이브리드 앱 개발 과정(아이오닉2로 동적 모바일 앱 만들기)
 
[뷰제이에스학원]뷰제이에스(Vue.js) 프로그래밍 입문(프로그레시브 자바스크립트 프레임워크)
[뷰제이에스학원]뷰제이에스(Vue.js) 프로그래밍 입문(프로그레시브 자바스크립트 프레임워크)[뷰제이에스학원]뷰제이에스(Vue.js) 프로그래밍 입문(프로그레시브 자바스크립트 프레임워크)
[뷰제이에스학원]뷰제이에스(Vue.js) 프로그래밍 입문(프로그레시브 자바스크립트 프레임워크)
 
[씨샵학원/씨샵교육]C#, 윈폼, 네트워크, ado.net 실무프로젝트 과정
[씨샵학원/씨샵교육]C#, 윈폼, 네트워크, ado.net 실무프로젝트 과정[씨샵학원/씨샵교육]C#, 윈폼, 네트워크, ado.net 실무프로젝트 과정
[씨샵학원/씨샵교육]C#, 윈폼, 네트워크, ado.net 실무프로젝트 과정
 
[정보처리기사자격증학원]정보처리기사 취득 양성과정(국비무료 자격증과정)
[정보처리기사자격증학원]정보처리기사 취득 양성과정(국비무료 자격증과정)[정보처리기사자격증학원]정보처리기사 취득 양성과정(국비무료 자격증과정)
[정보처리기사자격증학원]정보처리기사 취득 양성과정(국비무료 자격증과정)
 
[wpf학원,wpf교육]닷넷, c#기반 wpf 프로그래밍 인터페이스구현 재직자 향상과정
[wpf학원,wpf교육]닷넷, c#기반 wpf 프로그래밍 인터페이스구현 재직자 향상과정[wpf학원,wpf교육]닷넷, c#기반 wpf 프로그래밍 인터페이스구현 재직자 향상과정
[wpf학원,wpf교육]닷넷, c#기반 wpf 프로그래밍 인터페이스구현 재직자 향상과정
 
(WPF교육)ListBox와 Linq 쿼리를 이용한 간단한 데이터바인딩, 새창 띄우기, 이벤트 및 델리게이트를 통한 메인윈도우의 ListB...
(WPF교육)ListBox와 Linq 쿼리를 이용한 간단한 데이터바인딩, 새창 띄우기, 이벤트 및 델리게이트를 통한 메인윈도우의 ListB...(WPF교육)ListBox와 Linq 쿼리를 이용한 간단한 데이터바인딩, 새창 띄우기, 이벤트 및 델리게이트를 통한 메인윈도우의 ListB...
(WPF교육)ListBox와 Linq 쿼리를 이용한 간단한 데이터바인딩, 새창 띄우기, 이벤트 및 델리게이트를 통한 메인윈도우의 ListB...
 
[자마린교육/자마린실습]자바,스프링프레임워크(스프링부트) RESTful 웹서비스 구현 실습,자마린에서 스프링 웹서비스를 호출하고 응답 JS...
[자마린교육/자마린실습]자바,스프링프레임워크(스프링부트) RESTful 웹서비스 구현 실습,자마린에서 스프링 웹서비스를 호출하고 응답 JS...[자마린교육/자마린실습]자바,스프링프레임워크(스프링부트) RESTful 웹서비스 구현 실습,자마린에서 스프링 웹서비스를 호출하고 응답 JS...
[자마린교육/자마린실습]자바,스프링프레임워크(스프링부트) RESTful 웹서비스 구현 실습,자마린에서 스프링 웹서비스를 호출하고 응답 JS...
 
[구로자마린학원/자마린강좌/자마린교육]3. xamarin.ios 3.3.5 추가적인 사항
[구로자마린학원/자마린강좌/자마린교육]3. xamarin.ios  3.3.5 추가적인 사항[구로자마린학원/자마린강좌/자마린교육]3. xamarin.ios  3.3.5 추가적인 사항
[구로자마린학원/자마린강좌/자마린교육]3. xamarin.ios 3.3.5 추가적인 사항
 
3. xamarin.i os 3.3 xamarin.ios helloworld 자세히 살펴보기 3.4.4 view controllers an...
3. xamarin.i os 3.3 xamarin.ios helloworld 자세히 살펴보기 3.4.4 view controllers an...3. xamarin.i os 3.3 xamarin.ios helloworld 자세히 살펴보기 3.4.4 view controllers an...
3. xamarin.i os 3.3 xamarin.ios helloworld 자세히 살펴보기 3.4.4 view controllers an...
 
5. 서브 쿼리(sub query) 5.1 서브 쿼리(sub query) 개요 5.2 단일행 서브쿼리(single row sub query)
5. 서브 쿼리(sub query) 5.1 서브 쿼리(sub query) 개요 5.2 단일행 서브쿼리(single row sub query)5. 서브 쿼리(sub query) 5.1 서브 쿼리(sub query) 개요 5.2 단일행 서브쿼리(single row sub query)
5. 서브 쿼리(sub query) 5.1 서브 쿼리(sub query) 개요 5.2 단일행 서브쿼리(single row sub query)
 
3. xamarin.i os 3.1 xamarin.ios 설치, 개발환경 3.2 xamarin.ios helloworld(단일 뷰) 실습[...
3. xamarin.i os 3.1 xamarin.ios 설치, 개발환경 3.2 xamarin.ios helloworld(단일 뷰) 실습[...3. xamarin.i os 3.1 xamarin.ios 설치, 개발환경 3.2 xamarin.ios helloworld(단일 뷰) 실습[...
3. xamarin.i os 3.1 xamarin.ios 설치, 개발환경 3.2 xamarin.ios helloworld(단일 뷰) 실습[...
 
(닷넷,자마린,아이폰실습)Xamarin.iOS HelloWorld 실습_멀티화면,화면전환_Xamarin교육/Xamarin강좌
(닷넷,자마린,아이폰실습)Xamarin.iOS HelloWorld 실습_멀티화면,화면전환_Xamarin교육/Xamarin강좌(닷넷,자마린,아이폰실습)Xamarin.iOS HelloWorld 실습_멀티화면,화면전환_Xamarin교육/Xamarin강좌
(닷넷,자마린,아이폰실습)Xamarin.iOS HelloWorld 실습_멀티화면,화면전환_Xamarin교육/Xamarin강좌
 
C#기초에서 윈도우, 스마트폰 앱개발 과정(c#.net, ado.net, win form, wpf, 자마린)_자마린학원_씨샵교육_WPF학원...
C#기초에서 윈도우, 스마트폰 앱개발 과정(c#.net, ado.net, win form, wpf, 자마린)_자마린학원_씨샵교육_WPF학원...C#기초에서 윈도우, 스마트폰 앱개발 과정(c#.net, ado.net, win form, wpf, 자마린)_자마린학원_씨샵교육_WPF학원...
C#기초에서 윈도우, 스마트폰 앱개발 과정(c#.net, ado.net, win form, wpf, 자마린)_자마린학원_씨샵교육_WPF학원...
 
자바, 웹 기초와 스프링 프레임워크 & 마이바티스 재직자 향상과정(자바학원/자바교육/자바기업출강]
자바, 웹 기초와 스프링 프레임워크 & 마이바티스 재직자 향상과정(자바학원/자바교육/자바기업출강]자바, 웹 기초와 스프링 프레임워크 & 마이바티스 재직자 향상과정(자바학원/자바교육/자바기업출강]
자바, 웹 기초와 스프링 프레임워크 & 마이바티스 재직자 향상과정(자바학원/자바교육/자바기업출강]
 
3. xamarin.i os 3.1 xamarin.ios 설치, 개발환경 3.2 xamarin.ios helloworld_자마린학원_자마린...
3. xamarin.i os 3.1 xamarin.ios 설치, 개발환경 3.2 xamarin.ios helloworld_자마린학원_자마린...3. xamarin.i os 3.1 xamarin.ios 설치, 개발환경 3.2 xamarin.ios helloworld_자마린학원_자마린...
3. xamarin.i os 3.1 xamarin.ios 설치, 개발환경 3.2 xamarin.ios helloworld_자마린학원_자마린...
 
3. 안드로이드 애플리케이션 구성요소 3.2인텐트 part01(안드로이드학원/안드로이드교육/안드로이드강좌/안드로이드기업출강]
3. 안드로이드 애플리케이션 구성요소 3.2인텐트 part01(안드로이드학원/안드로이드교육/안드로이드강좌/안드로이드기업출강]3. 안드로이드 애플리케이션 구성요소 3.2인텐트 part01(안드로이드학원/안드로이드교육/안드로이드강좌/안드로이드기업출강]
3. 안드로이드 애플리케이션 구성요소 3.2인텐트 part01(안드로이드학원/안드로이드교육/안드로이드강좌/안드로이드기업출강]
 

(스프링교육/마이바티스교육학원추천)#1.스프링프레임워크 & 마이바티스(Spring Framework, MyBatis)

  • 1. 스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis) 1. 스프링 프레임워크 개요 1-1. 도입 배경 1-1-1. 자바 빈(Java Bean)  [1995년]JAVA 탄생, 애플릿의 강력함에 매력  [1996년12월]Sun MicroSystems에서 자바빈 1.0 명세 발표, (자바를 위한 소프트웨어 콤포넌 트 모델을 정의) 자바빈즈는 너무 단순했고 개발자는 엔터프라이즈 개발자들은 좀 더 나은 것을 원함. 정교한 애플리케이션은 트랜잭션지원, 보안, 분산컴퓨팅 같은 서비스가 필요한데 반해 자바 빈즈는 너무 단순함  [1998년 3월]EJB 1.0 발표. EJB는 엔터프라이즈 급의 서비스를 제공하고 자바 콤포넌트의 사 상을 서버측으로 확장 했지만 원래의 자바빈즈가 가지고 있던 단순한은 읽어버림. 성공한 많 은 애플리케이션이 EJB를 기반으로 구축되었음에도 EJB는 본래 의도와 달리 엔터프라이즈 애 플리케이션 개발을 단순화 하지는 못함. 모든 버젂의 EJB 명세에는 “EJB는 엔터프라이즈 애플 리케이션의 작성을 쉽게해 준다” 라고 되어 있다. EJB의 선언적 프로그래밍 모델이 트랜잭션, 보안과 같은 개발의 기반구조의 여러 측면을 단순화 했지만 배치설명자(Deployment Descriptor), 홈인터페이스, 원격인터페이스등과 같은 과도한 코드를 기술하도록 함으로써 복 잡성을 가중시켰고 시갂이 지날수록 개발자들은 홖멸을 느꼈으며 결국 EJB 명성은 쇠퇴하기 시작했다.  개발자들이 기대했던 것 만큼 실행속도와 개발 생산성을 보장하지 못했다.  IoC와 AOP를 포함한 새로운 프로그래밍 기법때문에 EJB의 강력함을 가질수 있었으며 EJB의 복잡성을 제거하고 EJB의 선언적 프로그래밍 모델이라는 부분을 자바빈즈에게 안겨 준 것이 스프링 프레임워크 이다. 1-1-2. 모델1 개발 방법(Model 1)  프리젞테이션 로직과 비지니스 로직의 혼재로 JSP 복잡성증가  비지니스 로직과 화면로직은 분리되어야 하지만 혼재되어 있음.
  • 2.  JSP의 목적은 VIEW에 있는데 너무 많은 일을 하고 유지보수의 어려움이 있다.  Model 2의 도입 1-1-3. 모델2 개발 방법(Model 2, MVC)  JSP가 View, Servlet이 Controller, Java Bean이 Model 역할을 해서 프리젞테이션과 비즈니스 로직을 명확하게 구분하는 Model2 방식을 MVC 모델이라고 한다.  모델(Model) : 데이터 생산, DB삽입/삭제/저장/ 등의 비즈니스 로직 수행, DAO(Data Access Object), DTO(Data Transfer Object)  뷰(View) : 클라이언트에게 보여줄 프리젞테이션에 집중하는 역할  컨트롤러(Controller) : 클라이언트의 요청을 처리하기 위해 제어 흐름을 당담, 주로 Servlet  모든 클라이언트의 요청은 서블릿 컨트롤러가 받고 사용자의 요청에 따라 처리 객체(Action 개체) 선택하고 각 Action 개체는 Model(DAO)를 이용해서 비즈니스 로직 실행한다.  비즈니스 로직 수행 결과를 Action, Controller로 리턴한다.
  • 3.  JSP를 뷰로 해서 forward 시킨다. JSP에서 프레젞테이션(표현영역, 사용자에게 보여지는 부분) 을 생성한다.  컨트롤러 설계할 때 많은 주의가 필요하며 이에따라 프레임워크의 필요성이 증대되어 MVC 골격을 프레임워크화한 스트럿츠 프레임워크(Struts Framework)가 탄생된다. 1-1-4. 스프링 프레임워크 소개(Spring Framework Overview)  프레임워크를 이용하면 프로그램의 작성 분량을 줄일 수 있으며 프로그램의 작성방법에 대한 관습을 강제로 제어할 수 있다.  가이드와 표준에 의한 개발을 따르도록 제어하며 읽기 쉬운 프로그램 작성이 가능하다.  2004년 Rod Johnson이 만든 오픈소스 프레임워크이며 경량의 제어 역행과 관점지향 컨테이 너 프레임워크이다. IoC 컨테이너를 사용하여 의존관계를 자동 주입할 수 있으며 AOP를 이용 하여 공통 기능을 소스코드 변경없이 필요한 곳에 주입시킬 수 있다.  복잡한 엔터프라이즈 애플리케이션 개발을 겨냥하여 자바빈즈를 사용하지만 기존 EJB에서 가 능했던 일들이 가능하다. 선언적 트랜잭션 관리나 웹서비스나 RMI등에 원격접근 가능하며 데 이터 영속성 관리를 위한 다양한 옵션을 제공한다.  단순성,테스트 용이성, 느슨한 결합성의 측면에서 스프링의 이점을 얻을 수 있으며 MVC Framework의 모든 부분에 대해 지원하고 있다.  최근에는 스프링 부트(Spring Boot)를 제공하여 복잡한 스프링 프로젝트의 구성을 갂편화 하 도록 지원하고 있다.
  • 4. [‘2016 기준, 출처 : http://docs.spring.io/]