ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 서블릿/JSP <3>
    공부 이야기/JSP 2020. 2. 14. 22:54

    1. Servlet 프로그램으로 브라우저 화면에 문자 출력

    - 콘솔에서 출력하는 System.out 과는 다르게, 화면 UI에서 출력을 해야 한다.

    - 이는 안드로이드 프로그래밍 방식과 유사하다. 

    - service 메소드의 response 전달 인자를 활용해서 웹 화면에서 원하는 데이터를 출력한다.

    - Stream -> Print -> out 을 이용해서 파일 I/O 하듯이 원하는 데이터를 출력시킨다.

    - 또는 PrintWriter 클래스와 getWriter를 사용해서 간단하게 구현하는 방법도 있다. (문자열 출력에 한함.) 

     

     

     

     

     

    2. 이클립스 IDE를 이용해서 서블릿을 좀 더 편한 방법으로 하기

    - 프로젝트 관리(컴파일, 파일 배치, 실행 등)와 코드 수정을 간단하게 할 수 있도록 도구를 사용한다. 

    - 이 때 Dynamic Web, Tomcat을 사용하기 위해선 JAVA EE 버전의 Eclipse를 설치해야 한다.

    - 또는 다음과 같은 방법으로 기존 버전에서 Plug-in 하는 방법이 있다.

     

    참고) 

    https://kamang-it.tistory.com/entry/%ED%94%8C%EB%9F%AC%EA%B7%B8%EC%9D%B8Java-EE-%ED%94%8C%EB%9F%AC%EA%B7%B8%EC%9D%B8-%EC%84%A4%EC%B9%98Java-%ED%94%84%EB%A1%9C%EC%A0%9D%ED%8A%B8%EC%97%90%EC%84%9C-webjspservlet%EC%9D%B4-%EC%95%88%EB%9C%B0-%EB%95%8C

     

    [플러그인]Java EE 플러그인 설치(Java 프로젝트에서 web,jsp,servlet이 안뜰 때)

    간혹 jsp 사용을 위해서 프로젝트를 파다가 dynamic웹을 눈씻고 찾아봐도 없는 경우가 있다. 그러나 인터넷에서보면 아무나 잘 사용하고 있다. 문제는 아무리 찾아봐도 내 이클립스에는 없다는 것이다. 도대체 어..

    kamang-it.tistory.com

     

     

    - 정적인 방법은 단순히 응답-호출의 방식이지만 동적인 방법은 서블릿 프로그램 선택, 프로토콜 변환, DB 검색, 전처리매핑과 같이 추가적인 기능 구현이 가능하기 때문이다.

    - 설치가 완료된 경우 New Project -> Dynamic Web Project를 선택한다. 

    - 이 때 유의할 점은 Apache Tomcat 9.0 버전을 선택한 후, 다운로드한 경로를 찾아주어야 한다.

    Tomcat 9.0 버전 환경변수가 설정되어있던 것인지 몰라도 알아서 세팅되어 있었다.....

     

     

     

     

    - 이후, 다음과 같은 일련의 순서를 통해 서블릿 프로그램을 만들도록 한다.

     

    1) index.html 파일 만들기

    패키지 -> WebContent에서 new -> index.html 파일을 새로 생성한다.

     

    2) chrome에서 런타임하기

    - 처음 컴파일을 할 때엔 이클립스 내의 기본 브라우저에서 실행하게 된다. 이를 바꾸기 위해선 Windows -> WebBrowser -> Chrome을 선택해준다.

     

    3) root 폴더에서 시작하도록 하기.

     

     

     

    - index.html 파일을 만드는 것까지는 좋았으나.... root가 아닌 context 형식으로 파일이 만들어진 것이다. (다른 물리적 공간)

    - 따라서 이를 root화 시켜주기 위해서는,,

    - 직접 생성한 프로젝트의 오른쪽 버튼을 누른 후, property 탭을 클릭한다.

    - 그 중에서 Web Project Setting에 들어간 후 root를 [ / ] 로 입력해준다.

     

    4) Web.xml을 이용해서 서블릿 매핑하기

    - 기존 Tomcat에서 만든 Web.xml을 그대로 복사붙여넣기를 한 후, 변환될 클래스 (= 서블릿)의 패키지명만 변경해주면 된다.

    Web.xml에서 서블릿-매핑을 하는 방법
    hello 라는 URL 패턴으로 Nanai 서블릿 클래스가 생겼다!

    - XML이지만 대소문자를 구분한다. 꼭 유의해야 함.

    - 하지만 XML을 이용해서 서블릿-매핑을 하는 방법은 조금 복잡하다. 다음은 Annotation을 이용해서 서블릿-매핑을 할 수 있도록 한다.

     

    3. Annotation 방식을 사용해서 Servlet - mapping 구현하기

    - 기업형 어플리케이션을 제작하는 경우 공유 파일인 Web.xml에 모두 접근하는 것보다는 어노테이션을 이용해서 독립적이면서 유연하게 개발하는 것이 옳다고 보여진다.

    - 따라서 다음과 같은 방법으로 web.xml에서 하듯이 서블릿-매핑을 구현해보았다.

    - 먼저 서블릿 프로그램(=class) 상단에 다음과 같이 url-pattern을 포함한 WebServlet 어노테이션을 기입한다.

     

    - 그리고 다시 web.xml에 들어간 다음 metadata-complete 값을 false로 바꿔주면 된다.

    - 참고로 서블릿 버전 3.0 부터 가능한 방식이다.

    - 가끔 오류가 발생할 수 있는데, Tomcat이랑 Eclipse를 모두 껐다가 다시 켜면 된다. (고스트...!) 

     

    출처) https://www.youtube.com/watch?v=b_YnVlJmZ7Q&list=PLq8wAnVUcTFVOtENMsujSgtv2TOsMy8zd&index=10

    '공부 이야기 > JSP' 카테고리의 다른 글

    tomcat - startup.bat 실행 오류  (0) 2023.07.09
    서블릿/JSP <2>  (0) 2020.02.14
    서블릿/JSP <1>  (0) 2020.02.14
Designed by Tistory.