JAVA - 23

Date:     Updated:

카테고리:

태그:

img

Welcome01.jsp

  1. 디렉티브:
    첫 번째 줄은 페이지 언어를 Java로, 콘텐츠 유형을 HTML로 설정하며, UTF-8 문자 인코딩을 사용합니다. 두 번째 줄은 날짜와 관련된 작업을 위해 java.util.Date 클래스를 가져옵니다.
  2. HTML 구조:
    코드에는 <head>와 <body> 섹션이 포함되어 있습니다. Bootstrap 4 CSS 스타일시트를 CDN(콘텐츠 전송 네트워크)에서 가져옵니다. 페이지 제목은 “Welcome”으로 설정됩니다.
  3. JSP 스크립틀:
    스크립틀은 <%!로 시작하여 %>로 끝납니다. greeting과 tagline이라는 두 개의 문자열 변수를 선언하고, 환영 메시지 문자열을 저장합니다.
  4. Jumbotron:
    Jumbotron은 콘텐츠를 강조하기 위해 사용되는 Bootstrap 구성 요소입니다. greeting 변수의 값을 갖는 <h1> 제목을 포함합니다.
  5. 컨테이너 및 제목:
    Jumbotron 내부에 또 다른 컨테이너가 생성되어 태그라인 제목을 보유합니다. tagline 변수가 <h3> 제목으로 표시됩니다.
  6. 날짜와 시간 표시:
    스크립틀(<%)은 JSP 내에서 Java 코드를 실행하기 위해 사용됩니다. java.util.Date 클래스를 사용하여 현재 날짜와 시간을 얻습니다. 코드는 현재 시간, 분 및 초를 계산하고 AM 또는 PM인지 확인합니다. 시간은 out.println() 메서드를 사용하여 표시됩니다.
  7. 포함된 JSP 파일:
    이 JSP는 “Products.jsp”와 “footer.jsp”라는 두 개의 추가 파일을 포함합니다. “Products.jsp”의 내용은 주요 JSP에 <%@ include file=”./Products.jsp”%>를 사용하여 포함됩니다. 마찬가지로 “footer.jsp”의 내용은 <%@ include file=”./footer.jsp”%>를 사용하여 포함됩니다.

Products.jsp

  1. 디렉티브:
    • 첫 번째 줄은 페이지 언어를 Java로 설정하고, 콘텐츠 유형을 UTF-8로 설정합니다.
    • 두 번째 줄에서는 ArrayList 클래스와 Product 클래스를 import합니다.
  2. JSP: <jsp:useBean> 태그를 사용하여 productDAO라는 이름의 세션 범위의 JavaBean을 사용합니다. 해당 JavaBean은 com.example.data_Access_Object.ProductRepository 클래스의 인스턴스입니다.
  3. HTML 구조:
    • HTML 구조를 정의하는 <html>, <head>, <body> 태그가 포함됩니다.
    • Bootstrap 4의 스타일시트를 사용하기 위해 CDN을 통해 스타일시트를 불러옵니다.
    • 페이지의 제목은 “상품 목록”으로 설정됩니다.
  4. 메뉴 포함:
    • “menu.jsp” 파일의 내용은 <%@ include file="./menu.jsp" %>를 사용하여 포함됩니다.
  5. Jumbotron:
    • Jumbotron은 특정 내용을 강조하기 위해 사용되는 Bootstrap 컴포넌트입니다.
    • <h1> 태그 내에 “상품 목록”이 출력됩니다.
  6. 상품 목록 표시:
    • productDAOgetAllProducts() 메서드를 호출하여 모든 상품을 가져옵니다.
    • listOfProducts 변수에 결과를 저장합니다.
  7. 반복문을 사용하여 상품을 표시:
    • listOfProducts에 저장된 각 상품에 대해 반복문을 실행합니다.
    • product 변수를 사용하여 각 상품의 정보에 접근합니다.
    • 상품 이름, 설명, 가격을 출력합니다.
    • “Product.jsp” 페이지로 상세 정보를 표시하는 링크를 제공합니다.

Product.jsp

