목록servlet (8)
[꼼꼼한 개발자] 꼼코더
👀 서블릿 공부 이제 자바개념을 어느 정도 잡고 서블릿으로 넘어가려고 한다. 이전 자바 공부를 할 때 나는 느꼈다. "나는 강의 공부가 좀 더 잘 맞는구나..!" (이후 교재 공부도 다시 나온다) 나는 서블릿에 대하여 개념을 알고자 웹서핑을 하였고 그렇게 'IT 핥기'라는 유튜버를 찾았다... 이후 '서블릿이란?' 강의를 1탄부터 완강하였다. 🧑🏻💻 공부 내용과 후기 공부 내용은 '서블릿 == 자바 == JSP', '웹의 흐름' 등을 알 수가 있다. 이걸 정말 디테일하게 실습을 통해 알려주시는데 너무 너무 잘 알려주신다 이 내용을 듣고 이해하고 신나서 같이 공부하는 친구에게 막 설명했던 기억이 있다. 그만큼 Servlet이란? 개념을 잡고자 한다면 강력히 추천한다!! ☕️ 내가 공부했던 자바 자료 ht..
🫨 뭐부터 할 거야? 나는 어디서부터 다시 공부를 해야 할까? 고민했었다 코딩을 '요리'로 비유하자면 나는 지금 '요리사'가 되려고 하는데 '요리재료(자바언어)'에 대해 너무 무지하다고 생각이 들었다. 따라서 자바 언어를 다시 공부해야겠다고 생각을 했고 시작했다. 🫨 어떻게 할 거야? 이전에 공부 방법은 아래와 같이 하였다. 자료 : 교재 방법 : 책의 글귀 하나하나 전부 타이핑, 모든 코드 타이핑, 결과물 + 코드 한 줄 한줄 분석, 블로그 상세 정리 하지만 앞으로의 공부 방법은 아래와 같이 정했다. 자료 : 교재, 강의 방법 : 모르는 코드 분석, 블로그 가끔 정리, 공부 내용 가끔 타이핑 💬 이후(자바 공부) 그렇게 교재위주로 공부를 시작했고 봤었던 내용이라 대충 훑으는 느낌으로 공부했었다..
‼️ 실습은 FrontController 패턴으로 MVC를 적용한다. 🎮 JSP에서 MVC패턴을 구현하는 방법 서비스 하는 기능마다 서블릿을 정의하고 등록 Front Controller를 만들어 모든 요청을 받는 서블릿을 정의하고 등록 👨🏻💻 실습 ( FrontController 패턴으로 MVC 적용) controller와 model이라는 이름으로 패키지를 생성해 준다. 🕴🏻 모델 개념 준비 model 패키지 속 AddService.java, MinService.java 이름으로 파일을 만들어 준다. 🏎 핸들러 준비 - java파일 생성 controller 패키지에 AddHandler.java, minHandler.java, FrontController.java CommandHandler.java 총 ..
🏛 MVC 패턴 적용 이전 구현 방식 JSP 파일로 처리하는 방식 JSP요청 → JSP에서 처리 → 응답 JSP요청 → JSP에서 처리 → redirect응답 JSP요청 → JSP에서 처리 → forward(다른 JSP요청) → 다른 JSP에서 처리 → 응답 Servlet으로 처리하는 방식 URL요청 → Servlet에서 처리 → 직접 응답 URL요청 → Servlet에서 처리 → redirect응답 URL요청 → Servlet에서 처리 → forward(JSP선택) → 처리 → 응답 MVC 패턴 JSP에서 MVC 패턴을 구현하는 방법은 명확하게 정해진 것은 아님 다시 말 해 순수 MVC는 모든 패턴을 직접 구현해야 한다. 따라서 사람마다 구현 방식이 다르다 🌊 JSP에서 MVC패턴 흐름 웹 브라우저에서..
☕️ 자바 서블릿(Java Servlet) 자바를 사용하여 웹 페이지를 동적으로 생성하는 서버 측 프로그램 혹은 그 사양 자바 서블릿은 웹 서버의 성능을 향상하기 위해 사용되는 자바 클래스의 일종 JSP는 HTML 문서 안에 Java코드를 포함 서블릿은 자바 코드 안에 HTML을 포함 👀 비슷한 기술 펄 등을 이용한 CGI, PHP를 AWS(Apach Wap Server Process)에서 동작하게 하는 mod_php 마이크로소프트사의 IIS(톰캣과 유사)에서 동작하는 ASP 등 CGI는 요청이 있을 때마다 새로운 프로세스(프로그램)가 생성되어 응답 자바 서블릿은 외부 요청마다 프로세스보다 가벼운 스레드로써 응답 서블릿은 자바로 구현되므로 다양한 플랫폼에서 동작한다. 💡 추가 설명 📟 CGI 자바 코드를..
⁉️ 서블릿이란? 결론만 이야기하자면 웹 클라이언트의 요청을 처리할 수 있는 클래스이다 HttpServlet을 상속하여 만들어지는 것들을 servlet이라고 불린다 즉 JSP파일도 Servlet으로 동작한다. 하지만 이렇게 이야기하면 어렵게 느껴진다. 아래 글들을 읽고 나면 이해가 될 것이다. 👨🏻🏫 본론 저번 시간에 클라이언트의 요청을 JSP파일로 받았었다. → localhost:8080/servlet/login.jsp 오늘은 클라이언트의 요청을 Servlet으로 직접 받도록 바꿔보자. 여기서 잠깐!?🖐 “저번에 JSP는 Servlet이라고 하지 않았나?”라고 할 수 있다. 하지만 브라우저 입장에서는(주소창에서 요청) 아래와 같은 이유로 인하여 다르다고 보인다. JSP는 → JSP파일(/login.j..
간단한 과정을 통해 설명해 보도록 하겠다 📖 순서 1. 이클립스 접속 → mystudy라는 명칭의 프로젝트 생성 → login.jsp 파일을 생성 2. 크롬을 열고 브라우저에서 localhost8080/mystudy/login.jsp를 입력한다.(login.jsp에 요청작업) 3. 요청을 받으면 톰캣은 work-space파일 특정 공간에 publishing(출판)하여 mystudy프로젝트를 복사해서 작업을 한다. (추가 설명) 이것은 다시 말 해 웹서버가 관리하는 경로로 복사하는 것이다. 이 과정을 서버 입장에서는 “publishing 했다”라고 이야기한다. 또한 이 작업이 진행되어야만 웹브라우저에서 화면을 볼 수 있다. 4. 해당 파일(웹서버가 관리하는 경로)에 login.jsp.java 파일 이 생성..
✅ Controller의 Exception 처리 Controller를 작성할 때 예외 상황까지 고려한다면 처리해야 하는 작업량은 엄청나게 늘어난다. 스프링 MVC에서는 이러한 작업을 다음과 같은 방식으로 처리할 수 있다. @Exception와 @ControllerAdvice를 이용한 처리 @ResponseEntity를 이용한 예외 메세지 구성 ✍🏻 @ControllerAdvice @ControllerAdvice는 뒤에서 배우게 될 AOP를 이용한 방식이다. AOP에 대해 간단히 언급하자면 AOP는 ‘핵심적인 로직은 아니지만 프로그램에서 필요한 공통적인 관심사는 분리’하자는 개념이다. Controller를 작성할 때 메서드의 모든 예외사황을 전부 핸들링해야 한다면 중복적이고 많은 양의 코드를 작성해야 하지..