(책) 자바 웹을 다루는 기술 31

Chap 27 메이븐과 스프링 STS 사용법

27.1 메이븐 설치하기 948p 27.2 메이븐 환경 변수 설정하기 951p 27.3 STS 설치하기 955p 27.4 메이븐 프로젝트의 구조 및 구성 요소 살펴보기 959p 27.5 스프링 프로젝트 만들기 963p 27.6 STS 프로젝트 실행하기 967p 27.7 STS 환경에서 마이바티스 실습하기 972p 27.8 log4j 알아보기 980p 27.9 타일즈 기능 살펴보기 986p 27.10 JSP 페이지에 타일즈 적용하기 989p 27.11 페이지 본문에 회원 목록창 나타내기 996p 27.12 로그인 기능 구현하기 998p 지금까지는 웹 애플리케이션 구현 시 이클립스에서 웹 프로젝트 생성 후 스프링 기능에 필요한 라이브러리를 직접 다운로드하여 사용했음 - 스프링 업데이트 때마다 관련 기능의 라..

Chap 26 스프링 애너테이션 기능

26.1 스프링 애너테이션이란? 920p 26.2 스프링 애너테이션 이용해 URL 요청 실습하기 921p 26.3 스프링 애너테이션 이용해 로그인 기능 구현하기 925p 26.4 @Autowired 애너테이션 이용해 빈 주입하기 936p 26.1 스프링 애너테이션이란? 920p 스프링 2.5 - DI나 AOP 등의 기능은 XML 파일로 설정 후 애플리케이션에서 사용 스프링 3.0 - DI 등 자바 코드와 관련된 설정은 직접 코드에서 할 수 있도록 애너테이션 기능을 제공 현재 스프링 기반 애플리케이션에서는 XML에서 설정하는 방법과 애너테이션 기능을 사용하는 방법 두 가지를 혼합해서 사용하고 있음 1. 스프링 애너테이션 제공 클래스 스프링에서 제공하는 애너테이션 관련 클래스를 XML 설정파일에서 빈으로 설..

Chap 25 스프링 트랜잭션 기능 사용하기

25.1 트랜잭션 기능 904p 25.2 은행 계좌 이체를 통한 트랜잭션 기능 905p 25.3 스프링의 트랜잭션 속성 알아보기 907p 25.4 스프링 트랜잭션 기능 적용해 계좌 이체 실습하기 908p 25.1 트랜잭션 기능 904p 스프링의 트랜잭션 기능은 마이바티스 기능과 연동해서 사용함 XML 파일에서 설정하는 방법 / 애너테이션을 이용하는 방법 두 가지가 있으나 후자가 더 많이 선호됨 트랜잭션(Transaction) : 여러 개의 DML 명령문을 하나의 논리적인 작업 단위로 묶어서 관리하는 것 All(commit, 영구반영) 또는 Nothing(rollback, 모두취소) 방식으로 작업 단위가 처리됨 Service의 각 메서드가 애플리케이션의 단위기능을 수행함, 단위기능 하나가 DAO의 SQL문..

Chap 24 스프링과 마이바티스 연동하기

24.1 스프링-마이바티스 연동 관련 XML 파일 설정하기 890p 24.2 마이바티스 관련 XML 파일 설정하기 894p 24.3 자바 클래스와 JSP 파일 구현하기 896p 24.1 스프링-마이바티스 연동 관련 XML 파일 설정하기 890p 23장에서는 웹 프로젝트에서 마이바티스 라이브러리를 추가하여 독립적으로 사용할 수 있었음 이번 장에서는 스프링과 마이바티스를 연동해 회원 관리 기능을 구현해보자 1. 새 프로젝트 pro24 생성 후 책에서 제공하는 스프링 라이브러리를 lib 폴더에 복붙하자 (실습에서 사용되는 스프링 버전-3.0.1 호환되는 마이바티스 라이브러리 - myBatis-3.0.5.jar) 2. /WEB-INF/config - action-mybatis.xml, action-service..

Chap 23 마이바티스 프레임워크 사용하기

23.1 마이바티스란? 828p 23.2 마이바티스 설치하기 842p 23.3 마이바티스 이용해 회원 기능 실습하기 845p 23.4 마이바티스 이용해 회원 정보 CRUD 실습하기 852p 23.5 마이바티스의 동적 SQL문 사용하기 874p 23.1 마이바티스란? 838p 기존 JDBC - 반복적으로 구현해야할 SQL 문장이 많고 SQL문이 복잡함 - 연동 과정 : connection -> Statement 객체 생성 -> SQL문 전송 ->결과 반환 -> close => SQL문이 소스코드에 섞여 복잡해짐 - 문자열로 SQL문을 만들어 사용하는 방식 마이바티스 - 복잡한 SQL문도 SQL Developer에서 사용하듯 표준화된 방법으로 사용 가능(문자열로 안만들어도 됨) - SQL 실행 결과를 자바 ..

Chap 22 스프링 JDBC 기능

