본문 바로가기

전체 글

(36)
[Servlet] 서블릿과 JSP란? 자바로 웹 개발을 공부하면 반드시 공부하는 것이 스프링 Web MVC 프레임워크(이하 스프링 MVC)다. 그만큼 스프링 MVC는 웹 애플리케이션을 개발함에 있어서 필요한 다양한 기술적 편의를 제공한다. 그중에서 가장 강력한 부분이 Bean이 아닐까 싶다. 스프링 MVC를 사용해서 웹 애플리케이션 개발 하다 보면 간혹 가다 만나는 것이 서블릿(Servlet)과 JSP(Java Server Pages)이다. 서블릿? JSP? 간단하게 설명하자면, 서블릿은 Java EE 기술 스택 중 하나로 서버에서 동적으로 클라이언트의 요청에 대한 응답을 처리할 수 있는 API들을 정의한 집합이다. JSP의 경우 서블릿과 같은 맥락이지만 화면을 처리하는 역할에 초점이 맞추어져 있다. 이전에 웹 애플리케이션은 정적인 리소스(..
[짧은 책 리뷰] 스프링 프레임워크 첫걸음 제목: 스프링 프레임워크 첫걸음부제: 그림과 실습으로 쉽게 배우는 스프링 프레임워크 완벽 입문서저자: 주식회사 후루네스 키노시타 마사아키 스프링 프레임워크 첫걸음스프링 프레임워크를 처음 시작하는 분들을 위해 초보자의 눈높이에 맞춰 스프링 프레임워크를 설명한다. 풍부한 그림과 실습을 통해 스프링 프레임워크에 관한 사전 지식이 없더라도 쉽게 이www.aladin.co.kr 웹 애플리케이션을 개발할 수 있는 프레임원드와 라이브러리는 다양하다. 그중에서 자바를 사용해서 개발할 수 있는 가장 강력한 프레임워크는 단연 Spring(이하 스프링) 일 것이다. 현재 많은 기업에서 스프링 프레임워크를 사용해서 애플리케이션을 개발 및 운영하고 있다. 스프링 프레임워크는 자바 개발 환경에서 사용되는 프레임워크로 개발을 편..
[짧은 책 리뷰] 요즘 우아한 개발 먼저, 해당 서평은 골든래빗으로 부터 책을 증정받아 작성되었음을 알려드립니다. 배달 플랫폼에는 다양한 플랫폼이 있지만, 가장 먼저 생각나는 것은 배달의 민족입니다.'배달의 민족'은 우아한 형제들이라는 개발사가 개발한 플랫폼으로, 대한민국의 푸드테크 혁신의 시작점이며 지금도 지속적인 성장을 하고 있습니다.만약, 개발자이거나 개발에 관심이 있다면 우아한 형제들에 대해서 많은 관심이 있을 것입니다. 필자도 개발자로서 우아한 형제들에 대해서 많은 관심이 있습니다.필자가 생각하는 우아한 형제들은 '개발자가 일하기 좋은 회사', '공유하는 것에 진심인 회사'입니다. 우아한 형제들은 2016년부터 약 7년이라는 기간 동안 기술 블로그를 운영하고 있습니다. 블로그에는 기술적인 고민과 해결 방법, 세미나 자료 등 정말 ..
[짧은 책 리뷰] 모두의 네트워크 제목: 모두의 네트워크부제: 10일 만에 배우는 네트워크 기초저자: 미즈구치 카츠야 모두의 네트워크초보자와 비전공자를 위한 가장 쉬운 네트워크 입문서. 네트워크의 개념, 비트, 바이트부터 OSI 계층, 무선 랜 구조까지 160개의 일러스트와 유쾌한 캐릭터들의 대화로 설명해 그림책을 읽듯 쉽고www.aladin.co.kr 먼저, 모두의 네트워크는 입문자를 위해서 쉽고 간결하게 네트워크에 대해서 풀어갑니다. 만약 네트워크에 대해서 어느 정도 이해가 있다면 보다 난이도가 있는 서적을 추천드립니다. 네트워크란 단어는 개발에 관심을 갖지 않아도 자주 접할 수 있는 단어입니다. 네트워크는 점과 점들의 연결을 의미할 수 있고, 오늘날 우리는 전 세계의 모든 점이 연결된 인터넷이라는 네트워크에서 많은 시간을 보내고 ..
[JAVA] String constant pool이란? 이전 글 참고: 2023.10.12 - [Java] - [JAVA] String 클래스의 특징 [JAVA] String 클래스의 특징 먼저 String 클래스가 무엇인지 간단히 알아보자. String은 자바가 제공하는 클래스 중에서 문자열을 다루는 클래스다. String 클래스의 객체를 생성하는 방법은 두 가지가 있는데, new 키워드 통해 ditto-dev.tistory.com 이전 글에서 Java의 String 클래스의 특징을 알아볼 때, 객체의 공유 특성을 설명하면서 String constant pool에 대해서 언급했다. 이번 글에서는 String constant pool에 대해서 설명하고자 한다. 먼저, String constant pool은 문자열이 저장되어 있는 공간으로 문자열 연산의 성능..
[JAVA] String 클래스의 특징 먼저 String 클래스가 무엇인지 간단히 알아보자. String은 자바가 제공하는 클래스 중에서 문자열을 다루는 클래스다. String 클래스의 객체를 생성하는 방법은 두 가지가 있는데, new 키워드 통해 생성자의 입력 매개변수로 문자열을 전달하는 방법과 문자열 리터럴 방법이 있다. String text1 = new String("new 키워드"); // new 키워드 String text2 = "리터럴"; // 문자열 리터럴 이때 두 가지 방법 모두 메모리에 저장되는 방식은 동일하다. String은 참조 자료형이기 때문에 실제 데이터(문자열)는 힙 메모리에 위치하고, 참조 변수 text1은 힙 메모리의 데이터를 가리키게 된다. String 클래스는 다른 클래스와는 다르게 두 가지의 특징이 있다. ..
[짧은 책 리뷰] 객체지향의 사실과 오해 제목: 객체지향의 사실과 오해부제: 역할, 책임, 협력 관점에서 본 객체지향저자: 조영호 객체지향의 사실과 오해위키북스 IT Leaders 시리즈 23권. 객체지향이란 무엇인가? 이 책은 이 질문에 대한 답을 찾기 위해 노력하고 있는 모든 개발자를 위한 책이다.www.aladin.co.kr 만약 프로그래밍은 한 번이라도 배운 적이 있다면, 객체지향이라는 단어를 접해본 적 있을 것입니다.그리고 객체지향을 클래스로 설명하는 글을 본 적이 있을 것입니다.하지만 객체지향을 공부할수록, 즉 상속과 다형성 등에 대해서 학습할수록 객체지향의 패러다임을 클래스로 설명하는 것에 묘한 괴리가 있다는 것을 느끼는 사람도 있을 수 있다고 생각합니다. 저도 공부를 하면서 혼란스럽고 정리되지 않는 묘한 불편함이 있었습니다. 객..
[JAVA] 직렬화(Serialization)란? 이번에 채팅 앱 프로젝트를 진행하면서, Redis를 사용하게 되었습니다. public class RedisTemplate extends RedisAccessor implements RedisOperations, BeanClassLoaderAware { /** * Sets the key **serializer** to be used by this template. Defaults to {@link #getDefaultSerializer()}. * @param serializer the key serializer to be used by this template. */ public void setKeySerializer(RedisSerializer serializer) { this.keySerializer ..