Web

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] 게시판 만들기 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

웹 애플리케이션이란?

웹 애플리케이션 기존의 정적인 웹 애플리케이션의 기능을 그대로 사용하면서 예시로 서블릿(Servlet), JSP, 자바 클래스들을 추가하여 사용자에게 동적인 서비스를 제공하는 서버 프로그램을 말한다. 웹 애플리케이션은 보통 정해진 형식이 있으므로 서비스를 제공할 때도 형식에 맞게 만들어서 제공해야 한다. 또한 웹 애플리케이션은 단독으로 실행할 수 없기 때문에 톰캣과 같은 웹 컨테이너에서 실행되는 구조이다. 컨테이너에서 실행되는 모든 웹 애플리케이션은 웹 애플리케이션의 이름으로 이루어진 루트 디렉터리와 하위 디렉터리 구조를 기본 구조로 가진다. 웹 애플리케이션 기본 구조 웹 애플리케이션 이름 └ WEB-INF └ classes └ lib └ web.xml 위와 같은 구조를 갖추지 않고 컨테이너에서 웹 애플..

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..

Daily/Review

[서평] Do it! 인터랙티브 웹 페이지 만들기

본 글은 서평단에 선정되어 작성하는 글입니다. Do it! 인터랙티브 웹 페이지 만들기 웹 퍼블리싱은 학교에서 강의를 들으며 처음 배웠었고, 코드잇에서 진행되었던 코딩 캠프를 통해서도 복습을 하였었다. 학교에서 배운 내용만을 가지고는 내가 원하는 반응형 웹 페이지를 만들기에 부족함을 많이 느꼈다. 그래서 언제 한 번 제대로 웹 퍼블리싱을 배워보자는 생각을 했었는데, 기회가 되어 코드잇에서 웹 퍼블리싱 부분을 들을 수 있었지만 js부분 이후부터 제대로 들을 시간이 없어서(캠프 기간이 한 달로, 생각했던 것보다 짧기도 했다🙁) 내가 목표하는 바까지는 달성하지 못했었다. 그러다가 항상 눈여겨 보고있던 이지스퍼블리싱 페이스북에서 Do it! 인터랙티브 웹 페이지 만들기 책 서평단을 모집한다는 것을 알게 되었고,..

카테고리 없음

[HTML] <b>와 <strong>, <i>와 <em> 태그의 차이

각각의 두 태그들의 차이는 시맨틱 웹과 연관있다. 태그와 태그 모두 해당 태그에 감싸져있는 부분을 진하게 표시해준다. 태그와 태그는 해당 태그에 감싸져있는 부분을 italic체로 기울여지게 한다. 보통 네 가지 모두 태그 강조하고 싶은 부분을 강조하기 위해 사용한다. 📝 예제 코드 b태그와 strong태그의 차이점 i태그와 em태그의 차이점 📄 결과 겉보기에는 두 태그들의 차이가 없어보인다. 그러나 의미론적으로 차이가 존재한다. 태그는 단순히 글자를 굵게 보이게하는 것에 그친다. 그러나 태그는 글자를 굵게 하는데에 그치지 않고, 태그로 감싸진 내용들이 중요한 내용이라는 것을 브라우저에게 알려주는 역할을 한다. 태그와 태그의 차이도 마찬가지이다. 태그와 태그는 시맨틱 요소로써 의미를 가지게 된다. 시맨틱 ..

Web/HTML & CSS

[HTML] 시맨틱 태그

시맨틱 태그 HTML5에서는 시맨팁 웹을 구현하는 데 필요한 시맨틱 태그를 사용하여 웹 브라우저가 웹 문서를 효율적으로 읽게할 수 있다. 시맨틱 웹이란 검색 엔진 같은 프로그램이 정보를 분석하고, 자료를 검색하거나 처리해서 제공하는 지능형 웹이다. 컴퓨터 프로그램이 코드를 읽고 의미를 인식할 수 있다. 머리말 영역 메뉴 영역 동영상, 사진 등의 멀티미디어를 담는 영역 주로 메인 페이지의 이미지 슬라이더나 인터랙티브한 컨텐츠 영역을 지정한다. 본문으로써 컨텐츠를 담는 영역 메인 페이지뿐만 아닌 서브 페이지에도 중요한 영역을 지정할 때 사용하기 좋다. 본문과의 연관성이 적은 외부 영역 광고나 바로 가기를 지정할 때 사용할 수 있다. 특정 영역을 그룹화 글자가 많이 들어가는 부분으로, 기사나 개별 컨텐츠를 담..

Web/HTML & CSS

[HTML] meta 태그

head 태그 내에서는 웹 문서에 필요한 외부 파일과 옵션을 설정할 수 있다. meta 태그는 웹 페이지에 추가로 전달할 정보를 담을 수 있다. charset 웹 문서의 인코딩 방식을 의미한다. UTF-8은 세계 표준 인코딩 방식으로 한글이 깨지지 않게 하기 위해서는 해당 값으로 설정해주는 것이 좋다. 최신 브라우저

Programing Language/Java

[Java] 웹 사이트 데이터 가져오기

웹 데이터 가져오기 HTML 데이터와 웹 데이터(text)를 가져올 수 있다. 자바에서 웹 연결을 위해서는 두 가지 객체가 필요하다. 1. URL : 웹 상의 주소 2. HttpURLConnection : 웹 연결 상속 관계 URLConnection └ HttpURLConnection 💻 예제 Daum 사이트의 데이터를 읽어와 본다. 📝 전체 소스 코드 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.net.HttpURLConnection; import java.net.MalformedURLException; impo..

밈아
'Web' 태그의 글 목록 (2 Page)