알지오 평생교육원

로그인|회원가입|고객센터
HOME>IT전문가>웹 프로그래밍 class1>Spring

Spring

Spring
20회차 속성과정
전체 : 10시간 49분|회차당 평균 : 32분27초

이용기간 2개월

전문강사 : 이상경

270,000165,000



강사약력
국민대학교 컴퓨터공학 졸업

BNE DW컨설팅

Spring 사용법 강좌
자바객체를 이용할수있는 경량화된 프레임워크로 자바를 이용하는 개발자 분들이 활용라이브러리로 이용하면 좋습니다. 복잡한 프로젝트를 간단하게 구성할수 있기때문에 기본적으로 자바프로그래밍의 기본지식이 있어야 쉽게 개발이 가능합니다. 자체적으로MVC프레임워크를 제공하기 때문에 프레임워크 사용만으로도 웹 어플리케이션 제작이 가능합니다.
  • 01.35분 Spring의 핵심 개념 이해하기 - Chapter 1

    IOC 컨테이너와 DI, ApplicationContext, xmlApplicationContext, 컨텍스트 계층구조, WebApplicationContext, 빈 등록방법

    책갈피 : [00:00] IOC 컨테이너와 DI에 관련된 예제 제작/[00:30] Name 패키지, Pojo 패키지 제작/[01:30] 인터페이스 printer 입력/[02:20] SayHello 함수/[02:38] Print 함수/[02:46] setname 함수/[02:57] setprinter 함수/[03:13] Consoleprinter 만들기/[04:00] 메인 함수 포함 클래스 제작/[04:30] 오브젝트 생성해서 ioc 컨테이너 제작/[04:55] printer에 대한 정보를 ioc 컨테이너에 등록/[05:45] BeanDefinition으로 Hello클래스 등록/[06:00] 지정된 이름 입력/[06:41] printer라는 Bean에대한 레퍼런스 등록/[07:44] 설정된 Bean 메타 정보를 bean으로 등록/[08:24] bean 정보 가져와서 프린트 해보기/[09:11] ApplicationContext class의 종류와 어떻게 사용 되는지 알아보기/[10:01] XML 파일 생성/[10:26] Printer Bean 설정/[11:50] Class 생성/[12:15] IOC 컨테이너 설정/[13:16] 메타 정보가 등록됐는지 확인/[14:09] GenericXmlApplicationContext로 빈 정보 설정하기/[15:07] context 계층구조 알아보기/[15:31] parent Xml 생성/[16:17] Child Xml 생성/[16:41] 클래스를 이용해 parent와 Child가 어떻게 상속되는지 알아보기/[18:11] Reader 설정/[19:02] Hello Print 불러오기/[20:18] WebApplicationContext에 대해 알아보기/[21:15] listener 등록/[21:56] Context Param/[23:47] Servlet 등록하는 법/[25:48] load-on-startup 태그/[26:33] 빈 등록방법/[27:56] componet 지정/[28:22] Annotation으로 지정해서 ApplicationContext 만들기/[29:45] 등록 됐는지 확인하기/[30:41] 다른 Annotation 설정 방법/[30:52] context 태그를 이용해 class를 빈으로 등록하는 법/[32:15] 패키지를 만들어 빈에 정의해 보기/[34:09] main에 만들기

  • 02.39분 Spring의 핵심 개념 이해하기 - Chapter 2

    빈 메타정보 설정, 빈 의존관계 설정, 프로퍼티 값 설정, 프로토타입 스코프

    책갈피 : [00:01] 빈 메타정보 설정 하기/[00:15] 기존의 빈 태그 데이터소스 추가하는 법/[01:18] 메타 정보 입력/[02:07] 어노테이션으로 빈 메타정보 닫기/[02:34] configuration 지정/[02:44] class 만들기/[03:15] db 연결 정보 넣기/[04:12] url 넣기/[04:56] 빈 오브젝트 리턴/[05:30] pojo 클래스에서 빈 어노테이션 사용하기/[06:15] pojo 클래스에서 알맞게 바꿔 사용하기/[07:00] 새 프린터 지정/[07:30] this.printer 로 수정/[08:05] 빈 의존관계 설정 방법/[08:37] 수정자를 통한 di 빈 주입/[09:15] 빈 태그로 프린트 만들기/[09:45] 수정자 주입/[10:43] 생성자 주입 방법/[10:52] Hello 클래스 생성자로 주입하는 방법/[12:01] constructor-arg 입력/[13:18] 자동 와이어링/[13:56] 오토 와이어링에 사용할 스키마 입력/[15:56] 타입 자동 와이어링/[16:48] 에노테이션을 이용해 의존관계 설정하기/[17:00] 리소스 에노테이션을 이용해 수정자 매소드 이용하기/[18:40] 리소스를 필드에 붙이기/[19:11] 리소스 사용/[20:32] 자동 와이어링 필드에 주입하기/[21:37] 콜렉션으로 프로퍼티에 주입하는 방법/[22:15] 빈에 사용할 클래스 생성/[22:48] list 컬렉션 xml로 만들기/[23:55] 맵과 앤트리 태그 이용 방법/[24:03] 빈 클래스에 맵 선언/[25:02] 맵 사용/[26:10] 값 주입/[26:48] 프로퍼티 파일을 이용한 값 설정/[27:41] value 에 있는 값을 프로퍼티 파일에 이동하기/[28:36] 프로퍼티 치환해서 사용하기/[30:52] 프로토타입과 스코프/[31:41] 싱글톤 스코프 테스트/[35:00] 프로토타입 스코프로 빈 선언/[35:30] static class로 클라이언트 빈 생성/[36:37] 빈에 오브젝트 추가/[38:21] 실행

  • 03.42분 Spring의 핵심 개념 이해하기 - Chapter 3

    런타임환경, 프로파일, 런타임 환경 추상화, 활성프로파일, SQL 파라미터, SQL 실행 메소드, Template 생성

    책갈피 : [00:02] 컨테이너 인프라빈에 대해 알아보기/[01:07] 어플리케이션 로직빈/[01:22] 어플리케이션 인프라빈/[01:37] 컨테이너 인프라빈/[01:49] 컨테이너 인프라빈과 전용태그 사용하기/[02:23] class 만들기/[03:28] 빈 어노테이션 붙이기/[03:52] configuration 붙이기/[04:15] postconstruct 붙이기/[05:00] autowired 붙이기/[05:29] 빈 xml 생성/[05:41] 클래스 등록/[06:39] 테스트 클래스 생성/[07:00] 어플리케이션 컨텍스트 만들기/[08:50] 실행/[09:28] 빈을 설정했을때 미치는 환경 보기/[10:11] 뷰 설정 정보 삽입/[11:05] 프로퍼티 플래이스 홀더 태그 사용/[12:03] 프로퍼티 파일 생성/[13:26] 런타임 환경 추상화/[14:11] 런타임 xml 파일 생성/[15:45] dev 만들기/[16:55] environment 오브젝트 사용의 예/[18:48] xml 로드/[19:26] 스프링의 데이터 엑세스 기술 알아보기/[19:59] 심플 jdbc 생성/[21:07] 클래스 등록/[22:32] 데이터 소스로 생성자 만들기/[23:02] sql에서 파라미터가 어떻게 넘어가는지 보기/[23:37] 파라미터 예제/[25:25] 바인딩 방법에 대해 알아보기/[26:00] 심플 jdbc 생성/[27:52] 맵바인드 함수 입력/[29:14] 맵을 이용해 바인딩 파라미터가 사용되게 만들기/[30:51] insert 방법/[32:37] 맵에 저장된것 insert 함수에 넣기/[33:29] mapsql 파라미터 소스 사용방법/[35:52] 값 실행 하는 방법/[36:49] public void insert로 그냥 값을 넣고 싶을때/[37:45] mapsql 파라미터 간단하게 생성자 직접 넣기/[38:30] mapsql 파라미터소스 직접 생성/[39:30] 빈 프로퍼티 sql 파라미터소스 사용하기/[40:22] 빈 프로퍼티 sql 파라미터소스 입력/[40:59] 빈 프로퍼티 sql 파라미터소스 멤버 넣기/[41:14] sql 실행하는 것을 매소드로 만들때

  • 04.37분 Spring의 핵심 개념 이해하기 - Chapter 4

    QueryForInt, queryForObject, List Query, SimpleJdbcInsert, SimpleJdbcCall

    책갈피 : [00:06] Sql을 조회하거나 배치하는 매소드 알아보기/[00:19] Sql 조회용 매소드/[00:58] queryForint/[01:55] 데이터 소스 만들기/[02:36] 정보 입력/[04:13] 초기화 함수 입력/[05:10] Sql 사용하는 방법/[06:15] queryForint로 값 확인/[07:14] simpledao로 빈 정보 입력/[08:20] MapSqlParameterSource/[08:58] 테이블 보기/[09:39] rowCount 함수 입력/[10:24] select 문 입력/[11:50] sql로 확인/[11:58] 실행/[12:16] 결과 타입을 직접 지정하는 조회 매소드 알아보기/[12:33] string 타입의 결과값 가져오기/[15:09] 실행/[15:48] 테이블에 없는 ID 값을 가져온경우/[16:15] 실행/[16:33] 예외 처리 방법/[17:36] 다중 컬럼을 가진 쿼리의 결과값 가져오기/[17:52] BeanPropertyRowMapper/[18:18] 생성자 만들기/[20:00] 멤버 타입 오브젝트 입력/[21:52] queryForint에서 값 가져오기/[22:26] 실행/[23:33] 다중컬럼의 다중로우 처리 방법/[24:02] 함수 입력/[25:33] 메인 클래스에서 list 입력/[26:30] 실행/[26:56] simpleJdbcInsert/[27:30] simpleJdbcInsert 초기화 방법/[28:41] 멤버 형성자 만들기/[29:06] 멤버 테이블에 insert 해주기/[31:45] 데이터 확인/[32:07] 실행/[32:37] SimpleJdbcCall/[33:07] 저장 펑션 만들기/[33:59] 저장 펑션 코드 입력/[35:50] 함수 입력/[36:51] sql 문 확인/[37:00] 실행

  • 05.38분 Spring의 핵심 개념 이해하기 - Chapter 5

    iBatis 설정파일, iBatis 매핑파일, SqlMapClientTemplate, insert문 예제, select-delete, JPA

    책갈피 : [00:04] ibatis란?/[00:16] ibatis의 특징/[01:40] 설정파일 예제 만들기/[02:23] 공통 소수점 설정파일 생성/[03:07] 맵핑 정보를 담은 파일 클래스 입력/[04:24] xml 맵핑파일 생성/[04:55] ibatis 사용 태그 입력/[06:12] delete 문 입력/[06:30] insert 문 입력/[07:28] select 문 입력/[07:54] 조건 넣은 select 문 입력/[09:01] sql 맵 클라이언트 만들기/[09:58] 데이터 소스 입력/[11:37] sql 맵 클라이언트 등록/[12:15] 데이터소스 입력/[13:09] sql.xml를 사용한 insert와 delete 방법/[13:48] ibatisdao 만들기/[14:18] sql 맵 클라이언트 입력/[15:16] ibatisdao 오토와이어링/[15:46] ibatisdao 함수에 insert 입력/[17:03] 예제 보기/[17:37] ibatisdao 빈으로 등록하기/[18:48] context 입력/[19:47] 정보 가져오기/[20:33] insert 값 입력/[20:56] 멤버 확인/[21:17] 실행/[21:33] 단일로우와 다중로우 조회하고 지우기/[22:00] 단일로우 값 가져오기/[23:11] select 문 입력/[23:47] 실행/[24:07] 다중로우 조회하기/[24:18] list 입력/[26:06] 실행/[26:33] deletMemberAll 입력/[28:26] 실행/[29:52] jap/[30:37] EntityManagerFactoryBean 등록하는 두가지 방법/[30:59] 빈즈 태그 등록/[32:22] localEntityManagerFactoryBean 이용 하는 법/[33:19] 데이터 소스 지정/[34:07] persistence.xml 파일 생성/[34:52] class 지정/[36:19] 멤버 만들기

  • 06.34분 실제 개발 환경에서 사용되는 실무적용 과정! - Chapter 1

    JPA, persistenceXmlLocation, Transaction Manager, EntityManager, hibernate설정파일

    책갈피 : [00:11] jpa가 어떻게 persistence.xml을 찾는지 알아보기/[01:15] persistencexmlLocation 프로포티 사용 예/[01:37] 위치 등록/[02:36] jpa vendorAdapter/[03:07] 프로포티 입력/[03:35] 빈 추가/[04:11] showsql 속성 지정/[04:57] eclipselik.weaving false 입력/[06:11] Transaction Manager 등록/[06:55] 클래스 지정/[07:15] 프로포티 지정/[08:01] entity 매니저의 jp dao 사용/[08:37] 클래스 생성/[08:45] entity 매니저 주입받는 코드 입력/[09:18] 해당되는 클래스 import/[09:48] annotation-config 입력/[10:35] persistencecontext 어노테이션 지정/[11:18] 타입 지정/[12:16] jpa-cecontext.xml 에 지정/[12:52] 예제 만들기/[13:20] 테스트 어노테이션 입력/[13:54] classrunner 지정/[14:20] member dao 주입/[14:52] dao로 entity 매니저와 entity 매니저 팩토리 삽입/[15:33] 맴버클래스 가져오기/[16:45] persist 함수/[17:22] 오류 수정/[17:29] 재생/[17:47] hibernate/[18:29] hibernate.cfg.xml 생성/[19:02] 팩토리 태그 삽입/[19:30] 클래스 지정/[20:11] 맵핑 파일목록 삽입/[20:59] member.hbm.xml 파일 만들기/[21:33] hibernate-mapping 입력/[21:41] 패키지 명 입력/[22:02] 클래스 명 입력/[22:17] 컬럼 지정/[23:18] 맴버클래스 생성/[24:00] hibernate-context.xml 파일 생성/[24:22] hibernate-context 빈즈태그 입력/[25:02] 데이터 소스 프로포티 만들기/[26:25] 여러개의 맵핑 파일정보 넣기/[27:37] hibernate에서 맵핑 정보사용하기/[28:22] annotatedClasses 입력/[29:18] packagesToscan 등록/[29:48] transaction 매니저 등록/[31:26] hibernate.config.xml 사용하지 않고 hibernate-context에 집어넣기/[31:45] 맵핑 로케이션 입력/[32:15] 프로포티 입력

  • 07.31분 실제 개발 환경에서 사용되는 실무적용 과정! - Chapter 2

    루트 컨텍스트 등록, 루트 컨텍스트 테스트, 서블릿 컨텍스트 등록, 서블릿 컨텍스트 테스트

    책갈피 : [00:08] 스프링 웹 프로젝트 생성/[00:46] 웹 프로젝트 생성 방식/[01:26] 프로젝트 이름 입력/[01:49] webConent 폴더보기/[02:30] 두개의 웹 어플리케이션 컨텍스트 사용법/[03:15] web.xml 에 루트 컨텍스트 등록/[03:46] listener 태그 입력/[04:46] applicationcontext.xml 파일 생성/[05:15] 빈 추가/[06:00] 테스트용 빈에 클래스 입력/[07:00] jsp 파일 생성/[07:15] 페이지에 import 시키기/[07:55] 유틸 import/[08:35] 클래스 import/[09:41] 헬로 클래스 생성/[10:48] 실행/[11:31] 서블릿 컨텍스트 등록/[11:50] web.xml 에 루트 컨텍스트 입력/[12:28] 서블릿 맵핑 태그 입력/[14:07] spring-servlet.xml 생성/[14:33] 헬로 컨트롤러 만들기/[15:22] 새 인터페이스에서 헬로 컨트롤러 생성/[15:54] 소스 입력/[16:32] 스트링 네임 입력/[17:07] 스트링 메세지 입력/[18:37] 모델 값 입력/[19:51] 빈의 이름에 맵핑할 이름넣기/[19:59] spring-servlet.xml에 context:annotation-config 입력 /[21:18] 빈 태그 입력/[23:03] 뷰 만들기/[23:45] 클래스 import/[24:30] 테스트/[25:11] 스프링 맵에 테스트 하기/[25:47] 테스트용 서블릿 생성/[26:44] protected void doget 입력/[27:18] 서블릿 리퀘스트 import/[28:00] 스트링 네임 입력/[28:22] jsp에 해당하는 html 태그 입력/[29:07] 테스트용 서블릿 생성/[29:26] 소스 입력

  • 08.36분 실제 개발 환경에서 사용되는 실무적용 과정! - Chapter 3

    Mock오브젝트, DispatcherServlet 만들기, AbstractDispatcherServlet 만들기

    책갈피 : [00:09] Mock오브젝트 알아보기/[00:29] 리퀘스트 생성/[01:06] 리퀘스트에서 받은 파라미터 등록/[01:49] 서블릿 생성/[02:46] getContentAsString 으로 들어온 값 확인하기/[03:15] 파라미터로 넣은 값만 확인하기/[04:26] 클래스 생성/[04:46] DispatcherServlet 입력/[05:00] 변수 설정/[06:00] 모델 앤 뷰 변수 생성/[06:55] 세터 만들기/[07:46] setRelativeLocations 입력/[09:20] for문 입력/[10:15] service 함수 입력/[10:48] 익셉션 설정/[12:05] 매타정보를 이용해 서블릿 컨텍스트 생성/[13:45] throws 입력/[15:41] getservletconfig 가져오기/[16:11] 모델 앤 뷰 저장하는 법/[17:22] 모델 앤 뷰 get 함수 입력/[18:03] afterrunservice 인터페이스 생성/[18:45] getbean 메소드 입력/[19:07] getModelAndView 메소드 입력/[20:15] afterRunService 설정/[20:26] mock 오브젝트 지정/[21:26] 서블릿 패스 입력/[21:37] Constructor 생성/[22:37] AbstractDispatcherServletTest 입력/[22:48] 리턴 값 입력/[23:22] 요청 정보 초기화클래스 입력/[24:55] uri 초기화 입력/[25:22] 메소드 초기화 함수 입력/[26:02] DispatcherServlet 빌드 함수 입력/[27:22] DispatcherServlet 초기화/[27:40] createDispatcherServlet 입력/[28:07] afterRunService 설정/[29:44] getcontext 입력/[30:36] 빈 값을 얻어오는 메소드 입력/[31:22] getModelAndView 메소드 지정/[31:48] afterRunService 보기/[32:07] assertModel 지정/[33:07] 뷰 네임 확인 메소드 입력/[33:52] 스트링메소드 입력/[34:22] 서블릿 컨텍스트 담는 메소드 입력/[35:04] Dispatcher 담는 함수 입력

  • 09.31분 실제 개발 환경에서 사용되는 실무적용 과정! - Chapter 4

    서블릿 타입의 컨트롤러, HttpRequestHandler&Adapter, SimpleController, AnnotationMethodHandlerAdapter

    책갈피 : [00:06] 컨트롤러에 대해 알아보기/[01:33] 서블릿이 컨트롤러 빈으로 등록된 경우/[02:14] 서블릿 컨트롤러 사용 클래스 생성/[02:38] 코드 입력/[03:07] 리퀘스트와 리스폰스 등록/[03:50] exception 처리/[04:42] component 어노테이션으로 등록/[05:00] 서블릿 컨트롤러 클래스 입력/[06:00] 네임에 해당하는 파라미터 얻어오기/[06:46] 서블릿 컨트롤러 코드 입력 완료/[07:46] 컨트롤러 타입에 대해 알아보기/[08:00] HttpRequestHandler 리퀘스트 생성/[10:26] Controller 인터페이스 만들기/[11:01] 예외처리/[12:09] 컨트롤러에 대해 자세히 살펴보기/[12:31] SimpleController 만들기/[12:52] 필수 파라미터 정의/[13:43] modelAndView로 HandlRequest 생성/[15:13] 예외 발생 소스입력/[15:48] for 문으로 소스 입력/[16:55] 맵 오브젝트 전달/[17:18] 컨트롤러가 구현할 매소드 호출/[18:11] 결과값 돌려 주기/[18:22] SimpleController 이용하는 helloController 만들기/[19:41] 컨트롤 매소드 입력/[20:33] 테스트 값 입력/[21:56] 실행 값 확인 소스 입력/[22:26] 해당 클래스 import/[23:33] AnnotationMethodHandlerAdapter/[23:48] AnnotationMethodHandlerAdapter의 두가지 특징/[25:45] 간단한 예제만들기/[26:00] 클래스 생성/[26:26] helloController 소스 입력/[27:15] 맵에서 메세지 입력/[27:48] Controller 지정/[28:00] Controller 해당하는 클래스 import/[28:29] 테스트를 위한 간단한 소스 추가/[29:10] initRequest로 파라미터 가져오기/[29:22] assertModel에 메세지 입력/[30:00] test 에 해당하는 클래스 import/[30:25] 실행

  • 10.34분 실제 개발 환경에서 사용되는 실무적용 과정! - Chapter 5

    핸들러 매핑과 핸들러 인터셉터, BeanNameUrl, ControllerBeanName, ControllerClassName, SimpleUrl, DefaultAnnotation, 핸들러 인터셉터

    책갈피 : [00:08] 핸들러 매핑/[00:48] 다섯가지 핸들러 매핑/[01:19] HandlerTest.xml 파일생성/[02:00] BeanNameUrlHandlerMapping/[02:35] BeanNameUrlHandlerMapping 사용법/[03:07] 빈 태그 등록/[05:00] ControllerBeanNameHandlerMapping/[06:00] hello 빈을 등록 한 경우/[07:09] 프로포티 지정/[07:56] ControllerclassNameHandlerMapping/[08:41] SimpleUrlHandlerMapping/[09:41] 예제 실행/[10:03] 클래스 등록/[10:56] props 에 요소 넣기/[11:56] c1에 대한 빈 태그 등록/[12:43] SimpleUrlHandlerMapping의 장점/[13:33] DefaultAnnotationlHandlerMapping/[14:39] 공통으로 핸들러 매핑에서 설정할수 있는 정보/[15:03] Default 핸들러 프로포티/[15:43] Default 핸들러 사용법/[16:45] 핸들러 인터셉터/[18:11] 예제 만들기/[18:30] 클래스 생성/[19:33] static class 입력/[20:41] 필요한 import 지정/[21:15] 인터셉터 클래스 입력/[22:03] 핸들러 인터셉터 넣기/[23:52] 인터셉터 컨피그 클래스 입력/[24:45] 빈 태그 입력/[25:15] 관련 클래스 import/[25:48] 매소드 추가/[26:33] 인터셉터 컨피그 2 입력/[27:48] 핸들러매핑 매소드 리턴 값 입력/[27:59] 인터셉터 2 받아오도록 설정/[28:26] 인터셉터 2 생성/[29:00] postHandle 입력/[30:48] preHandle 입력/[31:36] 인터셉터 포스트핸들 클래스 입력/[32:15] 클래스 셋팅/[33:30] 해당 함수 import

  • 11.27분 실습 예제로 배우는 스프링 개발! - Chapter 1

    핸들러 어댑터와 View에 대해 공부하고 실습합니다.

    책갈피 : [00:05] 컨트롤러의 확장/[00:54] 핸들러 어댑터를 직접 구현해 새로운 컨트롤러 만들기/[01:07] 핸들러 어댑터 인터페이스 만들기/[02:46] 관련 클래스 import/[03:07] getLastModified 입력/[04:00] 커스텀 컨트롤러 인터페이스와 핸들러 어댑터 만들기/[04:54] 심플 컨트롤러 인터페이스 입력/[06:09] ViewName 어노테이션 지정/[07:30] RequiredParams 어노테이션 지정/[08:18] 심플 컨트롤러 인터페이스 구현과 어노테이션을 부여한 컨트롤러 만들기/[09:24] 모델 입력/[10:05] 핸들러어댑터 만들기/[10:37] support 매소드 입력/[12:33] m 변수 입력/[13:09] 매소드에 관련된 클래스 import/[13:28] 어노테이션에 필요한 정보 가져오기/[14:01] 필수 파라미터 지정/[14:52] hashmap 클래스 import/[15:16] 앨리먼트 값 사용하도록 소스 입력/[16:11] 모델 설정/[16:55] 컨트롤러를 오브젝트 타입으로 넘기기/[17:22] modelAndView 리턴/[18:10] 마무리/[18:52] 핸들러 매핑에서 헬로 컨트롤러 찾기/[19:48] View에 대해 알아보기/[20:29] View 이름을 돌려주는 경우/[20:52] View 인터페이스/[21:26] View 인터페이스 생성/[22:22] render 매소드/[23:00] View 인터페이스로 직접 View 를 만들지 않아도 되는이유/[23:36] 스프링에서 제공하는 View와 그 사용법/[23:56] 포워드나 인클루드의 사용 예/[25:33] 인터널 리소스 뷰로 인클루드 매소드 사용하기/[26:06] jst view/[27:02] jstl을 활용하는 xml 생성

  • 12.28분 실습 예제로 배우는 스프링 개발! - Chapter 2

    Redirect View, Marshalling View, View Resolver

    책갈피 : [00:11] 소스 입력/[00:33] messageSoure 빈 입력/[01:02] 프로포티 지정/[02:14] Redirect View/[03:07] Redirect 클래스 생성/[03:58] hellocontroller 입력/[04:46] 서블릿에 관한 클래스 import/[05:15] Redirect 입력/[05:46] Redirect에서 쓰는 url이 /로 시작하는 경우/[06:46] 컨텍스트 렐러티브를 사용할 경우/[07:08] Marshalling View/[08:09] info 클래스 생성/[09:16] 캐스터 마셜러를 빈으로 등록하기/[09:28] Marshalling View.xml 생성/[10:03] Marshaller 입력/[10:35] 빈 id 입력/[11:09] 프로포티 입력/[11:37] 마셜러 지정할 오브젝트 입력/[12:03] helloController 빈 태그 지정/[12:35] MarshallingViewtTest 에 helloController 만들기/[13:22] Resource 어노테이션으로 빈 이름 매핑/[13:54] handleRequest 입력/[15:09] 맵에 관련된 클래스 import/[15:18] model.put 입력/[15:58] helloMarshallingView return 에 적용/[17:07] View Resolver/[18:21] InternalViewResolver를 xml에 등록하기/[19:07] prefix와 suffix 지정/[20:41] hello 라는 뷰 이름을 리턴했을 경우/[21:36] xml을 사용하는 ViewResolver 만들기/[22:11] 클래스 생성/[23:07] 클래스 import/[23:18] modelAndView 리턴하는 소스 입력/[24:10] test 입력/[25:37] requestMapping 어노테이션 입력/[26:15] 여러가지 뷰를 변경 할 경우/[26:56] 리소스 View Resolver 사용법

  • 13.27분 실습 예제로 배우는 스프링 개발! - Chapter 3

    ResourceBundleViewResolver, BeanNameViewResolver, ContentNegotiatingViewResolver, DispatcherServlet 전략

    책갈피 : [00:01] ResourceBundleViewResolver/[01:59] 우선순위 정해주는 빈 생성/[02:30] ResourceBundleViewResolve 입력/[02:53] ResourceBundleViewResolve 에 대응되는 View가 없을 경우/[04:15] Bean NameViewResolver/[04:46] ContentNegotiatingViewResolver/[06:26] ContentNegotiatingViewResolver의 view 결정 과정/[06:46] 미디어 타입 결정 방법 네가지 알아보기/[07:29] url 확장자 사용 하는 방법/[08:07] 포멧을 지정하는 파라미터에서 추출하는 방법/[08:39] ContentNegotiatingViewResolver에 관한 xml 파일 생성/[09:16] http에 ContentNegotiating이 사용되는 억셉트 헤더의 설정 이용/[10:03] 디폴트 미디어 타입 사용/[10:22] 미디어 타입 프로포티 적용/[10:56] entry 입력/[11:58] list 태그 입력 후 빈 등록/[12:22] internalResourceViewResolver 등록/[12:52] 디폴트 뷰 지정/[13:05] list 태그 입력 후 빈 등록/[14:11] 여러개의 ViewResolver를 사용하는 경우/[15:31] ViewResolver를 거치지 않고 특정 뷰를 선정 대상에 넣고 싶을 경우/[16:15] content 라는 빈 태그를 등록했을때/[16:47] 두개의 ViewResolver에 content뷰 돌려줄수 있는지 확인/[17:48] 요청한 미디어타입을 처리하는 뷰 찾기/[18:59] DispatcherServlet/[19:14] 클래스 생성/[19:51] DispatcherServletTest 전략/[20:44] 핸들러 예외 리졸버가 등록된 경우/[21:11] 핸들러 예외 리졸버 인터페이스 등록/[21:52] 리졸브 익셉션 매소드 입력/[22:45] 해당 매소드 import/[23:07] 어노테이션 매소드 핸들러 익셉션 리졸브 사용법/[23:37] 클래스 생성/[23:56] 코드 입력/[24:37] 해당 매소드 import/[25:18] 예외 종류 지정

  • 14.33분 실습 예제로 배우는 스프링 개발! - Chapter 4

    MVC와 RequestMapping, URL 패턴, HTTP 요청 메소드, 요청 파라미터, HTTP 헤더, 타입레벨 매핑, 메소드레벨 매핑, 매핑정보 상속

    책갈피 : [00:08] MVC에 대해 알아보기/[00:22] MVC 프레임워크의 장점/[01:18] 에노테이션 MVC/[02:30] 디폴트 어노테이션 핸들러 매핑의 핵심/[02:51] 기본적 결합 방법/[03:07] requestMapping에 사용 가능한 엘리먼트 종류와 특징 알아보고 적용하기/[04:30] requestMapping 어노테이션 만드는 방법/[04:55] 클래스 생성/[05:39] requestMapping에 해당하는 클래스 삽입/[07:00] 패스 변수/[07:15] url 패턴 지정/[08:11] http요청 매소드 사용법/[08:54] 함수 입력/[10:50] 두가지 매핑 설정만 있는 경우/[12:03] 요청 파라미터 받아오는 방법/[12:50] Mapping 선언/[13:31] 두가지 파라미터 선언/[15:31] 특정 파라미터가 존재하지 않는 조건하에 지정하기/[16:02] http 헤더 정보 알아보기/[16:15] 지정방식/[16:47] Mapping 선언/[17:37] 타입 레벨 매핑과 매소드 레벨 매핑의 결합/[18:03] 매소드 공통 조건 지정하기/[19:02] requestMapping 어노테이션 지정/[19:30] 클래스 생성/[20:36] user 대신 * 사용할 경우/[21:18] url을 타입 레벨에서만 정의하고 매소드 레벨에서 다른 매핑 조건 추가하기/[21:59] 요청 매소드 지정/[22:33] requestMapping 어노테이션 지정/[23:52] 매소드 레벨의 단독 매핑/[25:18] 폴더 지정/[26:11] 타입 레벨의 단독 매핑/[27:15] requestMapping 지정/[28:33] 타입 상속과 매핑/[30:07] requestMapping 어노테이션을 인터페이스 레벨에 부여할 경우/[30:32] 매핑 정보 상속의 적용법 알아보기/[30:41] 상위타입 매소드에 requestMapping 어노테이션 생성/[31:26] 함수 입력/[32:07] 서브 매소드 생성/[33:01] 오버라이드 할 경우

  • 15.31분 실습 예제로 배우는 스프링 개발! - Chapter 5

    RequestMapping 매핑정보 상속, GenericController

    책갈피 : [00:15] 상위 타입과 하위 타입 매소드의 RequestMapping 어노테이션 결합 알아보기/[01:11] 슈퍼클래스 생성/[02:00] 에디트 경로 가지고 있는 super2 입력/[02:28] RequestMapping에 해당하는 정보 import/[02:53] 서브에 RequestMapping이 없는 경우/[04:00] 상위 타입매소드와 하위 타입의 RequestMapping 결합 알아보기/[04:46] 클래스 레벨 입력/[05:46] 하위 타입과 매소드, 매소드에 정의된 RequestMapping 어노테이션 재정의/[06:57] 예제 작성/[07:00] 슈퍼 클래스 레벨에 RequestMapping 추가/[07:23] 매소드에 RequestMapping 추가/[07:46] 하위 클래스에 RequestMapping 추가/[08:16] 슈퍼 클래스와 서브 클래스에 RequestMapping 정의된 경우/[09:20] 서브 클래스 매소드에 url 패턴이 없는 RequestMapping 재정의/[10:11] 제네릭스 매핑 정보 상속을 이용해 컨트롤러 작성하기/[10:26] Generic 추상 클래스 만들어보기/[11:05] 기본정보의 입출력 다루는 컨트롤러/[11:56] GenericController 만들기/[12:13] 추상 클래스 입력/[12:35] crud 검색기능을 가진 컨트롤러 삽입/[14:28] 간단한 추상클래스 생성/[16:22] GenericController T,P,S 설명/[17:30] GenericController 입력/[18:10] 유저와 유저 서비스 지정/[18:48] 유저의 추가 작업에 대한 매소드가 필요할 경우/[20:44] RequestMapping 어노테이션의 상속 활용/[21:00] 매핑 정보 입력/[22:02] 유저 컨트롤러에 상속받을수 있도록 만들기/[23:17] 로그인에 RequestMapping 입력/[23:52] 컨트롤러 어노테이션/[25:48] 클래스 생성/[26:26] 헬로 컨트롤러 매소드 생성/[27:41] 복잡한 기능을 가진 컨트롤러 생성/[27:56] 리턴 값 지정/[28:51] 뷰 이름 코드에서 결정하도록 만들기/[29:18] RequesParam 입력/[30:03] cookieValue 어노테이션 입력

  • 16.28분 웹 개발자를 위한 Spring 프로그래밍 - Chapter 1

    메소드 파라미터, pathvariable, requestParam, cookievalue, requestheader, modelAttribute, requestbody, value, 리턴타입

    책갈피 : [00:07] 어노테이션 메소드 파라미터 사용법/[00:14] pathvariable 예제 만들기/[00:51] 패스 컨트롤러 클래스 생성/[01:19] 리퀘스트 매핑으로 경로 만들어주는 곳에서 패스 변수 받는 방법/[02:30] RequestMapping 입력/[02:44] 경로 지정/[03:14] 파라미터 값에 pathvariable 지정/[03:27] in 값에 pathvariable 지정/[04:00] requestParam/[04:38] 예제 작성/[05:08] requestParam 지정/[05:28] requestParam 하나 이상의 파라미터에 적용/[06:55] 맵 이용 방법/[07:30] 맵 키와 값을 전달할수 있게 지정/[07:46] 리턴 값 입력/[08:37] 리퀘스트 파라미터에 엘리먼트 지정방법/[09:43] cookievalue/[10:05] cookievalue 지정방법/[10:33] 변수값 입력/[11:13] auth에 대해 cookievalue 어노테이션 만들기/[12:58] 또다른 요청 파라미터 만들기/[13:16] requestheader/[13:50] requestheader 입력/[14:33] modelAttribute/[15:46] 개별로 요청 파라미터 전달받는 방법/[16:41] user 입력/[17:18] 게터 세터 생성/[17:33] modelAttribute 어노테이션 입력/[18:03] modelAttribute 사용의 또다른 예/[18:29] 에러 났을경우 리턴값 설정/[19:00] errors 사용시 참고할점/[19:30] requestbody/[21:22] value/[21:55] osName 에 넣어주는 메소드 선언/[22:51] osName 가져오도록 지정/[23:45] value 어노테이션에서 정의한 상수값 필드로 주입해 사용하기/[25:14] 리턴 타입/[26:32] 자동 추가모델 오브젝트와 자동생성 뷰 이름 알아보기/[27:06] 이름 지정하기

  • 17.29분 웹 개발자를 위한 Spring 프로그래밍 - Chapter 2

    SessionAttribute Annotation, 메소드 리턴타입, 수정폼 컨트롤러, 폼서브밋 컨트롤러

    책갈피 : [00:06] 리턴 타입의 종류/[00:51] 모델앤뷰 리턴하는 컨트롤러 타입의 컨트롤러 만들고 수정하기/[01:14] 코드 작성/[02:30] 리턴 값 입력/[03:07] 컨트롤러 코드를 MVC 어노테이션 스타일로 변경/[03:38] RequestMapping 삽입/[04:15] 파라미터 값 가져오도록 변경/[05:30] 모델에 값을 넣어 모델타입의 파라미터 이용/[06:15] 메소드의 리턴 타입이 스트링인 경우/[06:46] 예제 작성/[07:46] 리턴타입이 void일 경우/[09:03] 모델 오브젝트/[09:41] 리턴값 입력/[10:54] responseBody/[11:11] 코드 작성/[11:45] responseBody 지정/[13:03] 세션 어트리뷰트 어노테이션과 세션 상태에 대해 알아보기/[14:13] 유저 클래스 생성/[15:11] 퍼블릭 유저 생성/[16:03] 수정 폼 출력 컨트롤러 만들기/[17:03] 폼 처리시 상태유지/[17:48] 리퀘스트 매핑 입력/[18:33] 클래스 정의/[19:15] 퍼블릭 유저 지정/[19:30] 서브밋 처리하는 컨트롤러 생성/[20:25] 리퀘스트 매핑 입력/[21:03] 폼 출력시 발생하는 몇가지 문제/[22:55] 유저 오브젝트 이용 방법/[23:33] 새 유저 생성/[24:45] 유저 정보 업데이트/[25:30] 세션 정보 비우기/[26:52] 성능상의 문제 해결하기/[27:32] 새 유저 생성/[27:51] 유저 맵 입력

  • 18.28분 웹 개발자를 위한 Spring 프로그래밍 - Chapter 3

    BindingTest, 디폴트 프로퍼티 에디터, 커스텀 프로퍼티 에디터

    책갈피 : [00:04] 바인딩 테스트/[01:14] 파라미터 바인딩의 진행과 검증 알아보기/[01:32] 스테틱 클래스 생성/[02:27] 게터 세터 생성/[03:23] 새 클래스 생성/[03:59] 케이스 문 구성/[04:46] 레벨 설정/[05:56] DB 연결/[06:00] 프로포티 에디터 알아보기/[06:46] 캐릭터셋 에디터/[07:45] CharsetEditor 변수 입력/[08:58] 소스 입력/[09:35] 클래스 추가/[10:50] 커스텀 프로퍼티 에디터/[11:13] 프로퍼티 에디터에서 변환을 위해 사용되는 메소드/[12:24] 문자열과 레벨 타입의 오브젝트 변환을 담당하는 프로퍼티 에디터 구현/[12:35] 레벨 프로퍼티 에디터 생성/[13:09] 레벨 프로퍼티 에디터 해당 클래스 추가/[13:50] 리턴 값 입력/[14:16] setAsText 입력/[15:33] 레벨 에디터 입력/[16:29] initBinder/[17:17] 클래스 생성/[17:47] initBinder 메소드 입력/[18:07] webDataBinder 해당 클래스 추가/[19:30] initBinder 테스트 소스 입력/[21:00] 특정 이름의 프로퍼티에만 적용되는 프로퍼티 에디터 적용/[22:21] 오브젝트 생성/[23:06] MinMax 프로퍼티 에디터 생성/[24:14] 빈 클래스 생성/[24:36] setAsText 입력/[25:11] 최대 최소 값 비교/[26:26] 멤버와 아이디에 해당하는 컨트롤러 메소드 지정/[27:30] 모델 어트리뷰트 선언/[28:02] 리퀘스트 매핑 지정

  • 19.30분 웹 개발자를 위한 Spring 프로그래밍 - Chapter 4

    프로토타입 빈 프로퍼티 에디터, 모조 오브젝트 프로퍼티 에디터, 프로토타입 도메인 오브젝트 프로퍼티 에디터

    책갈피 : [00:09] 웹 바인딩 이니셜라이저 사용법/[01:38] 웹 바인딩 이니셜라이저 인터페이스 만들기/[02:28] initbinder 매소드 입력/[03:05] 커스텀 프로퍼티 에디터 추가/[04:00] 클래스 빈으로 등록하기/[04:28] 빈 클래스 입력/[05:09] 웹 바인딩 이니셜라이저를 프로퍼티에 등록/[05:25] 빈으로 클래스 지정/[06:38] 프로토타입 빈 프로퍼티 에디터/[07:56] 코드 작성/[08:07] 유저 클래스 입력/[08:24] id, name에 해당하는 게터 세터 등록/[09:26] Code userType 등록/[09:50] static class code 입력/[10:03] id, name에 해당하는 게터 세터 등록/[10:37] 코드에 해당하는 게터세터 등록/[10:58] 리턴 값 입력/[11:18] 오버라이드 어노테이션으로 지정/[12:05] 유저 컨트롤러 생성/[12:37] initbinder 매소드 지정/[13:28] ModelAttribute 입력/[13:54] 리퀘스트 매핑 어노테이션 추가/[14:52] 모조 오브젝트 프로퍼티 에디터 사용법/[15:22] FakeCodePropertyEditor 입력/[16:32] SetAsText 입력/[17:10] 코드 오브젝트 생성/[17:44] getAsText 입력/[19:07] 문제점/[20:18] FakeCode 만들기/[22:14] 프로토타입 도메인 오브젝트 프로퍼티 에디터 적용법/[24:00] 코드 프로퍼티 에디터 생성/[24:29] 코드 서비스 만들기/[25:15] 리턴 값 입력/[25:25] 코드 프로퍼티 에디터 완성하기/[25:41] 오토 와이어드 어노테이선 지정/[25:55] setAsText와 getAsText 입력/[27:18] initbinder에 추가하기/[28:03] 유저 컨트롤러 입력/[29:06] initbinder 지정/[29:59] add 클래스 가져오기

  • 20.31분 웹 개발자를 위한 Spring 프로그래밍 - Chapter 5

    Converter, Formatter, WebDataBinder, Validator, Validator

    책갈피 : [00:05] Converter 인터페이스 알아보기/[00:37] Converter 코드 등록/[01:30] Converter 인터페이스 등록 방법/[01:57] LevelToStringConverter 입력/[03:23] 타겟에서 소스로 넘어가는 클래스 생성/[04:46] 컨트롤러 바인딩 작업에 Converter 적용/[05:30] initBinder 를 통한 수동 등록/[05:59] 제너릭 컨버전 서비스에 직접 만든 변환 오브젝트 추가하는 두가지 방법/[06:30] 컨버전 서비스 팩토리 빈 등록하기/[06:45] xml 파일 생성/[07:00] 빈 등록/[07:28] 제너릭 컨버전 서비스에 추가할 컨버터 지정/[08:24] 컨버전 서비스 타입의 빈 등록/[09:20] initBinder 입력/[10:11] Formatter 알아보기/[11:20] NumberFormat 알아보기/[11:37] 클래스 유저 입력/[12:24] 숫자 변환 지원하는 Formatter 입력/[13:01] NumberFormat 입력/[13:31] setRelativeLocations 입력/[14:45] 유저 컨트롤러 클래스 생성/[15:54] DateTimeFormat 입력/[16:55] WebDataBinder 알아보기/[18:32] 소스 만들기/[19:07] 유저에 해당하는 유저 컨트롤러 생성/[20:51] Validator 알아보기/[21:25] Validator 인터페이스 메소드/[22:14] user Validator 예제 작성/[22:29] 유저 클래스 입력/[23:14] 서포트 메소드 생성/[23:52] Validate 만들기/[24:26] 타겟 입력/[26:32] 유저 컨트롤러 코드 안에서 검증기 사용하기/[26:48] 컨트롤러 어노테이션 추가/[27:22] Validation 하는 방법/[28:11] add 부분에 Validator 코드 입력/[29:25] jsr-303 빈 검증방식/[29:41] NotNull 어노테이션 입력/[30:56] 최소값 지정