Archive: 2020

Servlet - 서블릿 생명주기와 HttpServletRequest, HttpServletResponse

앞서 서블릿을 이용해 화면에 Hello world를 찍어보는 간단한 실습을 해보았다. 이번엔 이 때 사용했던 개념들에 대해 조금 더 알아보는 시간을 가지려고 한다. 우선 서블릿이 어떻게 호출되고, 실행되는지부터 알아보자. Servlet 작동원리웹서버에 HTTP 프로토콜로 요청이 들어오면, 웹서버는 해당 요청을 파악하고, 요청에 맞는 리소스를 다시 H

Servlet - 서블릿 튜토리얼

스프링을 공부하다가 모호한 부분이 많아서 시작하게된 공부이다. 스프링 기반기술이 서블릿인데 사실 자바 언어를 사용하며 웹 애플리케이션을 개발하기 위해서는 반드시 서블릿을 사용할 수 밖에 없다. 웹 애플리케이션을 개발하기 위해서는 Http로 통신하는 애플리케이션을 개발해야하는데 서블릿은 HttpServlet 클래스를 상속받아서 Http 프로토콜로 요청과

Java8 - 람다와 함수형 인터페이스

자바 8에 람다(Lambda)가 도입되면서 자바는 객체지향언어인 동시에 함수형 언어가 될 수 있었다. 람다식을 간단히 표현하면, 메서드를 하나의 식(expression)으로 표현한 익명 함수(Anonymous function) 이다. 여기서 알아두어야 할 점은 람다가 메서드가 아니라 함수라는 점이다. 람다를 알기 전까지는 메서드와 함수를 같은 의미로

Java - File 읽고(Read) 출력(Write)하기

Java에서 파일을 입력하고, 출력해보는 예제이다. Java에서 파일을 입력하기 위해서는 FileInputStream 클래스를 사용해야 한다. 마찬가지로 입력받은 파일을 다시 새로운 파일로 생성하기 위해서는 FileOutputStream 클래스를 사용해야 한다. 사용하기 전 먼저 초기화를 해준다. 12FileInputStream fis = null;F

REST

회사에서 REST에 대한 강의를 들을 기회가 있어, 강의를 듣고 정리해보았다. ToC REST란? Why REST? RESTful API? REST API 특징 Rest API 디자인 가이드 Five clues that your api isn’t RESTful. REST 약점 RESTREST를 한 문장으로 정의하면, REST는 HTTP 프로토콜을 사

웹서버와 WAS

웹서버와 WAS 차이를 이해하기 전, Static Web과 Dynamic Web의 차이를 먼저 이해할 필요가 있다. Static Web 정적인 웹 애플리케이션이다. 클라이언트로부터 리소스 경로를 요청 받으면, 웹 서버상의 리소스(html, css, js 등의 static 리소스)를 반환하는 기능을 수행한다. 사용자의 요청에 따라 능동적으로 반환하기 보다

Git - Stash 활용법

rebase를 다루다보면, stash 기능이 필요할 때가 있다. stash는 현재 staging된 파일들이 있는 status를 잠시 저장할 때 사용하는 명령어이다. 아래의 예제를 보면서 이해해보자. git init저장소를 만들어서 a부터 d까지 이름을 각각 갖는 txt 포맷의 파일 4개를 생성했다. 그리고 a.txt만 staging 해두었다. 12$

String 객체 연산시 StringBuffer를 사용해야하는 이유

자바 프로그래밍을 처음 배우던 시기에 문자열을 반복적으로 연산하는 방법으로 String 객체를 사용하곤 했다. 사실 StringBuffer를 알게 된 바로 지금까지도… 별을 1만개 찍는 코드로 String 객체를 사용하는것과 StringBuffer를 사용하는 것의 차이를 비교해보겠다. 12345678910public class shinningStars

Ubuntu에서 JDK 설치하기

JDK를 설치하는 방법은 2가지가 있는데, default-jdk를 설치하는 경우와 add-apt-repository를 이용하여 원하는 버전의 jdk를 직접 설치하는 경우이다. JDK 설치 전, 관련 리소스 정리하기 default-jdk 설치하기 add-apt-repository 사용하여 jdk 버전 선택해서 설치 JDK 설치 전, 관련 리소스 정

Java - String 클래스 메서드 정리

String 클래스가 내장하고 있는 메서드들에 대해 정리해보았다. append() length() concat() substring() indexOf() lastIndexOf() charAt() isEmpty() replace() toUpperCase() toLowerCase() trim() split() toCharArray(