Web/게시판 만들기

Web/게시판 만들기

[Spring Boot] 게시판 만들기 00 - 환경 설정

환경 설정 프로젝트 생성 Spring은 설치되어 있다고 가정합니다. (이클립스에서 Spring 설치하기) 스프링 프로젝트 생성을 먼저 하겠습니다. Spring Starter Project로 생성합니다. 프로젝트 이름을 작성하고, Package는 com.example.coupon으로 해주었습니다. Next를 클릭하여 필요한 Dependcy 설정을 해줍니다. Spring Boot DevTools : 코드 변경 시 서버 재시작을 자동으로 해줍니다. Lombok : Getter, Setter, 생성자 생성을 도와주는 라이브러리인데 필수적이진 않으나 편리합니다. Validation : 유효성 검증을 위한 것입니다. 이 외의 것들은 Web, 데이터베이스 관련입니다. 데이터베이스는 MySQL을 사용할 것이고, MyB..

Web/게시판 만들기

[JSP] 게시판 만들기 07 - 글 삭제 구현

글 삭제 구현 지금까지 만든 게시판은 보안 요소가 전혀 없는 게시판이었습니다. 그래서 글 삭제 부분도 보안 요소는 없습니다(?) 글 삭제는 DELETE 쿼리만 실행하면 되기 때문에 엄청나게 간단합니다. Controller case "/deleteOk.do": command = new DeleteCommand(); command.execute(request, response); viewPage = "deleteOk.jsp"; break; } 삭제 기능은 write나 update 같은 입력 폼이 필요하지 않으므로 deleteOk.do 만 사용합니다. DeleteCommand package com.command; import java.sql.SQLException; import javax.servlet.htt..

Web/게시판 만들기

[JSP] 게시판 만들기 06 - 글 수정 구현

