본문 바로가기

분류 전체보기62

프로토콜, OSI 모델, TCP/IP 모델, 캡슐화, 역캡슐화, 헤더 | 모두의 네트워크 네트워크에서 지켜야 하는 규칙프로토콜 (protocol)네트워크에서 문제없이 통신하기 위한 규칙(약속)이다.  우리가 편지를 쓸 때를 예로 들어보자.1. 편지를 쓴다2. 편지를 우체통으로 넣는다. ---> 주소를 적고 우표를 붙이는 작업이 필요3. 우편 배달부가 우체통에서 편지를 수거한다.4. 수거한 편지를 가까운 우체국으로 가져간다.5. 편지를 분류한다.6. 우편배달부가 수신처에 가까운 우체국으로 편지를 운송한다.7. 운송된 편지를 수신처의 우편함에 넣는다.8. 우편함에서 편지를 찾는다.9. 편지의 내용을 읽는다. 이러한 과정에서는 "편지를 쓰는 규칙", "편지를 보내는 규칙", "우체국의 규칙" 등 여러 규칙이 있고, 서로 영향을 주지 않는다는 특징이 있다.프로토콜은 이러한 규칙들과 비슷한 개념이다... 2022. 4. 12.
네트워크, 패킷, 비트와 바이트, 랜(LAN), 왠(WAN), 서버(server) | 모두의 네트워크 네트워크 기초네트워크컴퓨터와 컴퓨터 간 연결을 의미한다. 단 두 대만 있어도 컴퓨터 네트워크라고 할 수 있으며, 이를 통해 컴퓨터 간 필요한 데이터(정보)를 서로 주고받을 수 있다.네트워크를 통해 컴퓨터 간 데이터(파일) 전송, 웹 사이트 열람, 메일 송/수신과 같은 일을 할 수 있다.컴퓨터 한 대만 있으면 할 수 있는 일이 제한되지만, 컴퓨터가 여러 대 연결되면 다양한 일을 할 수 있다.  인터넷전 세계의 큰 네트워크부터 작은 네트워크까지 연결하는 거대한 네트워크이다. 전 세계가 네트워크로 연결되어 있기 때문에 인터넷으로 해외 웹 사이트를 볼 수 있는 것! 패킷 (packet)웹 사이트를 보는 것도 마찬가지지만, 네트워크나 인터넷에서 데이터를 주고받으려면 규칙이 있어야 한다.웹 브라우저에서 사진과 문자.. 2022. 4. 11.
[JAVA] [디버깅] / Tomcat version 8.5 only supports J2EE 1.2, 1.3, 1.4, and Java EE 어제 포스팅 했던 에러의 연장선 Run on Server에서 Add and Remove 단계를 확인했다. 프로젝트 명 jsp_web_10에서 Tomcat version 8.5 only supports J2EE 1.2, 1.3, 1.4, and Java EE 5, 6, and 7 Web modules 이라는 에러 메세지와 함께 Configured 박스로 옮겨지지 않았다. 에러 원인 서버 버전과 Web Module 버전끼리 호환이 되지 않는 경우, 원하는 서버 버전으로 실행이 불가했다. 나는 톰캣 8.5를 다운받아 사용 중이었고, Tomcat 8.5가 Dynamic Web Module 4.0을 지원하지 않았기 때문에 발생한 오류였다. 해결 방법 첫번째 방법, Dynamic Web Module 4.0을 지원하.. 2022. 4. 8.
[JAVA] [디버깅] / 어쨌든 해결.. 했지만 세상 찝찝 나는 지금 톰캣 서버와 sql을 연결해서 JSP 웹 개발을 공부 중이다. 그러던 중, 프로젝트 하나를 war파일로 묶어 다시 열었는데, 다짜고짜 에러가..... 우리... 좋았잖아..... 자.. run하니 위 같은 상황이 나오는데... 원래는 Tomcat v8.5 Server로 Finish 버튼이 활성화되어야 한다. 뭐가 문젤까. 흠 자.. 프로젝트들을 보자. 위는 내가 공부하면서 만든 Dynamic web Project들이다. 09_1 버전을 war하여 10으로 그대로 다시 만드니, 10은 물론이고 3, 4, 5, 6, 7, 8, 9가 전부 run해도 반응이 없는 (?) 에러가 뜬다. 근데.. 09_1은 잘 된다 !? 1번 방법 상단 Project - properties - Project Facets.. 2022. 4. 7.
[JAVA] [알고리즘 문제] DFS를 이용한 미로 최단거리 구하기 문제 스틴이는 N*M 크기의 직사각형 형태의 미로에 갇혀있다. 미로에는 여러 마리의 괴물이 있어 이를 피해 탈출해야 한다. 스틴이의 위치는 (1,1)이고 미로의 출구는 (N,M)의 위치에 존재하며 한번에 한칸씩 이동할 수 있다. 이때 괴물이 있는 부분은 0으로 괴물이 없는 부분은 1로 표시되어 있다. 미로는 반드시 탈출할 수 있는 형태로 제시된다. 이때 스틴이가 탈출하기 위해 움직여야 하는 최소 칸의 개수를 구하시오. (처음과 끝 칸 포함) 입력조건 첫째 줄에 두 정수 N,M(4101010 >111111 >000001 >111111 >111111 출력 예시 >10 힌트 1.맨 처음에 (1,1)의 위치에서 시작, 시작 값은 항상 1 2. (1,1)좌표에서 상,하,좌,우로 탐색을 진행 (1,2)위치의 값을 .. 2022. 4. 6.
[JAVA] [알고리즘 문제] 버전 비교하는 프로그램 / 내 풀이, 다른 풀이 비교 문제 버전 1과 버전 2의 두 버전 번호가 주어지면 비교합니다. 버전 번호는 점 '.'으로 결합된 하나 이상의 구분된 형태로 구성됩니다. 각각의 구분된 형태는 숫자로 구성되며 선행 0을 포함할 수 있습니다. 버전 번호를 비교하려면 수정 버전을 왼쪽에서 오른쪽으로 순서대로 비교합니다. 선행 0을 무시한 정수 값을 사용하여 비교됩니다. 이것은 1과 001이 동일하다고 간주됨을 의미합니다. 버전 번호가 인덱스에서 구분된 형태로 지정하지 않으면 형태를 0으로 처리하십시오. 예를 들어 버전 1.0은 버전 1.1보다 작지만 버전 0과 버전 1은 0 버전 2, 1을 출력 - 나머지 경우는 0을 출력 예 1 입력 : versio.. 2022. 4. 5.
[JAVA] Arrays.asList 넌 누구냐 / 마침표를 기준으로 split 하기 오늘의 상황... 사용자에게 입력받고, 마침표를 기준으로 split 하여 ArrayList에 넣으려고 하는데... Arrays.asList를 사용하면 된다고? System.out.print("version1 = "); String v1 = sc.next(); System.out.print("version2 = "); String v2 = sc.next(); String[] v1_array = v1.split("."); String[] v2_array = v2.split("."); ArrayList v1_list = new ArrayList(Arrays.asList(v1_array)); ArrayList v2_list = new ArrayList(Arrays.asList(v2_array)); Arrays... 2022. 4. 4.
[JAVA][알고리즘 문제]DFS(Depth-first Search)를 활용한 얼음 틀 문제 문제 N * M 크기의 얼음 틀이 있다. 구멍이 뚫려 있는 부분은 0, 칸막이가 존재하는 부분은 1로 표시된다. 구멍이 뚫려 있는 부분끼리 상, 하, 좌, 우로 붙어 있는 경우 서로 연결되어 있는 것으로 간주한다. 이 때 얼음 틀의 모양이 주어졌을 때 생성되는 총 아이스크림의 개수를 구하는 프로그램을 작성하시오. 입력 예시 >4 5 >00110 >00011 >11111 >00000 출력 예시 >3 DFS(Depth-first Search)란? 깊이 우선 탐색이라는 알고리즘이다. "더 나아갈 길이 보이지 않을 때까지 깊이 들어간다"를 원칙으로 한다. 그래프 내의 정점을 방문한다. 마치 미로찾기 처럼. 특징은? 자기 자신을 호출하는 순환 알고리즘이다. 트리 순회(전위, 중위, 후위 순회)는 모두 DFS의 한.. 2022. 3. 31.
[일상] 벌써 코딩 공부 D+51 일차 아니 벌써 51일!? 국비지원 수업을 듣기 시작한 날로부터 디데이를 세어 보았더니 벌써 51일째다. 실 수업일은 28일째다. 실 수업일 기준 18일까지는 파이썬을 배웠고, 19일 차부터는 자바를 시작해 현재도 진도를 나가는 중. 그동안 뭘 배웠는지 마구잡이로 열거해 보겠다. 파이썬에서는 주석이 뭔지 (!!!)부터 시작해 변수, 인덱싱, 정수형, 논리형, 문자열 같은 기본 자료형, 리스트, 튜플, 딕셔너리, 셋 같은 자료형, if else문, for문이나 while문 같은 반복문, 기본적인 문법을 알고 난 후에는 알고리즘을 시작해 플로우 차트까지 그리며 탐색법을 배웠다. 후반기에는 지니, 멜론, 스타벅스 같은 유명 웹 사이트를 크롤링하는 법을 배우고, pandas를 이용해 타이타닉 사고의 사상자를 분석하여.. 2022. 3. 16.