전체 글

전체 글

    HTTP

    HTTP

    이 글은 인프런 김영한 님의 강의 '모든 개발자를 위한 HTTP 웹 기본 지식'을 바탕으로 정리한 내용입니다. HTTP (HyperText Transfer Protocol) HTTP는 HTML과 같은 하이퍼미디어 문서를 전송하기위한 애플리케이션 계층 프로토콜이다. HTML뿐만 아니라 요즘에는 거의 모든 형태의 데이터 전송이 가능하다. 그래서 지금은 HTTP의 시대이다. HTTP의 역사로 놓고 보면 여러 버전이 있지만 HTTP/1.1 버전을 많이 사용하고 주요한 기능들이 다 들어있다. HTTP/2나 HTTP/3 버전도 HTTP/1.1에서 성능을 개선한 버전이다. HTTP는 클라이언트-서버 구조, 무상태성, 비연결성, HTTP 메시지, 단순함, 확장 가능이라는 특징을 가지고 있다. 클라이언트-서버 구조는 클..

    백준 1620. 나는야 포켓몬 마스터 이다솜

    백준 1620. 나는야 포켓몬 마스터 이다솜

    ○ 문제 요약 입력 값에 따른 결과 값을 출력해주자. ○ 문제 풀이 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.Arrays; import java.util.HashMap; import java.util.StringTokenizer; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st ; st = ne..

    웹 기본 지식

    웹 기본 지식

    프로그래밍에 공부를 하기 전에는 웹사이트가 내가 요청한 페이지를 어떻게 응답해주는지 관심조차 없었다. 하지만 웹 개발에 대한 목표가 생기고 공부를 하면서 알아가는 것이 생겼고 웹을 사용하면서 이전에는 보이지 않는 것들이 조금씩 보이고 있다. 그럼에도 비전공자이기 때문에 들어 보았지만 남에게 뭐라고 설명하기 어려웠던 부분들에 대해 포스팅을 하려고 한다. (인프런에서 김영한 님의 강의를 듣고 공부한 내용을 정리한 글입니다.) IP(Internet Protocol) '인터넷에 서로 다른 두 개의 컴퓨터가 있고 이 둘이 어떻게 통신을 하지?'라는 의문을 가지는 사람이 분명 있을 것이다. 컴퓨터가 세상에 두 개만 있다고 생각하면 사실 별로 어려운 질문은 아니라고 생각한다. 하지만 이 세상에 컴퓨터가 두 개만 있는..

    백준 10816. 숫자 카드2 (JAVA)

    백준 10816. 숫자 카드2 (JAVA)

    ○ 문제 요약 상근이는 숫자 카드를 N개 가지고 있다. 다음으로 상근이가 가지고 있는 숫자 카드가 몇 개인지 구해야 할 M개의 정수가 주어진다. 주어진 정수를 상근이가 몇 개 가지고 있는지 출력하자. ○ 문제 풀이 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.Arrays; import java.util.StringTokenizer; public class Main { static int[] arr; public static void main(String[] args) throws IOException { BufferedReader br = new Buff..

    백준 1920. 수 찾기(JAVA)

    백준 1920. 수 찾기(JAVA)

    ○ 문제 요약 N개의 정수의 값이 M개의 정수를 가진 배열에 포함되어 있는지 출력해라. ○ 문제 풀이 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.Arrays; import java.util.StringTokenizer; public class Main { static int[] arr; public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer s..

    [intelliJ + gradle + spring boot] 오라클 연동과 마이바티스 의존성 추가

    [intelliJ + gradle + spring boot] 오라클 연동과 마이바티스 의존성 추가

    앞에서 JSP 사용을 위한 설정을 해주고 뷰가 잘 나오는지 확인을 했으니 이번 포스팅에서는 RDBMS와 연동을 하고 DB에 있는 데이터를 가지고 오기 위한 용도로 쓸 마이바티스를 사용하기 위해 의존성 추가하는 과정을 쓰려고 한다. 커넥션 풀 설정 spring.datasource.driver-class-name=oracle.jdbc.driver.OracleDriver spring.datasource.url=jdbc:oracle:thin:@[호스트]:[포트번호]/[DB명] spring.datasource.username=[사용자명] spring.datasource.password=[암호] application.properties에 위처럼 추가해주면 driver-class-name 부분이 위 그림과 다르게 빨..

    [intelliJ + gradle + spring boot] JSP 프로젝트 시작하기 (HiPlanner)

    [intelliJ + gradle + spring boot] JSP 프로젝트 시작하기 (HiPlanner)

    포트폴리오에 넣을 프로젝트가 없다 보니 지인의 추천을 받아서 플래너를 만드는 프로젝트를 하기로 했다. 이 프로젝트를 하려고 이것저것 알아본 결과 국비 학원 출신 강사님한테 교육을 받았다 보니 아무래도 현업에 종사하시는 분들보다 기술의 발전이 더딘 거 같다는 느낌이 들었다. 지금 생각해보면 국비 학원은 대부분 전자정부 프레임워크를 사용해서 공공 SI로 취업을 시키다 보니 현재 많이 사용하는 기술이나 이런 거에 대해 둔감해질 수밖에 없을 거 같다. 그래서 교육 때 배운 기술들이 다 오래된 기술이라는 걸 알고 조금 충격을 받았지만 기술의 변화가 빠른 IT에서 살아남으면서 이전보다 더 관심을 갖고 먼저 찾아보는 습관을 들여야겠다. 그래도 현재 지향하는 목표가 백엔드 개발자를 목표로 하기 때문에 JSP를 써서 프..

    프로그래머스. 체육복(JAVA)

    문제 설명 점심시간에 도둑이 들어, 일부 학생이 체육복을 도난당했습니다. 다행히 여벌 체육복이 있는 학생이 이들에게 체육복을 빌려주려 합니다. 학생들의 번호는 체격 순으로 매겨져 있어, 바로 앞번호의 학생이나 바로 뒷번호의 학생에게만 체육복을 빌려줄 수 있습니다. 예를 들어, 4번 학생은 3번 학생이나 5번 학생에게만 체육복을 빌려줄 수 있습니다. 체육복이 없으면 수업을 들을 수 없기 때문에 체육복을 적절히 빌려 최대한 많은 학생이 체육수업을 들어야 합니다. 전체 학생의 수 n, 체육복을 도난당한 학생들의 번호가 담긴 배열 lost, 여벌의 체육복을 가져온 학생들의 번호가 담긴 배열 reserve가 매개변수로 주어질 때, 체육수업을 들을 수 있는 학생의 최댓값을 return 하도록 solution 함수를..

    백준 7576. 토마토 (JAVA)

    백준 7576. 토마토 (JAVA)

    ○ 문제 요약 익지 않은 토마토들은 상, 하, 좌, 우에 익은 토마토의 영향을 받아 익게 된다. 상자에 있는 토마토가 모두 익은 토마토가 되려면 며칠이 지나야 하는지 출력해라. ○ 문제 풀이 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.LinkedList; import java.util.Queue; import java.util.StringTokenizer; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new Buffere..

    프로그래머스. 크레인 인형뽑기 게임(JAVA)(스택)

    프로그래머스. 크레인 인형뽑기 게임(JAVA)(스택)

    문제 설명 게임개발자인 "죠르디"는 크레인 인형뽑기 기계를 모바일 게임으로 만들려고 합니다. "죠르디"는 게임의 재미를 높이기 위해 화면 구성과 규칙을 다음과 같이 게임 로직에 반영하려고 합니다. 게임 화면은 "1 x 1" 크기의 칸들로 이루어진 "N x N" 크기의 정사각 격자이며 위쪽에는 크레인이 있고 오른쪽에는 바구니가 있습니다. (위 그림은 "5 x 5" 크기의 예시입니다). 각 격자 칸에는 다양한 인형이 들어 있으며 인형이 없는 칸은 빈칸입니다. 모든 인형은 "1 x 1" 크기의 격자 한 칸을 차지하며 격자의 가장 아래 칸부터 차곡차곡 쌓여 있습니다. 게임 사용자는 크레인을 좌우로 움직여서 멈춘 위치에서 가장 위에 있는 인형을 집어 올릴 수 있습니다. 집어 올린 인형은 바구니에 쌓이게 되는 데,..