티스토리 뷰
반응형
안녕하세요. Nerd-Lee입니다.
공부 내용은, 인프런 박매일님의[NarP Series]MVC 프레임워크는 내 손에[나프1탄]
을 참고하였습니다.
1. Servlet이 뭐야??
Servlet
은 100% JAVA로 이루어져 있고,Server
+Let
가 결합된 단어라고 한다.
2. 파일을 만들어보자.
src / kr.web.controller(package) / HelloSevlet.java
를 만들어보자.HelloServlet.java
파일을 서블릿 형태로 만들어야
톰캣서버가 구동이 가능해지기 때문에 서블릿 형태로 만들어보자.HttpServlet
이란 클래스를 상속받자.패키지명은 javax.servlet.http.HttpServlet
이다.Servlet
에서, Main 함수와 같은 제일 먼저 실행되는 메서드가 필요한 데alt + shift + s
키를 눌러서, override/implements methods 라는 버튼을 클릭해서
HttpServlet 클래스가 가진 메서드를 재정의 해야하는데service(HttpServletRequest, HttpServletResponse)
를 체크하고 OK 클릭!- 이렇게 만들어진 것이,
Servlet
의 골격이다. 이 다음, jsp에서 만들었던 것 처럼
1~10까지의 총합을 서블릿으로 만들어보면 된다. 밑에 코드처럼 추가해보자.MyUtil my = new MyUtil(); int sum = my.sum();
- 이제 해당 데이터를 클라이언트와 연결을 시켜서 요청을 받고 응답을 하면
해당 값을 보낼 수 있도록 만들어야 한다. PrintWriter out = res.getWriter();
를 추가해주자.res.getWriter()
는 요청한 클라이언트와 연결시키는 IO를 만들어내는 메서드이다.PrintWriter out
변수는 getWriter로 받아온, 출력스트림을 받아온다.
그리고out
변수가 요청한 클라이언트와 연결되어 있는 하나의 빨대 역할을 하는것이다.- 이제 HTML 코드를 하나 작성해서,
out
변수에게 넘겨서, 클라이언트로 보내면 된다.
package kr.web.controller;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import kr.web.util.MyUtil;
// JavaEE -> Servlet
public class HelloServlet extends HttpServlet {
@Override
protected void service(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException {
// TODO Auto-generated method stub
MyUtil my = new MyUtil();
int sum = my.sum();
// 요청한 클라이언트에게 응답하기
PrintWriter out = res.getWriter();
out.println("<html>");
out.println("<body>");
out.println(sum);
out.println("</body>");
out.println("/<html>");
}
}
- 최종 서블릿 예제 코드이다. 이제 서블릿에 대해서 보니깐, 현재 내가 회사에서 보고 있는 프로젝트가....ㅠㅠ
어떻게 진행되고 있었던건지를 깨닫게 된다. 서블릿도 있고, jsp도 있고..난장판인데
이걸 리팩토링하자니 아직 실력이 부족하고 물론 천천히 진행해도 상관은 없으나 막상 서블릿과 jsp의 차이를 알게되니..
코드를 처음보면서도 이걸 왜 이렇게 만들었지? 라는 생각을 늘 품고 있었는데.. 에효.. 하나로 통일이 된게 아니였구나..를 깨닫게 된다.
하하하하.. 나중에 리팩토링 하자. jsp로 깔끔하게ㅠㅠ - 일단 오늘은 토요일이라 하루 쉴려고 했으나..
그래도 공부 하나 정도는 듣고 자는 게 좋을 것 같다는 생각에 글을 작성해본다.
내일은 더 많은 공부를 할 예정이다. 일단 영어도 시작했으니깐
영어부터 공부를 해보고 프로그래밍 공부를 시작하자..ㅠㅠ 화이팅!
이 글이 도움이 되셨다면 댓글 부탁드립니다^^
다음 글로 찾아오겠습니다!
다음 글로 찾아오겠습니다!
반응형
'web & develop > 웹 공부' 카테고리의 다른 글
@WebServlet 사용하기 (0) | 2022.04.29 |
---|---|
Servlet 실행하기 (0) | 2022.04.29 |
JSP에서 비즈니스 로직 분리 공부 (0) | 2022.04.29 |
JSP 만들어서 동적인 페이지로 구동하기 (0) | 2022.04.29 |
Context 등록 후 index.html 요청하기 (0) | 2022.04.29 |
댓글
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- Controller
- 프리젠테이션 로직
- baseofcoding
- Spring
- Vuforia
- Java
- 서블릿
- Git
- Unity
- 스프링
- Base Of Coding
- HTML
- 유니티로 배우는 C#
- 비지니스 로직
- GitHub
- MVC
- 유니티
- CSS
- spring boot
- 뷰포리아
- 프로그래밍
- VR
- 안드로이드
- c#
- 유니티3D
- unity3d
- Servlet
- 게임프로그래밍
- JSP
- Next.js
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
글 보관함