본문 바로가기

전체 글

(263)
[JAVA]15. 게시판 작성 화면 구현 : JSP 입력 폼(form) 구성 [목차]1. JSP 입력 폼(form) 구성 소개2. 글 입력 및 전송 영역 : 태그 2-1. 태그란? 2-2. 기본 코드 형식3. 태그 3-1. 태그란? 3-2. 코드 예시4. 태그 4-1. 태그란? 4-2. 코드 예시5. 태그 5-1. 태그란? 5-2. 코드 예시6. 최종 코드 정리 1. JSP 입력 폼(form) 소개지난 글에서는 게시판의 전체 화면을 구역별로 나누기 위해 태그를 활용하는 방법을 살펴보았습니다. 태그가 게시판 화면의 틀을 만들어 주는 역할을 한다면,이번 글에서 다룰 입력 폼(form)은 그 틀 안에 실제 데이터를 입력하고 전송하는 기능을 담당합니다. 예를 들어, 게시판에 글을 작성할 때 필요한 요소들을 떠올려봅시다.글 제목을..
[JAVA]14. 게시판 작성 화면 구현 : 영역 나누기(div) [ 목차 ]1. 글쓰기 화면 (write.jsp) 1-1. 글쓰기 화면의 역할 1-2. 글쓰기 화면에서 작성할 내용2. 화면 영역 나누기 : 태그 2-1. 태그란? 2-2. 코드 예시 2-3. 적용된 화면3. 마무리 1. 글쓰기 화면이전 글에서는 게시판 목록 화면을 구현해보았습니다.이번 글에서는 사용자가 직접 글을 작성할 수 있는 글쓰기 화면을 만들어보겠습니다. 이 화면은 게시판의 핵심 기능으로, 글을 작성하고 등록하는 과정이 이루어지는 곳입니다. 1-1. 글쓰기 화면의 역할글쓰기 화면은 게시판에서 새로운 글을 시작하는 출발점입니다.여기서 필요한 내용들을 입력하면서 글을 등록할 준비를 하게 됩니다.완성된 글은 이후 목록 화면에서 확인할 수 있으며, 필요하다면 수정하거나 삭제..
[JAVA]13. 게시판 작성 화면 구현 : 테이블 구조 수정 [ 목차 ]1. 테이블 구조 수정의 이유2. 테이블 구조의 비교 2-1. 기존 테이블 구조 2-2. 변경된 테이블 구조3. 워크벤치를 통한 쿼리 추출 3-1. 쿼리 추출 옵션 설정4. 쿼리 실행 및 결과 확인 1. 테이블 구조 수정의 이유간단하고 빠르게 CRUD 기능을 구현하려고 하니, 로그인과 회원가입 기능은 굳이 필요 없다고 판단했습니다.따라서 불필요한 테이블이나 컬럼을 제거하고 꼭 필요한 부분만 남기는 방향으로 테이블 구조를 수정했습니다. 2. 테이블 구조의 비교2-1. 기존 테이블 구조먼저 기존 테이블 구조입니다. 2-2. 변경된 테이블 구조다음은 수정 후 테이블 구조입니다. 💡 이미 만들었던 ERD를 다시 열고 싶다면 상단 메뉴의 File > Open Model 을 눌러 ..
[JAVA]12. 게시판 목록 화면 구현 : 테이블과 forEach를 활용한 게시글 출력 [ 목차 ]1. 게시판 목록 화면 1-1. 게시판 목록을 표로 구성하는 이유2. 게시판 표 기본 구성 2-1. 표 제목 만들기 : 태그 2-2. 게시글 데이터의 반복 출력 : + forEach3. 게시글이 없을 때 표시하기 3-1. 빈 목록 안내 메시지 구현 : 태그4. 마무리 1. 게시판 목록 화면이전 글에서는 제목 태그(, )를 사용해 페이지의 기본 제목을 구성하는 방법을 다뤘습니다. https://silverji.tistory.com/262 [JAVA]11. 게시판 목록 화면 구현 : 제목 태그(title, h2)[ 목차 ]1. 게시판 목록 화면 1-1. 게시판 목록 화면의 역할2. 페이지 기본 제목 구성 2-1. 브라우저 탭 제목 : 태그 2-2. 페이지 내 메인 제목 ..
[JAVA]11. 게시판 목록 화면 구현 : 제목 태그(title, h2) [ 목차 ]1. 게시판 목록 화면 1-1. 게시판 목록 화면의 역할2. 페이지 기본 제목 구성 2-1. 브라우저 탭 제목 : 태그 2-2. 페이지 내 메인 제목 : 태그3. 마무리 1. 게시판 목록 화면이번 글에서는 CRUD 게시판 중에서 Read(읽기) 기능을 담당하는 게시판 목록 화면을 구현해보겠습니다. 목록 화면은 사용자가 게시판에 접속했을 때 가장 먼저 보게 되는 페이지로,등록된 게시글들의 제목, 작성자, 작성일 등 기본 정보를 한눈에 확인할 수 있는 페이지라고 보시면 됩니다. 1-2. 게시판 목록 화면의 역할저희가 구현할 게시판 목록 화면은 다음과 같은 역할을 합니다.데이터베이스에서 게시글 목록을 조회해 사용자에게 보여줍니다.게시글 제목을 클릭하면 해당 게시글의 상세 페이지로..
[Oracle] LISTAGG - 여러 행을 한 줄로 합치기 1. LISTAGG 함수란?2. 기본 사용법3. 주의할 점4. 요약 정리 1. LISTAGG 함수란?LISTAGG 함수는 여러 줄로 나뉜 데이터를 한 줄로 이어서 보여주고 싶을 때 사용하는 Oracle의 집계 함수입니다. 예를 들어, 같은 부서에 속한 직원 이름들을 쉼표로 연결해 한 문장으로 보여주고 싶을 때 사용합니다. 아래와 같은 데이터가 있다고 가정해봅시다.부서명이름영업부철수영업부영희영업부민수 이 데이터를 부서별로 모아서 보여주고 싶다면, LISTAGG 함수를 사용해서 이런 결과를 만들 수 있습니다. 영업부 : 철수, 영희, 민수 LISTAGG 함수는 여러 줄을 한 줄로 압축해서 원하는 구분자로 연결해주는 것이 핵심적인 기능입니다.2. 기본 사용법기본 문법은 이렇습니다. SELECT 부서명, ..
[JAVA]MyBatis DTD 오류 해결법 : DTD 리소스 로드 실패 시 대처법(Eclipse) 목차1. 오류 발생 배경2. 해결 방법 2-1. Eclipse 에서 외부 DTD 다운로드 설정 확인3. 마무리 및 정리 1. 오류 발생 배경CRUD 게시판 기능을 개발하던 중, 예상치 못한 오류가 발생했습니다.기능을 넣은 버튼을 클릭하면 아래와 같은 에러가 발생하며 프로그램이 정상적으로 작동하지 않은 것입니다. Could not find resource mybatis-config.xml 처음에는 경로 문제나 파일 누락을 의심했지만, 확인 결과 mybatis-config.xml 파일은 정상적인 위치에 존재하고 있었습니다. 확인해보니 XML 파일 상단에 DTD 선언부를 추가했을 때 문제가 발생한다는 사실을 알 수 있었습니다. 이 선언부를 삽입하자마자 Eclipse 상에서 빨간 줄이 생기며 에러가 발생..
[JAVA]10. MySQL Workbench를 활용한 ERD 기반 테이블 설계 목차1. 프로젝트 개요2. ERD 모델링 및 테이블 설계 2-1. 새 모델 생성 및 다이어그램 추가 2-2. 테이블 추가 및 컬럼 정의 - 사용자 테이블 (BOARD_USER_TB) - 게시글 테이블 (BOARD_POST_TB) - 댓글 테이블 (BOARD_COMMENT_TB) 2-3. 기본 키(PK), 외래 키(FK) 설정3. 쿼리 추출 및 실행 3-1. Forward Engineer로 쿼리 추출 3-2. 추출된 쿼리 실행 (테이블 생성) 3-3. SQL 파일 저장 1. 프로젝트 개요이번 글에서는 MySQL Workbench를 사용해 ERD를 그리고, 그 결과를 바탕으로 SQL 쿼리를 추출하여 실제 테이블을 생성하는 과정을 다뤄보겠습..