22.1 스프링 JDBC로 데이터베이스와의 연동 설정하기 824p 22.2 JdbcTemplate 클래스 이용해 회원 정보 조회하기 830p 22.1 스프링 JDBC로 데이터베이스와의 연동 설정하기 824p JDBC(Java Database Connectivity) 는 많이 사용되는 데이터 액세스 기술임. 스프링에서 제공하는 JDBC는 기존 JDBC의 장점과 단순함을 유지하면서 개발이나 유지관리의 어려움 등 단점을 보완했음. 간결한 API 뿐만 아니라 확장된 JDBC의 기능도 제공함. 실제 개발을 진행할 때는 스프링 JDBC 기능 보다는 마이바티스나 하이버네이트 같은 데이터베이스 연동 관련 프레임워크를 사용하지만, 스프링 JDBC의 기본적인 기능을 알아두면 도움이 되므로 22장에서 간단히 짚고 넘어가자...

Chap 21 스프링 MVC 기능

21.1 스프링 프레임워크 MVC의 특징 802p 21.2 SimpleUrlController 이용해 스프링 MVC 실습하기 805p 21.3 MultiActionController 이용해 스프링 MVC 실습하기 811p 21.4 MultiActionController 이용해 회원 정보 표시하기 816p 21.5 요청명과 동일한 JSP 이름 표시하기 819p 21.1 스프링 프레임워크 MVC 특징 802p 스프링에서 지원하는 MVC 기능의 특징 - 모델2 아키텍처를 지원함 - 스프링과 다른 모듈과의 연계가 쉬움 - 타일즈 tiles 나 사이트메시 sitemesh 같은 View 기술과의 연계가 쉬움 - 태그 라이브러리를 통해 message 출력, theme 적용, 입력폼 구현 등을 쉽게 할 수 있음 ▼스프..

Chap 20 스프링 AOP 기능

20.1 관점 지향 프로그래밍의 등장 792p 20.2 스프링에서 AOP 기능 사용하기 794p 20.1 관점 지향 프로그래밍의 등장 792p 보안기능, 로깅, 트랜잭션, 예외처리, 이메일 통보 기능 등은 모든 웹 애플리케이션에서 공통으로 사용하는 기능임. 따라서 웹 애플리케이션에 주 기능을 추가할 때마다 이러한 공통 기능도 일일이 구현해주어야 하는데, 이는 배(주 기능)보다 배꼽(보조 기능)이 더 커지는 결과가 되기도 함 => 스프링에서는 이런 문제를 관점 지향 프로그래밍으로 해결함 관점 지향 프로그래밍(AOP, Aspect Oriented Programming) : 메서드 안의 주 기능과 보조 기능을 분리한 후 선택적으로 메서드에 적용해서 사용한다는 개념 전체 코드에 흩어져있는 보조 기능을 하나의 장..

Chap 19 스프링 의존성 주입과 제어 역전 기능

19.1 의존성 주입하기 768p 19.2 의존성 주입 실습하기 774p 19.3 회원 기능 이용해 DI 실습하기 787p 자바와 같은 객체 지향 프로그래밍 언어에서 클래스는 특정 기능을 수행하는 부품 역할을 함. 어떤 부품을 사용하다가 이상이 있거나 오래 되면 다른 부품으로 교체해서 사용하듯, 애플리케이션에서도 사용자의 요구사항에 따라 클래스 기능을 변경하거나 다른 클래스 기능으로 대체해야 하는 경우가 자주 생김. 이 상황을 수월하게 처리하기 위해 도입된 기능이 의존성 주입(DI)과 제어 역행(IoC)임. 19.1 의존성 주입하기 768p 여태까지는 한 클래스가 다른 클래스의 기능을 사용하려면 개발자가 직접 코드에서 사용할 클래스의 생성자를 호출해서 사용했음. 즉, 사용할 클래스와 사용될 클래스의 관계..

Chap 18 스프링 프레임워크 시작하기

18.1 프레임워크란? 762p 18.2 스프링 프레임워크 환경 설정하기 766p 18.1 프레임워크란? 762p 프레임워크의 사전적 의미는 '어떤 것을 구성하는 구조 또는 뼈대'임 소프트웨어적 의미로는 '기능을 미리 클래스나 인터페이스 등으로 만들어 제공하는 반제품' 정도의 느낌 즉, 어느 정도 완성된 상태로 제공하는 기능임. -> 개발자가 자신의 상황에 맞게 변형 및 추가해서 사용함 일정한 틀 속에서 개발하므로 개발 후 유지보수 및 기능의 확장성도 보장됨 => 프레임워크를 사용하면 일정한 기준에 따라 개발이 이루어지므로 개발 생산성과 품질이 보장된 애플리케이션을 개발할 수 있다 1. 스프링 프레임워크 프레임워크 중 가장 많이 사용되고 있음. 자바 웹 애플리케이션 개발을 위한 오픈 소스 프레임워크임. ..