JSP 게시판, 웹 사이트 개발 및 파일 업로드 — 『JSP 게시판 만들기, 웹 사이트 개발하기, 파일 업로드』

2025. 9. 7. 20:59·도서리뷰/전공

책 한눈에 보기

항목 내용
도서명 JSP 게시판 만들기, 웹 사이트 개발하기, 파일 업로드
저자 동빈나
키워드 JSP, 웹사이트 개발, 파일 업로드, DAO, 세션, 보안, Bootstrap, MySQL


1. JSP 게시판 만들기

  • JSP는 서버 프로그래밍 언어로, 홈페이지의 게시판, 로그인, 회원가입 기능 등을 구현할 때 널리 활용됨.
  • JSP 사용 전에는 JDK 설치 및 환경 변수 세팅이 필수이며, 서버로는 TOMCAT이 대표적.
  • 개발 환경은 보통 이클립스(Eclipse)를 많이 사용하며, 변수 선언 후 자동 함수 생성 기능 등을 제공.
  • DAO(Data Access Object)는 데이터베이스 접근을 위한 객체로, 데이터 관리의 핵심 구조임.
  • 데이터 처리 기법으로 자바빈즈(JavaBeans)를 활용할 수 있으며, 이는 재사용성을 높여줌.
  • 세션(Session)은 접속한 회원에게 고유한 ID를 할당하며, session.setAttribute로 관리 가능.
  • 게시판 메인에서 게시글 목록을 출력할 때는 include 지시자를 통해 구현.
  • 웹 호스팅 서버와 JDK 버전은 반드시 호환성을 맞춰야 오류를 방지할 수 있음.
  • SQL 실행은 String SQL 문장을 이용하며, 삭제 기능도 UPDATE문을 활용하면 추후 로그 추적에 용이함.

2. JSP 웹 사이트 개발하기

  • 개발 전 프레임워크와 라이브러리를 통해 기본적인 틀을 구성해야 효율적임.
  • MySQL 예약어 LIKE 충돌을 피하기 위해 추천 테이블명을 LIKEY로 지정.
  • getUserEmail()은 사용자 ID로 이메일을 조회해 문자열로 반환하는 함수.
  • JSP와 MySQL 연결에는 JDBC 드라이버를 프로젝트에 추가해야 함.
  • UI 구성 시 Bootstrap의 modal을 활용해 상호작용 창을 구현 가능.
  • 보안 위협으로는 XSS 공격이 있으며, 이를 막기 위해 replaceAll로 위험 문자열을 치환하는 방법이 사용됨.
  • Bootstrap은 내부적으로 Popper.js와 jQuery를 기반으로 동작하므로, 해당 라이브러리 사용 이해가 필요.

3. JSP 파일 업로드

  • JSP에서 파일 업로드 기능을 구현하려면 COS 라이브러리가 필요.
  • SQL의 ? 기호는 PreparedStatement의 파라미터 바인딩을 의미함.
  • com.oreilly.servlet.multipart.DefaultFileRenamePolicy 클래스는 업로드 시 파일 이름 중복을 자동으로 해결.
  • com.oreilly.servlet.multipart.MultipartRequest 클래스는 실제 파일 업로드 기능을 수행.
  • Application 내장 객체는 전체 프로젝트 자원을 관리하며, 서버 실제 경로에서 자원 탐색 시 유용.
  • 파일 전송에는 이진 데이터 형식의 octet-stream MIME 타입이 주로 사용됨.

💡 Quick Insight

  • JSP 게시판 개발 핵심: DAO + 세션 + include 지시자
  • 웹 개발 시 필수 고려 요소: 프레임워크/라이브러리/보안
  • 파일 업로드: COS 라이브러리 + DefaultFileRenamePolicy + MultipartRequest
  • 보안 관점: XSS 예방 및 버전 호환성 확인
  • JSP 학습은 단순한 코드 작성이 아니라 환경 세팅 + 보안 습관까지 포함해야 함

마무리 생각

웹 사이트를 개발하는 과정에서는 단순히 JSP만이 아니라 웹 서버, DB, 보안, 라이브러리까지 폭넓은 고려가 필요하다.
게시판 하나를 만들더라도 JSP, MySQL, Tomcat 등 다양한 환경 설정과 버전 호환성을 체크해야 하며,
보안 측면에서는 반드시 시큐어 코딩이 전제되어야 한다.
이 책은 단계별로 구체적인 기능만 구현해도 전체 구조를 이해하기 쉽게 설계되어 있어 학습에 적합했다.

'도서리뷰 > 전공' 카테고리의 다른 글

DB 성능 최정화를 위한 SQL 실전 가이드 — 『SQL 레벨업』  (0) 2025.09.07
네트워크 초보 입문 — 『Network 쉽게, 더 쉽게』  (0) 2025.09.07
자바스크립트의 동작원리와 구성 — 『JavaScript+jQuery 정복』  (0) 2025.09.07
IT 엔지니어를 위한 네트워크 입문서 — 『IT 엔지니어를 위한 네트워크 입문』  (0) 2025.09.07
폭주하는 ‘가비지컬렉터’를 막고 메모리 누수의 위험에서 IT 세계를 구하라 — 『IT 세계의 괴물들』  (3) 2025.08.16
'도서리뷰/전공' 카테고리의 다른 글
  • DB 성능 최정화를 위한 SQL 실전 가이드 — 『SQL 레벨업』
  • 네트워크 초보 입문 — 『Network 쉽게, 더 쉽게』
  • 자바스크립트의 동작원리와 구성 — 『JavaScript+jQuery 정복』
  • IT 엔지니어를 위한 네트워크 입문서 — 『IT 엔지니어를 위한 네트워크 입문』
coco dev
coco dev
coffee-code 님의 블로그 입니다.
  • coco dev
    Coffee & Code
    coco dev
  • 전체
    오늘
    어제
    • 분류 전체보기 (25)
      • 도서리뷰 (25)
        • 일반 (7)
        • 전공 (18)
      • 항해99 (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    계산량 분석
    css
    php
    초개체 사회
    알고리즘 입문
    개미 생태계
    Order 표기법
    자바스크립트
    html
    순차검색 이진검색
    머신러닝
    라우팅
    데이터베이스
    네트워크 계층 구조
    웹개발
    개미 연구
    vlan
    개미사회 경제 문화 정치
    DOM
    페로몬 소통
    TCP/IP 기초
    BOM
    프론트엔드
    네트워크 보안
    라우터
    웹표준
    스위치
    방화벽
    MySQL
    JavaScript
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
coco dev
JSP 게시판, 웹 사이트 개발 및 파일 업로드 — 『JSP 게시판 만들기, 웹 사이트 개발하기, 파일 업로드』
상단으로

티스토리툴바