본문 바로가기

728x90
반응형

개발/Java

[JAVA - WEB] 서블릿 포워드(forward) 포워드 기능 포워드란 하나의 서블릿에서 다른 서블릿이나 JSP 와 연동하는 방법입니다. 쇼핑몰을 예를 들면 상품관리 서블릿과 조회된 상품을 화면에 표시하는 JSP 는 각각 따로 존재합니다. 따라서 사용자가 상품 조회를 요청하면 상품 관리 서블릿은 데이터베이스에서 상품 정보를 조회한 후 다시 JSP 에게 전달하여 상품 정보를 표시하는 것이죠. 기능을 요약하면 다음과 같습니다. - 요청에 대한 추가 작업을 다른 서블릿에게 수행하게 합니다. - 요청에 포함된 정보를 다른 서블릿이나 JSP 와 공유할 수 있습니다. - 요청에 대한 정보를 포함시켜 다른 서블릿에 전달할 수 있습니다. - 모델2(MVC) 개발 시 서블릿에서 JSP 로 데이터를 전달하는데 사용됩니다. 포워드 방법 redirect - HttpServl.. 더보기
[JAVA - WEB] 서블릿과 데이터베이스 지금까지는 그냥 요청을 받으면 메서드 자체에서 받은 데이터를 콘솔에 출력하거나 출력 스트림을 통해서 받은 데이터를 웹 브라우저에서 보여주는 식으로 처리를 했습니다. 실제 개발을 진행하게 되면 웹과 데이터베이스는 필수불가결한 사이이므로 함께 알아보도록 하겠습니다. 서블릿의 비즈니스 로직 처리 서블릿의 비즈니스 로직 처리란 서블릿이 클라이언트로부터 요청을 받으면 그 요청에 대해 작업을 수행하는 것입니다. 웹 애플리케이션에서 대부분의 비즈니스 로직 처리 작업은 데이터베이스 연동 관련 작업이지만 그 외에 다른 서버를 연동하든 다른 프로그램을 연동해서 데이터를 얻는 작업도 수행합니다. 즉, 클라이언트 요청을 받은 서블릿이 비즈니스 로직 처리 기능으로 데이터 저장소에서 데이터를 조회 및 처리를 한 후 서블릿의 응답.. 더보기
[ Eclipse ] 소스 정렬 방법 이클립스를 사용할때 소스의 들여쓰기 등이 올바르지 않을때 한번에 자동으로 정렬하는 방법을 알려 드리겠습니다. 단축키( Ctrl + Shift + F) 아래와 같이 보기 좋지 않게 소스가 작성되어 있는 상태에서 위의 단축 키를 누릅니다. 소스코드가 말끔하게 정렬되는 것을 확인하실 수 있습니다. 소스 저장 시에 자동 정렬 설정 소스 코드를 저장할때 자동으로 정렬되게 설정할 수 있습니다. Window - Preferences 를 클릭합니다. Preferences 창에서 Java - Editor - Save Action 으로 이동합니다. Preform the selected actions on save 항목을 활성화 하고 Format source code 항목도 활성화 합니다. 저장 시에 어느 부분을 정렬할지 .. 더보기
[JAVA - WEB] 서블릿 요청 및 데이터 전송 GET/POST 전송 방식 웹 브라우저에서 서블릿으로 전송하는 방법은 크게 GET 방식과 POST 방식이 있습니다. 주소창으로 구분해보자면 GET 방식은 물음표(?) 뒤에 여러가지 데이터를 붙여서 전송하는 방식이고 POST 방식은 기본 주소 외에 아무 데이터도 보여지지 않게 숨겨서 전송하는 방식입니다. GET/POST 방식 비교 GET POST 서브릿에 데이터를 전송할 때는 데이터가 URL 뒤에 name=value... 의 형태로 전송됩니다. 여러 개의 데이터를 전송할 때는 '&' 로 구분해서 전송합니다. 보안이 취약합니다. 전송할 수 있는 데이터는 최대 255자 입니다. 기본 전송 방식이고 사용이 쉽습니다. 웹 브라우저에 직접 입력해서 전송할 수도 있습니다. 서블릿에서는 doGet() 을 이용해 데이터.. 더보기
[JAVA - WEB] 서블릿 기본 서블릿의 기본 기능 수행과정 서블릿의 기본 기능 수행과정은 다음과 같습니다. 1. 클라이언트로부터 요청을 받습니다. 2. 요청 처리, 데이터베이스 연동 등과 같은 비즈니스 로직을 처리합니다. 3. 처리된 결과를 클라이언트에 돌려줍니다. 서블릿 요청과 응답 수행 API 요청과 응답에 관련된 API 는 모두 javax.servlet.http 패키지에 있습니다. 요청 : javax.servlet.http.HttpServletRequest 클래스 반환값 메서드 기능 boolean authenticate(HttpServletResponse response) 현재 요청한 사용자가 ServletContext 객체에 대한 인증을 하기 위한 컨테니어 로그인 매커니즘을 사용합니다. String changeSessionId.. 더보기
[JAVA - WEB] 서블릿이란? 서블릿이란? 서블릿은 서버 쪽에서 실행되면서 클라이언트의 요청에 따라 동적으로 서비스를 제공하는 자바 클래스입니다. 서블릿은 자바의 일반적인 특징을 모두 가집니다. 서블릿은 일반 자바 프로그램과 다르게 독자적으로 실행되지 못하고 톰캣과 같은 JSP/Servlet 컨테이너에서 실행된다는 점에서 일반 자바 프로그램과 차이가 있습니다. 서블릿은 여러가지 특징이 있습니다. - 서버 쪽에서 실행되면서 기능 수행 - 기존의 정적인 웹 프로그램의 문제점을 보완하여 동적인 여러가지 기능을 제공 - 스레드 방식으로 실행 - 컨테이너에서 실행되며 컨테이너 종류는 상관없음(플랫폼 독립적) - 보안 기능 적용 우수 - 웹 브라우저에서 요청 시 기능 수행 서블릿 API 서블릿은 자바로 만들어졌으므로 클래스들 간의 계층 구조를 .. 더보기
[JAVA - WEB] 웹 애플리케이션 서비스 이클립스에서 개발한 웹 애플리케이션을 실제 사용자에게 서비스하기 위해서 배치(Deploy)해야 합니다. 배치(Deploy)란? 웹 애플리케이션이 개발이 완료되면 실제 사용자들에게 서비스를 해야 하는데 이클립스의 톰캣 컨테이너를 실행하서 실행하는 것은 의미가 없습니다. 실제로 유닉스나 리눅스 등의 서버 환경에 설치된 톰캣에서 실행을 하여 실제 유저에게 서비스를 합니다. 그렇게 하려면 완성된 웹 애플리케이션을 실제로 서비스하는 서버의 톰캣으로 이동을 실행을 해야 하는데 이 과정을 배치(deploy) 라고 부릅니다. 즉 웹 애플리케이션을 실제 유저에게 서비스 한다는 뜻이죠. 톰캣에 Deploy 이클립스에서 File - Export 를 클릭합니다. Select 창에서 Web 항목의 WAR File 을 선택하고 .. 더보기
[JAVA - WEB] 이클립스에서 웹 애플리케이션 실행 현재 개발의 편의성을 위해 이클립스와 같은 통합 개발 환경(IDE)을 사용하여 개발하고 있습니다. 이클립스에서 웹 애플리케이션을 생성하여 톰캣 컨테이너에 등록 및 실행하는 방법에 대해서 알아보겠습니다. 이클립스에서 웹 프로젝트 생성 이클립스를 실행하여 File - New - Dynamic Web Project 를 클릭합니다. Project name 을 입력한 후 Next 를 클릭합니다. 다시 Next 클릭 Generate web.xml deployment descriptor 을 체크한 후 Finish 를 클릭합니다. Project Explorer 에 프로젝트가 생성된 것을 확인할 수 있습니다. 이클립스에 HTML 파일 생성 웹 브라우저에 표시할 간단한 HTML 파일을 만들어 보겠습니다. WebConten.. 더보기