전체 글(121)
-
JSP 클라이언트와의 대화 1 : 쿠키
쿠키란 무엇인가HTTP 통신은 stateless하다.즉 이번 요청-응답이 과거의 요청-응답에 영향을 받지않고 미래에 영향을 주지도 않는다.그렇다면 아이디기억하기, 1주일간 공지사항 안 보기처럼 서버-클라이언트간 임시 데이터가 필요한 경우는 어떻게 할까?바로 쿠키를 이용하면 된다. 쿠키란 하이퍼 텍스트의 기록서의 일종으로서 인터넷 사용자가 어떠한 웹사이트를 방문할 경우 그 사이트가 사용하고 있는 서버를 통해 인터넷 사용자의 컴퓨터(내 브라우저)에 설치되는 작은 기록 정보 파일을 일컫는다.쿠키(Cookie)는 웹 브라우저가 보관하는 데이터이다. 웹 브라우저는 웹 서버에 요청(request)를 보낼 때 쿠키를 함께 전송하며,웹 서버는 웹 브라우저가 보낸 쿠키를 사용해서 필요한 데이터를 읽을 수 있다.또 ..
2021.10.15 -
jsp 자바빈과 useBean태그
자바빈 자바빈 규약을 지켜서 만들어진 java class를 자바빈이라고 합니다. 자바빈을 사용하는 이유는 디자인(프론트엔드)와 로직(백엔드)를 분리하기 위해서이다. 자바빈 규약은 다음과 같다. 패키지에 속해야한다. defualt package에 있는 클래스는 자바빈이 될 수 없다 기본 생성자를 가지고 있어야 한다. 멤버 변수는 private getter/setter가 존재하며 public 직렬화(선택사항) 이클립스에서 lib 추가하기 로그인예제로 사용할 자바빈 UserVO 클래스를 만들어보자. UserVO의 toString() 오버라이딩에 사용할 라이브러리를 다운받도록하자. 브라우저 검색창에 maven repository를 검색한 후 maven repostiroy 홈페이지에서 lang3를 검색해 Apac..
2021.10.15 -
JSP pageModule, 흐름제어
jsp : include특정 웹사이트를 가보면 상단메뉴, 하단메뉴, 좌측 메뉴 등이 공통적으로모든 웹페이지에 있는 걸 확인할 수 있다.카페24 화면이다. 웹 페이지를 이동해도 모든 페이지마다 상단메뉴는 있다.이렇게 공통적인 부분은 따로 파일을 만들어놓고 필요할 때마다 포함시켜서 사용할 수 있다.jsp에서는 이런 기능으로 태그를 사용 할 수 있다. 웹 브라우저 입장에서는 main.jsp만 요청했지만, 서버는 main.jsp안에 sub.jsp내용을 포함시켜서 응답한다.00main.jsp + 00sub.jsp00main.jsp00main 전00main 후 00sub.jsp sub에서 만들어진 내용 실행결과 : 00main.jsp 이 그림을 다시보자. 브라우저는 어찌됐든 ..
2021.10.12 -
JSP 에러처리
우리는 개발을 하다보면 이런 에러를 보게 된다. 너무 좋다. 개발하는 입장에서는 이런 에러를 보고 어디를 수정해야 하는지 알게된다. 하지만 사용자는 이런화면을 보게된다면 해당사이트에 대한 신뢰를 잃을 것이다. 또 코드의 일부가 노출 될 수 있다. 애초에 모든 화면에서 이런 에러가 나오지않게 개발하는 것이 좋지만 예상치 못한 곳에서(개발자코드, 네트워크 에러,DB 문제 등) 문제는 항상 발생한다. 이럴 때 에러화면을 그대로 보여주기보단 에러가 났을 때 특정 페이지 화면을 보여줘 이런 문제들을 방지할 수 있다. 다음도 에러가났을 때 서버에서 기본적으로 만들어주는 화면 대신 보여주는 화면이 있다. 그럼 우리는 에러가 났을 때 어떻게 해야 '파란'에러화면 대신 우리가 원하는 페이지를 보여줄 수 있을까? ※에러가..
2021.10.08 -
JSP 기본객체와 영역
우리는 지금까지 request,response, out 등의 기본객체를 사용해봤습니다. 이 외에도 몇가지 기본객체를 사용해보고 이 기본객체가 jsp실행 도중 어디서부터 어디까지 영향을 미치는지에 대한 영역에 대한 내용을 다루도록 하겠습니다. PageContext pageContext 객체는 JSP페이지와 일대일 로 연결된 객체로 다음의 기능을 제공한다. 기본 객체 구하기 속성처리하기 페이지의 흐름 제어(forward,include) 페이지의 흐름제어는 나중에 pageModule부분에서 다룬다. Application 웹 애플리케이션에 1개씩 있는 기본 객체이다. localhost:8080 까지는 서버를 가리킨다. localhost:8080/study 가 하나의 웹 애플리케이션이다. 위 그림에서 서버는 2개..
2021.10.08 -
jsp 필수 이해 요소(servlet,jsp처리과정, 버퍼)
자바 서블릿(Java Servlet) 서블릿이란 웹페이지를 동적으로 생성하기 위해 서버측 프로그램을 말한다. 이는 자바 언어를 기반으로 만들지며 웹 어플리케이션 서버( Web Application Sever ) 위에서 컴파일 되고 동작한다. 쉽게 말해, java만으로 자바소스코드안에 HTML태그를 작성해서 웹 페이지를 만드는 자바 프로그램이다. 이해를 쉽게 하기 위해 jsp와 비교해보겠다. 먼저 06sum.jsp를 다음과 같이 작성해보자 06sum.jsp 1부터 10까지의 합 사실 브라우저에서 url요청 후 06sum.jsp의 결과화면이 나온다. 그럼 jsp만이 브라우저에 결과화면을 응답할 수 있는 것인가? 아니다. java만으로도 가능하다. 물론 우리가 그냥 처음부터 브라우저에 요청을 받아 응답까지 하..
2021.10.06