Programming (163) 썸네일형 리스트형 [Web] DNS(Domain Name System) DNS 인터넷상에서는 IP 주소로 통신 상대의 컴퓨터를 식별한다. 하지만 일반적으로 브라우저의 주소창에 입력하는 URL에 IP 주소 대신 도메인명을 입력한다. 도메인명을 IP 주소로 변환하는 DNS(Domain Name System)를 사용하기 때문이다. DNS는 도메인명과 IP 주소의 대응표를 가진 컴퓨터(DNS 서버)를 인터넷상에 배치해 놓고 DNS 서버를 통해 도메인명에 대응하는 IP 주소를 얻는다. 윈도우 명령 프롬프트를 통해 직접 DNS 서버에 문의할 수도 있다. 명령 프롬프트에서 아래와 같이 nslookup 명령어 뒤에 도메인명을 입력하면 도메인명에 대응하는 IP 주소를 얻을 수 있다. nslookup [도메인명] 네이버(www.naver.com)의 도메인명에 대응하는 IP 주소는 다음과 같다.. [Web] Cookie 그리고 Session HTTP와 FTP 웹 애플리케이션 통신에 사용되는 HTTP는 무상태(Stateless), 상태를 가질 수 없는 특징을 가지고 있다. 상태를 유지하는(Stateful) FTP와는 상반된다. HTTP와 FTP의 차이점은 일반 양복점과 맞춤 양복점의 차이점과 비슷하다. HTTP는 일반 양복점이다. 같은 손님이 두 번 세 번 방문해도 점원은 손님에게 "어떤 스타일을 찾으십니까?"라는 질문을 할 것이다. 즉 무상태다. FTP는 맞춤 양복점이다. 찾아온 손님의 정보를 기록해 놓기 때문에 어떤 스타일을 좋아하는지 파악하고 있다. 따라서 손님이 "지난번과 비슷한 것으로 부탁합니다."라고 해도 충분히 알아들을 것이다. 이전의 요청에 입각해 대응하기 때문이다. 즉 상태 유지다. HTTP의 등장배경 HTTP 등장 이전에 파.. [Ubuntu] 메이븐 프로젝트 배포 및 자동화(with 톰캣) Tomcat 웹 서버를 별다른 디렉토리 설정 없이 포트 번호만 입력해서 접속하면(ip 주소:8080) Tomcat 폴더의 webapps/ROOT 디렉토리의 웹 애플리케이션이 서비스 된다. 서버에 톰캣 설치 후 ROOT 디렉토리를 보면 기본 리소스가 모여있는 것을 확인할 수 있다. 따라서 본인이 구현한 웹 애플리케이션을 Tomcat을 통해 배포하고 싶다면 Tomcat 폴더의 webapps/ROOT 디렉토리에 배포를 원하는 웹 애플리케이션을 위치시키면 된다. 작업환경 Ubuntu 18.04.6 LTS Tomcat 8.5.73 Apache Maven 3.8.4 Git clone 배포를 원하는 Git Repository를 clone 한다. clone [repository 주소] 메이븐 빌드 메이븐 프로젝트이기 .. [Ubuntu] 톰캣 설치 및 경로(PATH) 설정 Ubuntu 18.04.6 LTS 버전 기준으로 작성되었습니다. 톰캣 다운로드 다운로드 링크 주소를 가지고 터미널 안에서 톰캣 설치를 진행할 것이다. 아래 링크를 통해 톰캣 다운로드 링크 주소를 얻을 수 있다. https://tomcat.apache.org/ Apache Tomcat® - Welcome! The Apache Tomcat® software is an open source implementation of the Jakarta Servlet, Jakarta Server Pages, Jakarta Expression Language, Jakarta WebSocket, Jakarta Annotations and Jakarta Authentication specifications. These spe.. [Oracle] SQL*Plus 쿼리 출력 방법 설정 SQL Plus는 오라클에서 제공하는 기본 개발 툴이다. 데이터베이스를 운영할 때 발생할 수 있 는 문제에 대비하여 사용자 환경에 구애받지 않고 사용할 수 있는 장점이 있다. SQL Plus는 오라클을 설치할 때 함께 설치되기 때문에 따로 설치할 필요가 없다. Line Line 설정은 쿼리 출력 시 한 줄에 몇 글자를 출력할 것인지 설정한다. set linesize 글자 수 Line 사이즈가 짧다면 아래와 같이 지정된 길이가 초과되면 컬럼이 아래로 넘어가 버려서 가독성이 낮다. Line 사이즈를 다시 조정했다. 이제 길이 초과로 컬럼이 아래로 넘어가지 않아서 가독성이 이전보다 높아졌다. Page Page 설정은 쿼리 호출 시 한 페이지에 몇 개의 쿼리 결과를 보여줄 것인지를 설정한다. 따라서 100개 이.. [Servlet&JSP] Starting Tomcat v8.5 Server at localgost failed to start 서블릿 구현 중 서버가 실행되지 않고 Starting Tomcat v8.5 Server at localgost failed to start 에러 메시지가 출력되면 두 개 이상의 중복 매핑된 서블릿 url-pattern이 존재하는지 찾아보자. web.xml에 설정되었든지 @WebServlet() 어노테이션으로 설정해 놓았든지 찾아보자. 본인의 경우 서로 다른 패키지의 ThirdServlet 이라는 동일한 서블릿 클래스에 /third 라는 동일한 url-pattern을 설정했기 때문에 에러가 발생했다. 이에 대해 Console에서 친절하게 알려주고 있다. 중복을 제거한 후 서버 재시작. 문제가 해결되었다. 본인의 케이스 이외의 해결 방법으로는 설치된 서버 제거 후 다시 설치하는 방법을 추천하던데, 상황에 따.. MIME type MIME(Multi-purpose Internet Mail Extensions) type은 초기 인터넷 환경에서 텍스트, 오디오, 비디오, 이미지 등 다양한 데이터를 e-mail로 주고받기 위해 개발되었다. 이후 용도가 확장되어 웹 전체에 사용되고 있다. 웹 브라우저가 서버와 요청/응답에 대한 작업을 할 때 HTTP 헤더(header) 값을 얻을 수 있는데, 이 헤더 속에 데이터 형식을 지정한 Content-Type을 보면 요청 데이터에 대한 MIME type이 명시되어 있다. 예를 들어, GIF 이미지 파일이라면 MIME type이 image/gif로, JPEG 이미지라면 image/jpg로 표시되어 header 정보에 있을 것이다. HTTP 헤더의 Content-Type에 대한 자세한 정보는 아래 링.. [Servlet&JSP] PrintWriter out = response.getWriter(); 의 동작 원리 클라이언트로부터 Servlet으로 요청이 들어오면 요청(Request)을 파악한 후 응답(Response)을 전달한다. Servlet으로 들어온 요청을 텍스트(HTML) 형태로 응답을 보내려면 아래와 같이 응답으로 내보낼 출력 스트림을 얻어내야 한다. @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { PrintWriter out = resp.getWriter(); out.print(""); out.print("have a nice day"); out.print(""); out.close(); } 우리는 여기서 아래 코드에 주목해야 한다. Pr.. 이전 1 ··· 5 6 7 8 9 10 11 ··· 21 다음