글 수정 구현 하나둘씩 기능을 만들어갈수록 새로 구현하는 기능들이 처음부터 끝까지 다 다른 내용이 아니라, 기존에 구현한 내용들과 어느 정도 유사성을 가진다는 것을 알 수 있습니다. 어떻게 보면 수정 시 필요한 jsp 파일들은 view.jsp와 write.jsp, writeOk.jsp를 섞어놓은 것이라고 볼 수 있습니다. BookController case "/update.do": command = new SelectCommand(); command.execute(request, response); viewPage = "update.jsp"; break; case "/updateOk.do": command = new UpdateCommand(); command.execute(request, respons..

Web/게시판 만들기

[JSP] 게시판 만들기 05 - 글 읽기와 조회수 증가 구현

글 읽기와 조회수 증가 구현 list.do에 있는 목록 중 하나를 클릭 시 해당 글을 상세 보기 하는 기능을 만듭니다. 이때 글을 클릭해서 볼 때마다 조회수도 1 증가시킵니다. 조회수 증가라함은 거창하게 보일 수도 있지만 사실 UPDATE문 하나만 사용하면 됩니다. 😏 view를 위한 SELECT문과 조회수 증가를 위한 UPDATE 문 각각 한 개씩 필요하게 됩니다. Controller case "/view.do": command = new ViewCommand(); command.execute(request, response); viewPage = "view.jsp"; break; ViewCommand package com.command; import java.sql.SQLException; impor..

Web/게시판 만들기

[JSP] 게시판 만들기 04 - 글쓰기 구현

전체 글 목록보기 기능에 이어 글 작성 기능을 구현할 것입니다. 글 작성 기능은 글 수정 기능과 매우 유사하기 때문에 작성 기능만 완료하면 수정 기능도 금방 만들 수 있습니다. 글 작성 구현 Controller case "/write.do": viewPage = "write.jsp"; break; case "/writeOk.do": command = new WriteCommand(); command.execute(request, response); viewPage = "writeOk.jsp"; break; Controller 부분의 write.do와 writeOk.do 부분에는 위와 같이 작성합니다. write.do에서는 form 부분만 작성하고, form에서 입력받은 데이터를 데이터베이스에 저장하는 것..

Web/게시판 만들기

[JSP] 게시판 만들기 03 - 전체 글 목록 구현

Controller 작성 Controller 작성은 게시판의 기능을 모두 만들어야 하므로 할 일이 많은 부분입니다. 우선 만들어볼 게시판 기본 기능은 아래와 같습니다. 1. 전체 도서 목록 보기 (== 전체 글 목록 보기) 2. 선택한 글 한 개 읽기 (글 상세 보기) 3. 글 작성 4. 글 수정 5. 글 삭제 전체 도서 목록은 list.do로 요청받을 것이고, 글 한 개 읽기는 view.do로 요청받습니다. 글 작성은 write.do로 요청받는데, 글을 작성하는 페이지와 작성한 글을 데이터베이스에 저장하기 위해 넘어가는 페이지가 필요하므로 writeOk.do도 생성합니다. 글 수정 update도 write와 유사합니다. 글 삭제는 글 작성, 글 수정과는 달리 따로 데이터를 입력하는 폼이 필요하지 않으므..

Web/게시판 만들기

[JSP] 게시판 만들기 02 - DTO와 DAO, Controller 생성

MVC2 패턴을 사용할 것이므로 우선 DTO와 DAO를 생성해주겠습니다. MVC2 패턴은 JSP에서 모든 것을 하는 MVC1 패턴과는 달리 Servlet에서 웹 브라우저가 요청하는 것을 처리하므로 유지보수가 쉽고, 코드 가독성도 좋습니다. DTO와 DAO는 MVC에서 M(Model) 부분에 해당합니다. 프로그램의 데이터 부분에 속합니다. DTO (Data Transfer Object) 생성 DAO 등과 연동하여 데이터를 실어나르는 객체로, 필요한 객체 (entity)만큼 작성합니다. VO(Volumne Object)라고도 하는데, VO는 read only/immutable 속성을 가집니다. 웹 개발 시 클래스 필드명, DB 필드명, form의 name명은 일치시켜 주어야 편리합니다. src/main/ja..

Web/게시판 만들기

[JSP] 게시판 만들기 01 - 테이블 생성 및 JUnit을 사용해 데이터 추가

본격적으로 게시판을 만들기 전 게시판에 필요한 테이블을 먼저 생성해보겠습니다. SQL 문을 따로 관리하기 위해 프로젝트 내에 ERD 폴더를 만든 뒤, 폴더 내에 ddl.sql이라는 파일을 생성하였습니다. 처음에 sql 파일을 생성할 때 위의 데이터베이스 그림 옆에 가 떠 있습니다. 를 클릭하면 DBeaver로 연결했던 데이터베이스가 뜹니다. 사용할 데이터베이스를 클릭하고 Select를 누르면 연결이 완료됩니다. 아까와 다르게 boards가 떠 있는 것을 확인할 수 있습니다. 테이블 생성 DROP TABLE IF EXISTS book CASCADE; CREATE TABLE book( bk_uid int PRIMARY KEY auto_increment , bk_title varchar(20) NOT NULL..

Web/게시판 만들기

[JSP] 게시판 만들기 00 - 환경 설정

자바는 JDK 11 버전으로 설치되어있다 가정합니다. JDK 11 설치 및 환경 변수 설정하기 (Click) Java JDK 11 버전 설치 및 환경 변수 설정 벌써 JDK 17 버전까지 나왔네요.. JDK 11 다운로드 오라클 사이트에서 다운로드합니다. 오라클에서 다운로드하기 위해서는 회원가입이 필수이니 계정이 없으시면 만들어주셔야 합니다. https://www.ora mimah.tistory.com IDE : Eclipse IDE for Enterprise Java and Web Developers 웹 개발을 위한 이클립스 설치 (Click) 웹 개발을 위한 이클립스(Eclipse) 설치 Eclipse 다운로드 https://www.eclipse.org/downloads/ 위 홈페이지에 들어가 Don..

밈아
'Web/게시판 만들기' 카테고리의 글 목록