JSP & Servlet/실습

    [JSP & Servlet] 쇼핑몰 (오늘 본 상품 & 장바구니) - DAO

    📌SQL 구문을 전송하는 클래스 ClothesDAO.java package dao; import static db.JdbcUtil.*; import java.sql.*; import java.util.ArrayList; import vo.Clothes; public class ClothesDAO { Connection con; private static ClothesDAO clothesDAO; private ClothesDAO() { } public void setConnection(Connection con){ this.con = con; } public static ClothesDAO getInstance(){ if(clothesDAO ==null){ clothesDAO = new ClothesDAO..

    [JSP & Servlet] 쇼핑몰 (오늘 본 상품 & 장바구니) - Service

    각 클라이언트의 요청을 처리하는 실질적인 비즈니스 로직이 구현되는 곳이다. 📌상품 등록 요청 처리 비즈니스 로직 ClothesRegistService.java package service; import static db.JdbcUtil.*; import java.sql.Connection; import dao.ClothesDAO; import vo.Clothes; public class ClothesRegistService { public boolean registDog(Clothes cloth) { ClothesDAO clothesDAO = ClothesDAO.getInstance(); Connection con = getConnection(); clothesDAO.setConnection(con); ..

    [JSP & Servlet] 쇼핑몰 (오늘 본 상품 & 장바구니) - Action

    ShopFrontController에서 전송된 요청을 파악하여 각 요청을 처리하는 Action 클래스 객체의 exeucte 메소드를 호출하게 된다. 📌상품 등록 페이지를 보여달라는 요청 처리 ClothesRegistFormAction.java package action; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import vo.ActionForward; public class ClothesRegistFormAction implements Action { @Override public ActionForward execute(HttpServletRequest request, Http..

    [JSP & Servlet] 쇼핑몰 (오늘 본 상품 & 장바구니) - controller

    앞서 FrontController 패턴으로 구현한다 하였다. 따라서 이 어플리케이션의 모든 웹 요청은 controller에서 정의한 servlet으로 요청이 된다. 즉 모든 요청이 이 부분에서 제어가 된다. 📌ShopFrontController.java package controller; import java.io.IOException; import javax.servlet.RequestDispatcher; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; ..

    [JSP & Servlet] 쇼핑몰 (오늘 본 상품 & 장바구니) - 테이블 생성 및 vo(Value Object) + 기본 세팅

    바로 전 [로그인 만들기]때는 클라이언트의 요청을 서블릿에서 바로 받는 기본 형태의 모델 2 구조로 구현해보았다. 이번에는 [게시판 만들기]를 할 때와 같이 FrontController 서블릿을 사용하여 FrontController 패턴을 사용해보도록 하겠다. 📌테이블 생성 CREATE TABLE shop( id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(100) NOT NULL, price INT NOT NULL, image VARCHAR(20) NOT NULL, size VARCHAR(6) NOT NULL, content VARCHAR(400), readcount INT ) START TRANSACTION INSERT INTO shop(name, price, im..

    [JSP & Servlet] 로그인 (feat. 세션 & 쿠키) - controller / service

    📌로그인 컨트롤러 LoginServlet.java package controller; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.RequestDispatcher; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.Cookie; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; impor..

    [JSP & Servlet] 로그인 (feat. 세션 & 쿠키) - View / DAO

    📌index.jsp 사용자가 처음으로 접하는 페이지 index.jsp 페이지를 실행하면 "/login" 서블릿을 매핑하는 서블릿으로 포워딩 한다. 통상적으로 index.jsp를 사용자가 맨 처음 실행했을때 접하는 페이지로 많이 사용한다. 📌로그인 폼 loginForm.html 로그인 아이디 : 비밀번호 : 자동 로그인: 📌로그인 성공/실패 loginSuccess.jsp 사용자 정보 이름 : 나이 : 주소 : 이메일 : loginFail.jsp 로그인실패 📌DB작업 시 반복적 수행을 편하게 해주기 위해 만든 파일 JdbcUtil.java package db; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSe..

    [JSP & Servlet] 로그인 (feat. 세션 & 쿠키) - 테이블 생성 및 vo(Value Object)

    로그인 구현에서는 게시판과는 다르게 FrontController 서블릿을 사용하지 않고 클라이언트의 요청을 서블릿에서 바로 받는 기본 형태의 모델 2 구조로 구현해보도록 하겠다. 📌테이블 생성 CREATE TABLE members( id VARCHAR(12) PRIMARY KEY, passwd VARCHAR(12), addr VARCHAR(50), age INT, email VARCHAR(30), gender CHAR(1), name VARCHAR(12), nation VARCHAR(16) ); START TRANSACTION; INSERT INTO users VALUES('java','java','서울특별시',30,'java@gmail.com','M','김자바','대한민국'); COMMIT; users..