디렉티브: 페이지 언어를 Java로 설정하고, 콘텐츠 유형을 UTF-8로 설정합니다. com.example.data_Transfer_Object.Product 클래스를 import합니다. 세션 범위에서 사용할 productDAO라는 이름의 JavaBean을 정의합니다.

HTML 구조: HTML 구조를 정의하는 <html>, <head>, <body> 태그가 포함됩니다. Bootstrap 4의 스타일시트를 사용하기 위해 CDN을 통해 스타일시트를 불러옵니다. 페이지의 제목은 “상품정보”로 설정됩니다.

메뉴 포함: “menu.jsp” 파일의 내용은 <%@ include file=”menu.jsp” %>를 사용하여 포함됩니다. Jumbotron: Jumbotron은 특정 내용을 강조하기 위해 사용되는 Bootstrap 컴포넌트입니다. ‘<h1>‘태그 내에 “상품 정보”가 출력됩니다.

상품 정보 표시: request.getParameter(“id”)를 사용하여 “id” 파라미터 값을 가져옵니다. 이는 상품의 고유 식별자입니다. productDAO의 getProductById() 메서드를 호출하여 해당 식별자에 해당하는 상품을 가져옵니다. product 변수에 결과를 저장합니다. 상품의 이름, 설명, 상품 코드, 제조사, 분류, 재고, 가격 등을 출력합니다. 상품 주문 및 상품 목록 링크:

“상품 주문”과 “상품 목록”으로 이동하는 링크를 제공합니다.

하단 포함: “footer.jsp” 파일의 내용은 <%@ include file=”footer.jsp” %>를 사용하여 포함됩니다.


data_Access_Object.ProductRepository.java

  1. 클래스 정의:
    • ProductRepository 클래스를 정의합니다.
    • listOfProducts라는 이름의 ArrayList<Product> 객체를 선언하여 통합 저장소 컬렉션 리스트를 생성합니다.
  2. 생성자:
    • ProductRepository 클래스의 생성자를 정의합니다.
    • 생성자 내에서는 세 가지 상품에 대한 정보를 가지고 Product 객체를 생성하고, 각 객체에 데이터를 저장합니다.
    • 생성한 Product 객체를 listOfProducts에 추가합니다.
  3. getAllProducts() 메서드:
    • 통합 저장소에 저장된 모든 상품 데이터를 반환하는 메서드입니다.
    • listOfProducts를 반환합니다.
  4. getProductById(String productId) 메서드:
    • 상품의 아이디를 기반으로 상품의 상세 정보를 가져오는 메서드입니다.
    • productId를 매개변수로 받아 해당 아이디와 일치하는 상품을 찾습니다.
    • listOfProducts를 반복하여 상품의 아이디와 일치하는 상품을 찾고, 해당 상품을 반환합니다.
    • 일치하는 상품이 없는 경우 null을 반환합니다.

data_transfer_Object.Product.java

  1. Product 클래스 정의:
    • Product 클래스는 Serializable 인터페이스를 구현합니다. 이는 객체를 직렬화할 수 있도록 합니다.
    • private 접근 제한자를 사용하여 클래스의 필드들을 선언합니다.
    • 필드들은 상품의 아이디(productId), 상품명(pname), 상품가격(unitPrice), 상품설명(description), 제조사(manufacturer), 분류(category), 재고수(unitsInStock), 상품 상태(condition)를 나타냅니다.
  2. 생성자:
    • Product 클래스에는 기본 생성자(Product())와 매개변수를 받는 생성자(Product(String productId, String pname, Integer unitPrice))가 정의되어 있습니다.
  3. Getter와 Setter 메서드:
    • 필드에 접근하기 위한 Getter와 Setter 메서드들이 정의되어 있습니다.
    • 자동으로 생성되는 Getter와 Setter 메서드는 get 또는 set 접두사를 사용하여 필드의 값을 반환하거나 설정합니다.
  4. serialVersionUID :
    • serialVersionUID는 직렬화된 객체의 버전을 식별하는 데 사용되는 고유 식별자입니다.

java 카테고리 내 다른 글 보러가기

댓글 남기기