본문 바로가기

Room 102. Back-end

(31)
[실전 개발자를 위한 Spring Framework ] 강의 - AOP 18강 AOP(Aspect Oriented Programming 목차 내용 AOP 개념 AOP 주요 용어 학습 목표 Aspect Oriented Programming 개념 파악 AOP 주요 용어 이해 스프링 AOP와 AspectJ의 차이점 이해 AOP 개요 핵심 기능과 부가 기능 업무 로직을 포함하는 핵심 기능(Core Concerns) 핵심 기능을 도와주는 부가적인 기능(로깅, 보안 등)을 부가기능(Cross-cutting Concerns)이라 부름 객체지향의 기본 원칙을 적용하여도 핵심기능에서 부가기능을 분리해서 모듈화하는 것은 어렵다. 애플리케이션에서의 관심사의 분리(기능의 분리). 즉, 핵심적인 기능에서 부가적인 기능을 분리, 분리한 부가기능을 Aspect라는 독특한 모듈 형태로 만들어서 설계하고..
[실전 개발자를 위한 Spring Framework ] 강의 - MyBatis 15강 MyBatis 목차 내용 MyBatis 개요와 특징 MyBatis 주요 컴포넌트 학습 목표 스프링 데이터 접근 기술 중 하나인 MyBatis의 개요 학습 MyBatis의 주요 컴포넌트와 설정을 수행 MyBatis 핵심 기능 중 하나는 SQL 과 Java 객체를 매핑시켜주는 기능으로 Object-Mapper 기술입니다. MyBatis 의 개요 자바 오브젝트와 SQL문 사이의 자동 Mapping 기능을 지원하는 Object Mapper 입니다. SQL을 별도의 파일로 분리해서 관리하게 해주며, 객체-SQL 사이의 파라미터 Mapping 작업을 자동으로 해주기 때문에 많은 인기를 얻고 있는 기술입니다. Hibernate나 JPA(Java Persistence Api)처럼 새로운 DB 프로그래밍 패러다임..
[실전 개발자를 위한 Spring Framework ] 강의 - Context 분리와 전략 14강 Context 분리와 전략 목차 내용 Servlet context와 Root context 컨텍스트 분리 전략 학습 목표 Servlet context와 Root context의 차이점과 계층구조를 이해합니다. 컨텍스트 분리 전략을 이해하여 구현합니다. Servlet Context DispatcherServlet - 웹의 요청을 최초로 접수 DispatcherServlet - 설정 파일을 이용해서 ServletContext(ㅅ프링 컨테이너) 로딩 Spring-MVC와 관련 있는 빈을 설정 Root Context Spring-MVC와 분리되어 빈을 관리하고 싶을 때 사용 일반적으로 Servlet context와 Root context 분리하여 운용 Controller / ViewResolver 등 웹..
[실전 개발자를 위한 Spring Framework ] 강의 - Data Access 13강 Spring Data Access 기술과 DataSource 목차 내용 Spring-Data Access 기술 이해 DataSource 이해와 설정 학습 목표 스프링에서 사용 가능한 데이터 접근 기술에 대해 이해합니다. DataSource 개념을 이해하고 설정합니다. DAO 디자인 패턴 비즈니스 서비스와 로우 레벨의 데이터 액세스 작업을 분리해 놓았습니다. 고로 DAO가 DB에게 데이터 액세스를 하기 위한 작업이 필요합니다. 데이터 액세스 기술 JDBC 자바에서의 관계형 데이터 베이스 접속 기술 JDK 레벨에서 지원하며, 다른 고수준 기술의 기반이 됩니다. Spring JDBC 스프링 자체적으로 지원하는 JDBC Wrapper MyBatis Third-party 자바 관계형 DB 매핑 라이브러리입..
[실전 개발자를 위한 Spring Framework ] 강의 - JUnit 12강 JUnit 목차 내용 JUnit 테스팅과 스프링 테스트 JUnit의 개요 Java에서 독립된 단위테스트(Unit TesT)를 지원해주는 프레임워크입니다. 단위테스트란? 소스 코드의 특정 모듈이 의도된 대로 정확히 동작하는지 검증하는 절차입니다. 모든 함수와 메소드에 대한 테스트 케이스를 작성하는 절차를 뜻함. JUnit의 특징 TDD의 창시자인 Kent Beck과 디자인 패턴 책의 저자인 Erich Gamma가 작성. 단정(assert) 메소드로 테스트 케이스의 수행 결과를 판별합니다 ex) assertEquals(예상 값, 실제 값) jUnit4부터는 테스트를 지원하는 어노테이션을 지원합니다. @Test / @Before / @After 각 @Test 메소드가 호출될 때마다 새로운 인스턴스를 생..
[실전 개발자를 위한 Spring Framework ] 강의 - Static 11강 Static file 처리와 FileUpload 목차 내용 Static Web resource 처리 Static Resource : 서버에서 처리(실행)되지 않고 응답되는 리소스. ex) CSS, JS, 이미지 파일, 멀티미디어 파일 파일 업로드 학습 목표 웹 서비스 시 static 웹 리소스 처리 방식에 대해 알아봅니다. 파일업로드 방식을 이해하고 구현합니다. Static Web Resource 처리하기 서버의 처리가 필요 없는 static web resources 는 요청 시 서버를 거치지 않고 곧바로 응답 필요 특정 URL로 요청이 오면 static resource 로 인식하고 바로 응답 수행 위 세팅을 통해, 리소스를 요청하는 URL 을 요청했을 때, 컨트롤러 딴에서 위와 같이 맵핑된 정보..
[실전 개발자를 위한 Spring Framework ] 강의 - RESTful API 10강 RESTful API 목차 내용 RESTful API 웹 서비스 JSON 데이터 포맷 학습 목표 RESTful 섭스에 대한 이해와 설계 방식을 학습! 웹 서비스의 데이터 교환의 사실상 표준인 JSONn에 대해 알아보고 서비스 구현 시 활용해봅니다. Open API(Application Programming Interface)의 개념 Open API는 말 그대로 개방형 API이다. API가 응용 프로그램을 개발할 때 사용하는 인터페이스라는 의미. 프로그래밍에서 사용할 수 있는 개방되어 있는 상태의 인터페이스를 말합니다. Daum, Naver 등의 포털 사이트나 통계청, 기상청 등과 같은 관공서에서도 가지고 있는 데이터를 외부 응용 프로그램에서 사용할 수 있도록 Open API를 제공하고 있습니다. ..
[실전 개발자를 위한 Spring Framework ] 강의 - HTTP 파라미터 처리 09강 HTTP 파라미터 처리 목차 내용 HTTP 요청 파라미터 처리 @RequestParam 학습 목표 HTTP 요청 파라미터를 처리하는 코드를 작성합니다. HTTP 요청 파라미터를 자바 객체로변환하는 기능인 Command 객체를 사용합니다. 파라미터 전송 받기 :: @RequestParam @RequestParam 내 requried 는 null 값에 대한 필수로 입력해야하는 지 결정. defaultValue 는 전달하지 않았을 경우 디폴트 값을 정함. Command 객체를 이용해 폼 전송 처리 Command 객체 사용 전 예시. 위와 같이 Request변수가 많을 경우 코드가 복잡해지므로, Command 객체를 사용하여 form 전송을 처리할 수 있습니다. 사용 방법은 Controller 내에 VO..