http
-
서블릿에서 한글 문자 인코딩하기백엔드/서블릿&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())이 이미 구현되있다. 그래서 아래와 같이 이클립스를 통해 서블릿을 생성하면 아래와 같은 기본 폼이 제공된다. 그리고 이걸 바로 ..
-
세션과 쿠키(Session과 Cookie)백엔드/서블릿&JSP 2021. 1. 7. 18:37
Http의 Stateless 우리가 흔히 웹 서비스를 통해 통신할 때 Http 프로토콜을 이용하게 된다. 이때 Http 프로토콜의 큰 특징 중 하나는 상태유지없음(Stateless)라는 것이다. 간단히 말해서 클라이언트가 요청(reqeust)를 보내고 이에 대해 서버가 응답(response)을 하면 통신 종료. 즉 클라이언트가 서버에 많은 요청을 보내도 서버는 매번 새로운 요청으로 인식한다. Stateless의 한계 인터넷 초창기 대부분의 웹 서비스는 이미 만들어진 정보를 제공하는 경우가 대부분이었다. 이때는 굳이 세션, 쿠키 같은 개념이 존재할 필요가 많지 않았다. 서버는 만들어진 자료만 넘겨주면되지, 굳이 클라이언트의 상태를 기억할 필요가 없기 때문이다. 하지만 사용자 요구가 많아지고, 웹 서비스의 ..
-
HTTP의 특징과 메시지 주고 받는 방법(헤더와 바디)컴퓨터 기초/네트워크 2020. 11. 25. 00:53
HTTP란? Hyper Text Transfer Protocol의 약자로 HTML 문서를 교환, 전송하기 위한 통신 규약이다. 클라이언트가 서버에 요청(Request)하면 서버가 응답(Response)하는 방식으로 통신이 이뤄진다. WEB에서 가장 기초적인 데이터 교환 방법이며 가장 널리 쓰인다. HTTP의 특징 1. HTTP는 Stateless다. 간단히 풀어쓰면 HTTP 프로토콜은 현재 상태를 저장하지 않는다는 뜻이다. 즉 클라이언트가 한 개의 요청을 하면 한 개의 응답을 할 뿐이다. 한 개의 클라이언트가 여러 요청을 해도 그걸 저장한 후 모아서 한 개로 응답한다 이런 개념이 없다. 다만 사용자의 상태를 저장할 수 있게 도와주는 쿠키, 세션등을 이용하면 이러한 Stateless 상태를 극복할 수 있다..
-
HTTP란? WWW란?컴퓨터 기초/네트워크 2020. 10. 26. 05:53
흔히 우리가 인터넷을 할 때 특정 홈페이지를 찾아가기 위해서 위와 같이 주소창에 주소를 친다. 하지만 정작 우리가 흔히 보는 이 주소의 뜻은 잘 모르고 그동안 사용해왔다. 그냥 주소로서 인식할 뿐이지 앞의 'http'는 무엇인지 'www'는 무엇인지 몰랐다. 하지만 서버 관련 공부를 하기 전에 기초적인 지식으로 알고 가는 것은 나쁘지 않다고 생각한다. 그래서 정리한다. HTTP란? 'HTTP'란 'HyperText Transfer Protocol'의 약자로 하이퍼 텍스트를 교환,전송을 위한 통신 규약이다. 예를 들어 각각 다른 회사가 만든 컴퓨터 A와 컴퓨터 B가 있다고 가정해보자. 이 두 컴퓨터는 사양도 다르고 부품도 다르고 심지어 안에 들어가있는 프로그램마저 다르다. 이러한 상황에서 두 컴퓨터를 통신..