본문 바로가기

분류 전체보기54

JSP로 회원 관리 웹 만들기 JSP로 웹을 만들면 불편하게 자바로 HTML을 작성하지 않을 수 있습니다. 안녕하세요. 오늘은 JSP로 회원 관리 웹을 만들어 보겠습니다. 회원을 저장하고, 전체 회원을 조회하는 기능을 만들 것입니다. 지난 게시글(https://passionate.tistory.com/37)에서는 서블릿으로 회원 관리 웹을 만들어보았습니다. 서블릿으로 웹을 만드니, 동적으로 HTML 페이지를 만들 수 있었지만, 자바로 HTML 페이지를 작성해서 응답 데이터를 만드는 것이 복잡하고 비효율적이라는 단점이 있었습니다. 따라서 오늘은 JSP를 사용해보겠습니다. JSP를 사용하면 HTML 문서에서 필요한 부분만 자바 코드를 적용해서 동적으로 HTML 페이지를 만들 수 있습니다. JSP(Java Server Pages) 먼저 J.. 2022. 1. 21.
서블릿으로 회원 관리 웹 만들기 스프링 없이 서블릿만으로 웹을 만들어 봅시다 안녕하세요. 오늘은 서블릿으로 회원 관리 웹을 만들어보겠습니다. 회원을 저장하고 회원 목록을 조회하는 기능을 구현할 것입니다. 회원 도메인, 회원 저장소 만들기 웹을 만들기 전에, 필요한 회원 도메인과 회원 저장소를 만들어야 합니다. 회원 도메인을 만들고, 회원을 저장/조회할 수 있는 회원 저장소를 만들어봅시다. 회원 도메인 모델 @Getter @Setter public class Member { private Long id; private String username; private int age; public Member(){} public Member(String username,int age){ this.username = username; this.a.. 2022. 1. 20.
HttpServletResponse 사용하기 HTTP 응답 메시지는 어떻게 만들까요? 안녕하세요. 앞서 HttpServletRequest 객체를 사용해서 요청 메시지를 조회하고(https://passionate.tistory.com/34), 요청 데이터를 조회하는(https://passionate.tistory.com/35) 방법을 알아보았습니다. 오늘은 HttpServletResponse 객체를 사용해서 HTTP 응답 메시지를 생성하고 데이터를 전송하는 방법을 알아보겠습니다. Response는 Request보다 간단해서, 한 게시글에 모아서 작성하겠습니다. HTTP 응답 메시지 생성 HttpServletRespose 객체로 상태 코드를 지정하고 헤더 값을 설정할 수 있습니다. @WebServlet(name = "responseHeaderServl.. 2022. 1. 19.
HttpServletRequest로 HTTP 요청 데이터 조회하기 HTTP 요청 데이터는 어떻게 받아올까요? 안녕하세요. 오늘은 HttpServletRequest로 HTTP 요청 데이터를 어떻게 조회하는지 알아보겠습니다. HTTP 요청 데이터 먼저 HTTP 요청 데이터에는 무엇이 있는지 알아봅시다. 클라이언트에서 서버로 요청을 보낼 때, 데이터를 전달하기 위해서 주로 3가지 방법을 사용합니다. 1. GET - 쿼리 파라미터 /url?username=hello&age=20처럼 메시지 바디 없이 URL에서 물음표 이하의 쿼리 파라미터에 데이터를 포함해서 전달하는 방식입니다. 검색, 필터, 페이징 등에서 많이 사용하는 방식입니다. 2. POST - HTML Form 메시지 바디에 쿼리 파라미터 형식으로 데이터를 전달합니다. content-type이 application/x-.. 2022. 1. 18.
HttpServletRequest로 HTTP 요청 메시지 조회하기 HTTP 요청 메시지는 어떻게 조회할까요? 안녕하세요. 오늘은 HttpServletReqest로 HTTP 요청 메시지를 조회해보겠습니다. HTTP 요청 메시지 먼저 HTTP 요청 메시지의 구조를 알아봅시다[1]. HTTP 메시지의 전체적인 구조는 시작 라인, 헤더, 공백 라인, 메시지 바디로 구성되어 있습니다. 참고로 HTTP 메시지는 HTTP 요청 메시지, HTTP 응답 메시지로 구분할 수 있습니다. 이번 시간에는 HTTP 요청 메시지에 초점을 두고 알아보겠습니다. 시작 라인, 헤더, 공백 라인, 메시지 바디가 무엇인지 하나씩 알아봅시다. 1. 시작 라인 시작 라인은 HTTP 메서드(GET, PUT, POST)와 요청 대상(절대경로), HTTP 버전이 들어갑니다[2]. 아래 사진은 HTTP 요청 메시지.. 2022. 1. 18.
서블릿 등록해서 사용하기 서블릿을 등록해서 사용해보신 적 있나요? 안녕하세요. 웹을 만들 때, 보통 서블릿을 직접 등록해서 사용하지는 않습니다. 오늘은 서블릿 클래스를 직접 만들어서 사용해보겠습니다. 스프링 부트 환경에서 서블릿을 등록하고 사용할 것입니다. 스프링 부트는 톰캣 서버가 내장되어 있어서 편리하게 서블릿 코드를 실행할 수 있습니다. @ServletComponentScan 스프링 부트에서 서블릿을 직접 등록해서 사용하려면 @ServletComponentScan 어노테이션을 추가해야 합니다. 기본 메인 클래스에 추가합니다. @ServletComponentScan @SpringBootApplication public class ServletApplication { public static void main(String[] .. 2022. 1. 18.
HTTP API API는 언제쯤 보내주실 수 있나요? 웹에 대해서 아무것도 모를 때, 학교 수업의 팀 프로젝트로 웹을 만든 적이 있습니다. 저는 백엔드를 맡았는데, 프론트엔드를 맡으신 분이 API는 언제쯤 보내주실 수 있냐고 물어보셔서 API가 뭐지? 싶었던 적이 있습니다. 그때 API 예시를 보여주셨고, 그것을 보고 추측해서 보내드린 API는 이런 형태였습니다. HTTP 메소드는 뭔지, 요청의 URL은 어떻게 들어오는지, 파라미터와 바디에는 무슨 데이터가 넘어오는지, 어떤 결과 json을 넘길지 등등의 정보를 작성해서 보내드렸습니다. 여기서 API는 대체 뭘까요? 지금까지도 API는 어떤 식으로 요청이 들어오면 어떤 식으로 응답할지 정도의 정보라고 생각하고 있었는데, 정확한 개념을 오늘 학습하게 되어서 정리합니다. H.. 2022. 1. 17.
[WAS] 동시 요청 - 멀티 스레드 동시에 요청이 들어오면 어떻게 처리하나요? 안녕하세요. 오늘은 동시 요청이 들어오면 어떻게 처리되는지 알아보겠습니다. 결론부터 말씀드리자면 WAS가 동시 요청을 위한 멀티 스레드 처리를 지원합니다. 앞서 WAS와 서블릿에 대한 글을 작성하였습니다. WAS와 서블릿을 모르시는 분은 아래 게시글을 참고해주세요. https://passionate.tistory.com/30 WAS와 서블릿 WAS와 서블릿이 무엇인가요? 안녕하세요. 오늘은 WAS와 서블릿에 대해서 알아보겠습니다. 먼저 WAS에 대해서 알아보겠습니다. 웹 서버, 웹 애플리케이션 서버(WAS) 웹 서버(Web Server)는 HTTP를 통해 웹 passionate.tistory.com 위의 게시글에서 서블릿의 동작 방식을 설명하면서 'Servlet.. 2022. 1. 17.