1. Redirect란? Redirect란 HTTP 프로토콜로 정해진 규칙이다. 서버는 클라이언트로 요청을 받고, 클라이언트에게 특정 URL로 이동하라고 요청할 수 있다. 이를 Redirect라고 말한다. 서버는 클라이언트에게 응답으로 상태코드를 302와 함께 이동할 URL정보를 Location 헤더에 담아 전송한다. 클라이언트는 서버에게 받은 상태값이 302라면 Location 헤더값으로 재요청을 보낸다. 이후 브라우저의 주소창은 전송받은 URL로 바뀐다. Servlet과 JSP는 Redirect를 위해 HttpServletResponse가 가지고 있는 sendRedirect()메소드를 사용한다. 2. 사용 예제 redirect를 사용하기 위해서는 JSP를 다음과 같이 작성하면 된다. 위와 같이 작성하..
분류 전체보기
1. Scope의 종류 웹 프로그래밍을 하다보면 JSP의 내장 객체와 같이 이미 약속된 객체들이 존재한다. 이때 이 객체들에도 "범위(Scope)"가 존재하며 Application, Session, Request, Page 총 4가지 종류가 있다. Page scope는 Servlet이든 JSP든 선언된 페이지 내에서만 사용할 수 있는 것으로 가장 작은 단위이다. Request scope은 client로부터 요청이 들어와서 서버가 어떤 일을 수행하여 응답을 보낼 때까지 계속 사용할 수 있는 scope를 말한다. Session scope는 세션 객체가 생성돼서 이 세션 객체가 소멸될 때까지 사용할 수 있는 scope를 말한다. 즉, 요청이 하나가 아니라 여러 개의 요청이 들어와도 계속 남아있는 Scope이다..
1. 내장 객체란? JSP를 실행하면 Servlet 소스가 생성되고 실행된다. Servlet으로 바뀌었을 때 대부분의 코드는 _jspService 메서드 안에 작성된다. 이때 _jspServie 메서드에는 미리 선언된 객체들이 존재하며 해당 객체들은 JSP코드가 변환될 때 초기화 된다. 아래는 객체들이 초기화 되는 예시다. 우리는 위와 같은 객체들을 "내장 객체"라고 부르며 이들은 JSP에서 바로 사용할 수 있다. 내장 객체에는 아래와 같은 객체들이 존재한다. 내장 객체 자바 클래스 주요 역할 request javax.servlet.http.HttpServletRequest 사용자 요청에 대한 정보를 읽어올 때 사용한다. response javax.servlet.http.HttpServletRespons..
JSP 페이지는 선언문(Declaration), 스크립트릿(Scriptlet), 표현식(Expression) 총 3가지의 스크립트를 제공한다. 각각 아래와 같은 기호를 사용한다. Declaration - : 전역변수 선언 및 메소드 선언에 사용 Scriptlet - : 프로그래밍 코드 기술에 사용 Expression - : 화면에 출력할 내용 기술에 사용 1. 선언문 (Declaration) 선언문은 아래와 같이 JSP 페이지 내에서 필요한 멤버변수나 메서드가 필요할 때 사용한다. id : 위 jsp 코드를 실행하여 servlet으로 변형되면 아래와 같이 exam1_jsp(exam1은 jsp파일 이름이다.) 클래스의 멤버변수와 메소드가 생성된다. 2. 스크립트릿 (Scriptlet) 일반적으로 가장 많이..
리스트는 항목을 나열할 때 사용하며 번호가 있는 리스트와 번호가 없는 리스트로 나눌 수 있다. 1. 번호가 없는 리스트 번호가 없는 리스트(unordered lists)는 태그로 생성한다. 각 리스트 항목은 태그로 작성하면 된다. 이때 li는 list item을 의미한다. list item1 list item2 list item3 2. 번호가 있는 리스트 번호가 있는 리스트(ordered lists)는 태그로 생성하며 각 리스트 항목은 동일하게 태그를 사용한다. list item1 list item2 list item3 3. 정의 리스트 정의 리스트(definition lists)는 항목과 함께 항목의 정의가 표시되는 리스트다. 정의 리스트는 태그로 생성하며 태그는 항목, 태그는 항목에 대한 설명을 나타..
HTML 문서에서 텍스트는 특별한 태그 없이 태그 안에 표시할 수 있다. 하지만 해당 방법은 여러 줄로 작성된 텍스트도 모두 연결되어 나오기 때문에 원하는 형식으로 출력할 수는 없다. 이를 위해 p태그가 존재한다. HTML 문서를 작성할 때 입력한 줄 바꿈 문자는 무시된다. 1. 단락 (Paragraph) 단락은 태그로 정의된다. 웹 브라우저는 단락의 전후에 자동으로 빈 줄을 추가한다. 만약, 새로운 단락을 사용하지 않고 줄 바꿈을 하고 싶다면 태그를 사용하면 된다. br은 break를 의미하며 종료 태그를 가지지 않는다. This is Sentence1 This is Sentence2 This is Sentence1 This is Sentence2 단, 이때 사이에 엔터를 여러 줄을 사용해도 줄 바꿈은..
1. HTML 문서의 구성 HI HTML 문서는 위와 같이 태그로 둘러싸이며 이는 브라우저에게 이 파일의 내용이 HTML이라는 것을 알려준다. head 부분은 웹 페이지에 대한 정보를 저장하며 body 부분에는 웹 페이지의 모든 내용이 들어있다. HTML 문서 작성시 주의할 점은 다음과 같다. 태그 이름은 대소문자를 구별하지 않는다. 즉, 와 는 동일하다. 하나의 요소(element) 안에 다른 요소를 포함할 수 있다. 이때 요소란 "시작 태그+콘텐츠+종료 태그"를 의미한다. 에 가 포함된 것을 예시로 들 수 있다. 시작 태그와 종료 태그 사이의 연속된 공백은 하나의 공백으로 취급한다. 추가적으로 은 HTML5 버전임을 의미한다. 태그는 브라우저에게 해당 웹 페이지에 사용된 HTML의 종류와 버전을 알려..
DBMS(database management system) 등장 이전에는 개발자들이 파일의 데이터를 저장하고 읽어들이는 등의 기능을 모두 구현해야 했다. 이를 해결하기 위해 DBMS가 등장하게 되었고 이전에 비해 데이터를 훨씬 쉽게 관리할 수 있게 된다. 하지만 DBMS는 보통 서버 형태로 서비스를 제공하기 때문에 이러한 DBMS에 접속해서 동작하는 클라이언트 프로그램이 많이 만들어지게 된다. 하지만 이 방식은 클라이언트의 로직이 많아지고 클라이언트 프로그램의 크기가 커진다는 문제가 있었다. 위와 같이 DBMS를 직접 클라이언트가 연결되어 동작하는 방식은 여러 단점을 가졌고 이러한 문제점을 해결하기 위해 등장한 것이 MiddleWare다. MiddleWare는 클라이언트와 DBMS 사이에 또 다른 서버를..