request
-
EL(Expression Language)과 객체 사용백엔드/서블릿&JSP 2021. 1. 14. 19:16
2021/01/14 - [백엔드/서블릿&JSP] - EL(Expression Language)란? EL(Expression Language)란? EL이란? EL이란 Expression Language의 약자로서 JSP에서 자바코드를 더욱 간결하게 하기 위해 만들었다. 어떻게보면 완벽하게 자바 코드를 JSP에서 걷어내고 EL을 통해 가독성을 높이고자 한 것이다. 다 sgcomputer.tistory.com 이전에 EL에 대해서 다룬 글에서는 EL의 기본적인 표현식과 연산자들에 대해서 알아봤다. 다양한 연산을 간략하게 표현할 수 있어 가독성이 높아지는 장점이 있다. 그렇다면 이번에는 EL을 통해서 객체를 다루는 방법을 알아보자. EL은 이전 글에서 다뤘듯 서블릿이나 다른 리소스에서 전달되는 값들을 받아서 표..
-
JSP 데이터 저장소백엔드/서블릿&JSP 2021. 1. 14. 12:56
서블릿과 마찬가지로 jsp도 데이터를 다른 리소스로 보낼 경우가 생긴다. 사실 jsp만으로 코드를 짜는 일은 많지 않아서 서블릿과 엄격히 분리하는건 괜한 일 같긴하다. 하지만 어떤건 서블릿과 공유되고 어떤건 공유되지 않는지 알아야 사용을 수월하게 할 수 있다고 생각한다. jsp에서 데이터를 저장할 수 있는 객체는 총 4개가 존재한다. 이름 용도 + 데이터 사용 범위 라이프 사이클 pageContext 해당 jsp 페이지 관련 흐름 제어 및 내장 객체 관리하는 객체 해당 jsp 페이지 내에서만 데이터 사용 가능 해당 페이지를 벗어나면 데이터 사용 불가 request 클라이언트의 요청을 객체화 한 것 request를 전달받은 페이지에서 데이터 사용 가능 페이지를 벗어나도 requst가 전달된 페이지라면 데이..
-
서블릿 데이터 저장소 - request, session, ServletContext백엔드/서블릿&JSP 2021. 1. 14. 00:26
서블릿을 이용하다보면 서블릿과 서블릿 사이 혹은 다른 리소스로 보내야할 때가 있다. 그럴때 이용할 수 있는 서블릿에서 제공하는 내장 객체가 있다. request, session, servletContext가 바로 그것이다. 2021/01/06 - [백엔드/서블릿&JSP] - javax.servlet 패키지 javax.servlet 패키지 import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; im.. sgcompu..
-
서블릿에서 한글 문자 인코딩하기백엔드/서블릿&JSP 2021. 1. 13. 12:32
문자 인코딩이란? 컴퓨터는 숫자 0,1로 모든 것을 인식한다. 그러나 사람은 0,1로 컴퓨터와 소통을 하기에는 제한적인 부분이 많다. 이에 사람들은 문자 코드란 것을 만들었다. 문자에 대응하는 숫자를 만들어 사람은 문자를 입력하되 컴퓨터는 숫자로 인식하도록 한 것이다. 하지만 이러한 문자 코드들은 나라마다 문자가 다른만큼 호환이 되지 않는 등의 문제가 있었다. 이에 따라 웹 상에선 이러한 문자들을 온전히 표현하기 위해 인코딩이란 것을 한다. 특히 한글의 경우 영어와는 문자 코드 자체가 다르고 복잡성때문에 이러한 인코딩을 하지 않으면 웹 상에서 제대로 표현되지 않는다. 인코딩 테스트입니다 어떻게 나올까요? 위와 같은 코드가 있다고 해보자. 어떠한 인코딩없이 그냥 바로 실행하면 아래와 같은 결과물이 나온다...
-
서블릿 기초 형태백엔드/서블릿&JSP 2021. 1. 13. 11:09
2020/10/30 - [백엔드/서블릿&JSP] - 서블릿(Servlet)이란? 서블릿(Servlet)이란? 서블릿이란? 자바를 기반으로 하는 웹페이지를 동적으로 만들어줄 수 있는 일종의 프로그램을 말한다. 사실 좁게 보면 서블릿이란 위와 같은 기능을 하는 자바의 클래스를 뜻한다. 넓게보면 위 sgcomputer.tistory.com 위와 같이 이전에 서블릿에 관한 글을 썼다. 간단하게 요약하면 서블릿을 만들기 위해서 HttpServlet 추상 클래스 상속 받아야 한다. 그리고 해당 추상 클래스는 서블릿 구동에 필요한 모든 것(init(), destroy(), service())이 이미 구현되있다. 그래서 아래와 같이 이클립스를 통해 서블릿을 생성하면 아래와 같은 기본 폼이 제공된다. 그리고 이걸 바로 ..
-
javax.servlet 패키지백엔드/서블릿&JSP 2021. 1. 6. 18:57
import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class Test extends HttpServlet { } 우리가 흔히 쓰는 서블릿은 위와 같이 HttpServlet라는 추상 클래스를 상속 받는다. 그리고 이러한 HttpServlet의 상속도를 보면 다음과 같다. HttpServlet 추상 클래스는 Gener..
-
HTTP의 특징과 메시지 주고 받는 방법(헤더와 바디)컴퓨터 기초/네트워크 2020. 11. 25. 00:53
HTTP란? Hyper Text Transfer Protocol의 약자로 HTML 문서를 교환, 전송하기 위한 통신 규약이다. 클라이언트가 서버에 요청(Request)하면 서버가 응답(Response)하는 방식으로 통신이 이뤄진다. WEB에서 가장 기초적인 데이터 교환 방법이며 가장 널리 쓰인다. HTTP의 특징 1. HTTP는 Stateless다. 간단히 풀어쓰면 HTTP 프로토콜은 현재 상태를 저장하지 않는다는 뜻이다. 즉 클라이언트가 한 개의 요청을 하면 한 개의 응답을 할 뿐이다. 한 개의 클라이언트가 여러 요청을 해도 그걸 저장한 후 모아서 한 개로 응답한다 이런 개념이 없다. 다만 사용자의 상태를 저장할 수 있게 도와주는 쿠키, 세션등을 이용하면 이러한 Stateless 상태를 극복할 수 있다..