Response의 Redirect는 해당 페이지에서 요청한 Request값을 받아서 다시 다른 페이지로 넘겨야 하는 경우, 새로운 Request를 하나 더 생성하여 다음 페이지/파일로 보내는 구조로 동작한다. 하지만, 이때 forward를 사용하면 최초로 요청한 request가 그대로 유지되어 다음 페이지로 전송되게 된다. 간단한 예시를 보며 이해해보자. 기본적인 페이지의 구조는 다음과 같다 forwardForm.jsp -> forwardTest.jsp -(if 성공)-> forwardResultSuccess.jsp -(if 실패)-> -> forwardResultFail.jsp ◎ forwardForm.jsp 입장하려면 나이를 입력하세요 ◎ forwardTest.jsp
기본적으로 respnse.sendRedirect()를 이용하여 쿼리스트링을 보낼 때는 POST 방식을 사용하기 때문에, 지시자를 이용하여 페이지 자체의 인코딩을 변경하였다고 해도, 정보를 내보낼 때 한글이 깨지게 된다. 아래 예시로 한번에 확인할 수 있다. 를 타고 들어가기 때문에 post 방식으로 들어간다. = 한글이 깨진다 }else { response.sendRedirect("loginResult.jsp?code=fail"); } %> 이와 같이 내보내게 되면 100% 해당 정보를 받는 main.jsp 에선 한글이 깨져서 들어간다. 따라서 main.jsp가 아무리 쿼리스트링을 인코딩해서 받는다고 해도, 정보를 제대로 받을 수 없기 때문에, 반드시 정보를 내보내는 쪽에서 먼저 한글을 인코딩하는 과정이..
JSP는 편리하게도 Include 지시자를 활용하여 이미 만들어 놓은 페이지를 참조하여 코드의 재사용성을 높일 수 있다. ◎main.jsp 프론트 페이지 서브 페이지 이동 ◎sub.jsp 서브 페이지 메인 페이지 이동 ◎footer.jsp All contents Copyright 2021 freeflux Inc. all rights reserved Contact mail: Choonham4@gmail.com 이와 같이 간단하게 코드를 구성하여 다른 페이지에서 단 한줄로 이미 만들어놓은 footer를 참조받아 사용할 수 있다. 결과를 확인해보면, 메인과 서브 페이지 모두 footer를 동일하게 가지고 있는 것을 확인할 수 있다!
JSP는 지시자를 통해 에러가 발생했을 때, 사용자에게 보여지는 에러 페이지를 지정해줄 수 있다. JSP 문서내에 문제가 발생한 경우 예외처리(에러 페이지 출력) 위와 같이 코드를 짠다면, 0으로 나누는 연산이 들어갔기 때문에 반드시 난다. 이 때, 2번 라인처럼 지시자를 활용해 error페이지를 명시해줄 수 있다. 반가운 친구가 놀러왔어요~ 에러 페이지는 위와 같이 작성했다. 그러나 에러 페이지에서도 2번 라인과 같이 현재 페이지가 에러 페이지로 활용될 것이라는 것을 명시해줘야 사용할 수 있다. 이제 코드를 실행해보면,
직전에 포스팅한 내용을 좀 더 연습해보기 위한 예제이며, 마찬가지로 CSS가 전혀 포함이 되지 않은 단순 게시판이다. 대략적인 페이지의 구성은 다음과 같다 1. index.html 로드가 되자마자 list.jsp로 넘어간다. 2. list.jsp 상품의 번호, 이름, 원가와 판매가, 등록 날짜 등이 적힌 페이지로, 검색 값을 쿼리스트링으로 받아 null값일 때는 전체보기, 검색값이 있다면 이름에 검색 값을 포함하고 있는 제품만 표시하도록 구성되어 있다. (깜빡하고 전체보기 버튼을 만들어 두기만 하고 구현해놓지 않았다..ㅎㅎ) "상품 등록" 버튼을 눌러 uploadForm.html로 이동할 수 있다. 3. uploadForm.html 단순히 입력 값을 받아 upload.jsp로 넘겨주는 역할을 하는 페이지..
이번엔 JSP와 몇개의 태그만을 이용해서 로그인 기능이 없는 아주 간단한 게시판 페이지를 하나 제작해 볼 것이다. 아직 CSS는 전혀 활용하지 않기 때문에 굉장히 밋밋해 보일 수 있지만, 데이터의 기본적인 흐름을 알기엔 아주 좋은 예제이다. 우선 기본적인 게시판의 구성은 다음과 같다. 1. Index가 로드됨과 동시에 list.jsp로 넘어간다. 2. "글쓰기"를 클릭하면, 글 번호가 담긴 쿼리스트링과 함께 detail.jsp로 넘어간다. 이때, detail.jsp는 DB와 연동되어 게시글의 세부 내용을 확인할 수 있다. 3. 각 버튼은 다음과 같은 동작을 한다. 1) 수정: to updateForm.jsp 2) 삭제: to delete.jsp 3) 목록: to list.jsp 4. 수정 버튼 클릭 시 ..
직전 포스팅에서 Button에 링크를 달아 회원 목록을 추출하는 list.jsp를 추가하는 간단한 문제이다. 뭐, 앞에서 다뤘던 개념을 크게 벗어나지 않으니 바로 코드를 확인해보자. ◎joinForm.html 회원 가입 아이디: 비밀번호: 이메일: 회원목록 ◎list.jsp 회원 목록 회원 목록 버튼을 클릭하면, 바로 목록 페이지로 넘어갈 수 있다. 오늘 배웠던 JSP 기초를 조금 더 활용해볼 수 있게끔 하는 문제이다. 끝!!
우선 본 카테고리에 있는 모든 포스팅은 Apache Tomcat 8.0 Server와 HTML5를 기반으로 실습을 진행하며 포스팅할 예정이다. JSP를 사용하는 프로젝트는 Dynamic Web Project이므로 일반 Java Project와는 다른 형식이기 때문에 아래와 같이 선택하여 프로젝트를 생성해야 한다. 또한 Dynamic Web Project의 이름은 후에 서버를 구동시켰을 때, 주소창에 직접적으로 명시가 되므로 마구잡이로 짓는 것은 피하는 게 좋다. 기본적인 HTML 태그나 기타 메서드 등은 포스팅을 진행하면서 하나하나 정리해서 올릴 예정이며, 이번 포스팅은 아주 기초적인 태그와 JSP파일에 JAVA코드를 작성하는 문법을 다룰 것이다. 1. 문법 1) : 해당 페이지의 Contents Typ..
드디어 Web으로 왔다... (항상 독학으로는 한계가 있던 부분인데... 이번 기회에 제대로 각 잡고 공부해보자!) 앞으로 거의 대부분의 웹 관련 실습들은 Apache Tomcat Server로 사용할 예정이며, 나는 사용하고 있는 java 버전에 맞춰 Tomcat 8.0으로 진행할 예정이다. 우선, Web 프로젝트를 진행하기에 앞서 Tomcat Server 설치나 이클립스 인코딩 설정은 필수적으로 해줘야 한다. 1. Apache Tomcat Server 8.0 설치 톰켓의 경우 공식 홈페이지에서 Release 별로 다운로드할 수 있으니 따로 첨부하지는 않겠다. 그러나, 자신의 Java 버전을 생각하여 그에 맞는 버전의 톰캣을 설치해야 나중에 오류로 실행이 안 되는 불상사를 막을 수 있다. exe 파일을..
- 인천 구월동 맛집
- 인천 구월동 이탈리안 맛집
- 파니노구스토
- redux-thunk
- AsyncStorage
- Promise
- react
- 맛집
- await
- Async
- 정보보안기사 #실기 #정리
- 이탈리안 레스토랑
- redux
- javascript
- react-native
- Total
- Today
- Yesterday