전체 글 95

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..

Chap 14 표현 언어와 JSTL -3

14.7 Core 태그 라이브러리 실습 예제 로그인 예제 569p [ login.jsp ] 로그인창, id와 pwd 입력받음 [ result.jsp ] 로그인창에서 id를 입력한 경우와 입력하지 않은 경우를 태그를 이용해 각 다른 화면을 출력하도록함 // empty 연산자로 id가 null이나 빈문자열인지 체크 아이디를 입력하세요 로그인창 // id를 정상입력 했다면 환영합니다. 님 [ result2.jsp ] 이번에는 이중조건문을 구현하여 admin으로 로그인 시 관리자 화면을 출력하도록 해보자 ... 아이디를 입력하세요 로그인창 // id를 정상입력하여 로그인했는데 // 그 아이디가 admin이면 // 회원정보 수정, 삭제 등 버튼이 화면에 출력되도록 함 // 입력한 id가 admin이 아니면 .....

Chap 14 표현 언어와 JSTL -2

14.4 커스텀 태그 544p 액션태그나 표현언어를 사용하더라도 조건식이나 반복문에서는 여전히 자바 코드를 사용하고 있음 이러한 자바코드를 제거하기 위해 JSTL이나 커스텀 태그가 등장함 커스텀태그 : JSP 페이지에서 자주 사용하는 자바코드를 대체하기 위해 만든 태그 커스텀 태그의 종류 -JSTL(JSP Standard Tag Library) : jsp 페이지에서 가장 많이 사용하는 기능을 태그로 제공함. jstl 라이브러리를 따로 설치해서 사용해야함 -개발자가 만든 커스텀 태그 : 개발자가 필요에 의해 만든 태그. 스트러츠나 스프링 프레임워크에서는 프레임워크 기능과 편리하게 연동할 수 있도록 미리 태그를 만들어서 제공하기도 함 14.5 JSP 표준 태그 라이브러리 (JSTL) 545p jstl이란 커..

Chap 14 표현 언어와 JSTL -1

14.1 표현 언어란? 508p jsp의 발전 과정 초기-html 태그를 중심으로 자바를 이용해 화면을 구현했음 -> 요구사항이 복잡해지며 자바코드를 대체하는 액션태그가 등장함 ->jsp 2.0에서는 스크립트 요소보다 표현언어와 JSTL을 사용해서 구현함 표현언어(EL, Expression Language)는 자바코드가 들어가는 표현식을 좀더 편리하게 사용하기 위해 jsp 2.0부터 도입된 데이터 출력 기능임. 표현식의 자바코드가 복잡해짐에 따라 자바코드로 출력하는 표현식을 대체하기 위해 표현언어가 등장했음. *** JSP 페이지에서 표현언어를 사용하려면 페이지 디렉티브 태그의 isELIgnored 속성을 "false"로 설정해야함 - 표현언어의 특징 기존 표현식보다 편리하게 값을 출력함 변수와 여러가지..

Chap 13 자바 코드를 없애는 액션 태그

472p 처음 jsp가 등장한 것은 디자이너가 자바 코드를 사용하지 않고도 화면을 구현할 수 있도록 하기 위함이었음 그러나 화면이 점차 복잡해지며 html 코드에 자바 코드를 같이 써야하는 문제로 어려움을 겪게됨 => jsp는 스크립트릿의 자바 코드를 제거하여 스크립트 형태로 기능을 제공하게 되었고, 액션 태그들로 자바 코드를 대신하게 되었음 ▼JSP의 여러 가지 액션 태그 이름 형식 설명 인클루드 액션 태그 이미 있는 jsp를 현재 jsp에 포함하는 태그 포워드 액션 태그 서블릿에서 RequestDispatcher 클래스의 포워딩 기능을 대신하는 태그 유즈빈 액션 태그 객체를 생성하기 위한 new 연산자를 대신하는 태그 셋프로퍼티 액션 태그 setter를 대신하는 태그 겟프로퍼티 액션 태그 getter..