2 분 소요

JSP 페이지 모듈화

  • 액션 태그를 사용해서 화면을 모듈화시켜 코드가 중복되는 것을 방지 할 수 있다.

액션 태그 사용법

  • 사용법

  • 태크 속성 설명

    • page : 포함할 JSP 페이지
    • flush : true 로 설정하면 현재 페이지가 지금까지 버퍼에 저장한 내용을 웹 브라우저로 전송하게 된다. 일단 헤더 정보가 웹 브라우저에 전송이 되고 나면 헤더 정보를 추가해도 결과가 반영되지 않는다. 따라서 일반적으로는 ‘false’로 지정한다.

액션 태그 처리 과정

활용

  • 액션 태그를 만들고 있는 서버에 적용시켰다.
  • 모듈화가 가능하여 코드가 좀 더 깔끔해졌다.

Pasted image 20230503235614

JSP

  • main_page.jsp
  • home.jsp

메뉴 버튼

  • 메인 페이지에 홈 버튼과 게시판 버튼을 만들었다.
    Pasted image 20230503231355
  • Home 버튼을 누르면 로그인하고 접속 하였을 때 가장처음 화면에 나타나는 페이지이다.
  • 게시판 버튼을 누르면 서버에 저장된 게시글들을 확인해 볼 수 있다.

JSP

  • servlet 부터 메뉴 리스트를 받아와 사용하였다.
  • 다음 코드는 메뉴창을 나타내는 부분이다.
  • main_page.jsp

Servlet (Java 코드)

  • 메뉴 servlet 코드에서 메뉴 리스트를 만든 다음 메인 jsp 페이지로 포워딩 해준다.
  • 메인 jsp 페이지 파일에서 메뉴 리스트를 받아 html 파일을 완성 시키고 유저에게 페이지를 보여준다.
  • MainPage.java

게시판

게시판 리스트 확인

  • 게시판 버튼을 누르면 서버에 저장된 모든 글들을 볼 수 있다.
  • 글을 작성한 사람 이름, 글 제목 그리고 글 요약을 살펴볼 수 있다.

Pasted image 20230503235957

JSP

main_page.jsp
  • 액션 태그를 이용하였다.
notice_board.jsp
  • for을 이용하여 servlet 으로 부터 받은 게시판 목록들을 나열하였다.

Servlet

MainPage.java
  • NoticeBoardDAO 클래스를 이용하여 게시판 목록들을 DB 에서 불러왔다. 그리고 배열에 저장해 주었다.
  • setAttribute 를 이용하여 jsp 페이지로 배열을 전달해 주었다.



게시판 글 자세히 읽기

  • 게시판 리스트 중 하나를 클릭하여 들어가면 스스로 작성한 글이나, 다른 사용자가 작성한 글을 읽을 수 있다.
  • 자기 자신이 쓴 글에 들어가면 글 수정을 위한 버튼이 나타난다.

Pasted image 20230504000326 Pasted image 20230504000408

JSP

notice_detail.jsp
  • 액션태그를 사용하였다.
notice.jsp
  • servlet 클래스에서 게시물 정보를 넘겨준다.
  • 게시글 작성자와 현재 접속중인 유저가 동일하면 수정 버튼을 활성화 한다.

Servlet

MainPage.java
  • Get 을 통해 게시글의 sid를 받는다. Get으로 받은 detailid 입력을 가져온다.
  • setAttribute 를 통해 게시글 정보를 jsp 한테 넘겨준다.
  • 게시글 작성자와 현재 접속중인 유저가 동일하면 수정 버튼을 활성화 한다.



게시판 새로운 글 쓰기

  • 게시판에서 글쓰기 버튼을 클릭 하면 글쓰기 페이지가 나온다.
  • 제목 또는 본문 둘중에 하나라도 빈칸이면 저장이 안된다.

Pasted image 20230503231355 Pasted image 20230504003204

JSP

notice_write.jsp
  • 제목과 글을 입력하고 저장 버튼을 눌러주면 POST 방식으로 제목과 글을 서버로 전송한다.
  • 취소 버튼을 누르면 이전 페이지 다시 되돌아 간다.

Servlet

MainPage.java
  • noticeBoardWrite uri 로 접속하면 글쓰기 jsp 페이지로 넘어간다.
  • 글쓰기 jsp 페이지로 noticeBoardSave uri를 넘겨준다.
  • 저장 버튼을 눌러 저장을 할 때는 오직 POST 전송일 때만 가능하다.
  • 서버는 제목과 글을 POST 파라미터로 받는다.



DB

게시판 사용자 생성

  • 게시판 글을 저장하기 위한 사용자를 먼저 만들어 주었다.

게시판 테이블 생성

  • 게시판 글을 저장하는 테이블을 만들어 주었다.

게시판 글 올릴 때 사용한 SQL 문

  • 다음 sql 쿼리문을 이용하여 글을 저장하였다.

게시판 글 삭제

  • 키인 sid 를 기준으로 글을 삭제한다.

글을 삭제할 때 조건

  • 관리자는 모든 글을 삭제 가능하다.
  • 사용자는 자기 자신이 쓴 글만 삭제가 가능해야한다.

전체 코드

  • main_page.jsp

발생한 오류

create session 권한 오류

  • 오류 내용
  • 해결법

create table 할 때 부적합한 식별자 오류

  • 오류 내용
  • 해결법

테이블스페이스 오류

  • 오류 내용
  • 해결법

열을 사용할 수 없습니다.

  • 오류 내용
  • 해결법

참고 사이트

댓글남기기