전체 글 89

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. 스프링 프레임워크 프레임워크 중 가장 많이 사용되고 있음. 자바 웹 애플리케이션 개발을 위한 오픈 소스 프레임워크임. ..

Chap 17 모델2 방식으로 효율적으로 개발하기 -2

17.1 웹 애플리케이션 모델 17.2 MVC 디자인 패턴 17.3 MVC를 이용한 회원관리 17.4 모델2로 답변형 게시판 구현하기 17.4 모델2로 답변형 게시판 구현하기 695p 게시판 기능은 모든 웹 페이지의 기본 기능을 포함함 답변형 게시판에서는 부모글이 목록에 나열되고, 각 부모글에 대해 답변 글(자식 글)이 계층 구조로 나열되는 구조임. 즉, 답변 글에 또 답변 글을 올릴 수 있는 기능을 하는 게시판임. ▼답변형 게시판 글을 저장하는 테이블(t_board)의 컬럼 no 컬럼 이름 속성 자료형 크기 유일키 여부 NULL 여부 키 기본값 1 articleNO 글 번호 number 10 Y N 기본키 2 parentNO 부모글 번호 number 10 N N 0 5 title 글 제목 varchar..

Chap 17 모델2 방식으로 효율적으로 개발하기 -1

17.1 웹 애플리케이션 모델 17.2 MVC 디자인 패턴 17.3 MVC를 이용한 회원관리 17.4 모델2로 답변형 게시판 구현하기 17.1 웹 애플리케이션 모델 666p 지금의 웹 애플리케이션 개발은 일반적으로 많이 사용하는 표준화 소스 구조를 만들어 개발을 진행함. 이러한 표준화된 소스 구조를 웹 애플리케이션 모델이라고 함. 웹 애플리케이션 모델에는 모델1과 모델2 방식이 있음. 모델1 방식 여태까지 jsp 실습 예제를 구현한 방식이 모델1 방식임. 비즈니스 로직 작업과 그 작업결과를 나타내주는 작업을 동일한 JSP에서 수행함. 즉, 모든 클라이언트의 요청과 비즈니스 로직 처리를 JSP가 담당하는 구조임. 브라우저 ↔ [ JSP - 화면기능 로직 처리 ↔ DAO 클래스 ] ↔ 데이터베이스 기능 구현..

Chap 16 HTML5와 제이쿼리

16.1 HTML5 주요 개념 16.2 HTML5 시맨틱 웹을 위한 구성 요소 16.3 제이쿼리 주요 개념 16.4 제이쿼리의 여러 가지 기능 16.5 제이쿼리 Ajax 기능 16.6 제이쿼리에서 JSON 사용하기 16.1 HTML5 주요 개념 622p 웹 브라우저는 html, css, 자바스크립트로 이루어진 구문만 인식하여 화면에 나타냄, jsp는 html을 좀 더 동적으로 구현하기 위해 도입된 기능임 html 기능도 꾸준이 업그레이드 되었고, 최신 버전은 html5임 16장에서는 jsp에서 사용되는 html5의 기능과 자바스크립트 기반의 제이쿼리(jQuery)에 대해 살펴보자. html5는 기존 html4에서는 지원하지 않았던 동영상, 오디오 기능, 지리 위치 정보 등을 지원, 플러그인 별도 설치 없..

Chap 15 JSP 페이지를 풍부하게 하는 오픈 소스 기능

15.1 JSP에서 파일 업로드 (606p) 15.2 JSP에서 파일 다운로드 (615p) 15.1 JSP에서 파일 업로드 606p 여태까지는 JSP와 직접 관련 있는 기능들에 대해 알아보았음 JSP는 대부분의 기능을 오픈소스로 제공함 파일 업로드, 파일 다운로드, 이메일 등 수많은 오픈 소스 라이브러리를 제공함 * 서블릿3.0 환경에서는 Part API 제공, 이를 이용해 파일 업로드 구현, 이전 버전에서는 Apache Commons의 FileUpload 라이브러리를 많이 사용함 FileUpload 라이브러리 설치 (Apache Commons는 Apache Jakarta project의 일부로, java 환경에서 공통적으로 사용되는 코드 모음(라이브러리)를 개발하여 오픈소스로 배포하는 프로젝트임) Ap..