전체 글 188

HTTP 헤더 포맷 | TIL_145

https://www.youtube.com/playlist?list=PL0d8NnikouEWcF1jJueLdjRIC4HsUlULi 위의 강의를 듣고 정리한 내용입니다 HTTP 헤더 포맷 헤더의 종류 요청과 응답 둘 다 사용할 수 있는 일반헤더 각자 요청/응답을 하는 헤더 특별한 경우에 사용하는 항목 헤더로 나뉜다 일반적인 정보를 담고 있는 일반헤더 Content-Length : 메시지 바디 길이를 나타낼 때 쓰인다 Content-Type : 메시지 바디에 들어있는 컨텐츠 종류 (text/html) 클라이언트 정보를 담고있는 요청 헤더 Cookie : 서버로부터 받은 쿠키를 다시 서버에게 보내주는 역할을 한다 Host : 요청된 URL에 나타난 호스트명을 상세하게 표시한다 HTML 1.1 버전에서는 필수로..

HTTP 요청, 응답 프로토콜 | TIL_144

https://www.youtube.com/playlist?list=PL0d8NnikouEWcF1jJueLdjRIC4HsUlULi 위의 강의를 듣고 정리한 내용입니다 HTTP 요청 프로토콜의 구조 요청 타입 URI URI이란? 인터넷 상에서 특정 자원(파일)을 나타내는 유일한 주소이다 Uniform Resource Identifier의 약자이다 -> 서버에 저장된 파일의 주소값이다 URI의 구조 scheme://host:portNum/path?query http://IP주소(도메인주소):포트/폴더이름/(요청한)파일이름 예시 http://localhost:8080/member?id=1 어떠한 원격 파일의 폴더를 호출하여 요청을하는 방식이다 도메인 주소를 IP 주소로 변환하는 것을 DNS(도메인 이름 시스템..

HTTP 메서드 | TIL_143

https://www.youtube.com/playlist?list=PL0d8NnikouEWcF1jJueLdjRIC4HsUlULi 위의 강의를 듣고 정리한 내용입니다 HTTP 메서드 요청 프로토콜의 간략한 구조 Request Line Headers 공백 Body 헤더 - Headers : 일종의 옵션이라고 생각하면 된다. 옵션이 여러 개 들어갈 수 있다 Body : 데이터를 요청할 때 보내는 추가적인 데이터가 포함된다 일반적인 HTTP 요청 프로토콜의 실제 구조 Request Line 간략한 구조 요청 타입 공백 URI 공백 HTTP 버전 -> 요청 타입과 URI를 알아야 한다 HTTP 메서드 요청 방식 메서드 종류 설명 GET 클라이언트가 서버로부터 문서를 읽어오려 할 때 사용한다 데이터를 요청할 때 ..

7계층 프로토콜 HTTP | TIL_142

https://www.youtube.com/playlist?list=PL0d8NnikouEWcF1jJueLdjRIC4HsUlULi 위의 강의를 듣고 정리한 내용입니다 7계층 프로토콜 7계층 프로토콜의 종류는 많지만, 잘 알려져 있는 프로그램은 소수이다 대표적인 예로는 HTTP 프로토콜이 존재한다 -> 웹 통신을 위한 프로토콜이다 7계층 프로토콜을 공부할 때는 byte 단위를 공부할 필요가 없다 -> 16진수로 무언가를 쓰기보다는 글자로 구성되어 있기 때문이다 웹이란 무엇인가? - 웹을 만들기 위해 사용되는 다양한 기술들 [프로토콜] HTTP -> 웹 표준은 서버에 저장되어있기 때문에 웹 브라우저로 받아온 후 실행해야한다 이때, 서버에 저장된 웹 표준의 내용을 요청하여 받아오는 것이 HTTP 프로토콜이다 ..

[기록] WARNING: An illegal reflective access operation has occurred

환경 : jdk 11, springframework 5.0.2 [로그] WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by org.springframework.cglib.core.ReflectUtils$1 WARNING: Please consider reporting this to the maintainers of org.springframework.cglib.core.ReflectUtils$1 WARNING: Use --illegal access=warn to enable warnings of further illegal reflective access operations WAR..

개인기록 2022.09.09

NAT와 포트포워딩 | TIL_141

https://www.youtube.com/playlist?list=PL0d8NnikouEWcF1jJueLdjRIC4HsUlULi 위의 강의를 듣고 정리한 내용입니다 NAT와 포트 포워딩 네트워크 주소 변환(NAT) NAT(Network Address Translation)은 IP 패킷의 TCP/UDP 포트 숫자와 소스 및 목적지의 IP 주소 등을 재기록하면서 라우터를 통해 네트워크 트래픽을 주고 받는 기술을 말한다 패킷에 변화가 생기기 때문에 IP나 TCP/UDP의 체크섬(checksum)도 다시 계산되어 재기록해야한다 NAT를 이용하는 이유는 대개 사설 네트워크에 속한 여러 개의 호스트가 하나의 공인 IP 주소를 사용하여 인터넷에 접속하기 위함이다 **꼭 사설 IP를 공인 IP로 변환하는데에만 사용하..

[기록] 인텔리제이 프로젝트 UTF-8 설정

[개요] 테스트를 하던 중 properties 파일의 인코딩이 UTF-8이 아닌 기본 설정으로 되어있어 한글이 일치하지 않아 통과를 못하는 오류가 발생했다 [해결] 인텔리제이 인코딩 타입 변경 Settings > Editor > File Encodings > Global Encoding Project Encoding Properties Files 전부 UTF-8로 변경 후 ok를 눌러준다 "Tranparent native-to-ascii conversion" 을 설정해 주면 자동으로 변환되서 표시가 된다 [적용된 모습] VM 옵션으로 설정하기 Help -> Edit Custom VM options -Dfile.encoding=UTF-8 -Dconsole.encoding=UTF-8 을 입력 "-"도 포함하..

개인기록 2022.09.05

Jdbc(ojdbc) 검색 서비스 추가하기 | TIL_140

https://www.youtube.com/playlist?list=PLq8wAnVUcTFWxwoc41CqmwnO-ZyRDL0og 강의를 듣고 정리한 내용입니다 검색 메뉴 붙이기 NoticeConsole에 추가 System.out.printf("1.상세조회/ 2.이전/ 3.다음/ 4.글쓰기 / 5.검색 / 6.종료>"); NoticeProgram switch문 수정 case 4 : //글쓰기 break; case 5 : //검색 console.inputSearchWord(); break; case 6 : //종료 System.out.println("종료합니다."); break EXIT; NoticeConsole 입력을 받을 때 2가지 키워드가 필요하다 검색어와 검색을 위한 필드(제목, 작성자 등) 검색을..

백엔드/Database 2022.09.02

Jdbc(ojdbc) 게시글 개수, 마지막 페이지 | TIL_139

https://www.youtube.com/playlist?list=PLq8wAnVUcTFWxwoc41CqmwnO-ZyRDL0og 강의를 듣고 정리한 내용입니다 마지막 페이지를 알 수 없기에 마지막 페이지를 구하는 로직이 필요하다 -> printNoticeList() 메서드의 list값을 page로 바꾼다 List list = service.getList(page); 게시글 개수 구하기 데이터 베이스에 들어있는 전체 목록의 개수를 알아야 한다 전체 목록의 개수를 알아야 몇 개의 페이지가 될 것인지 알 수 있다 -> 다음 페이지의 존재 여부를 알 수 있다 NoticeConsole 전체 개수를 관리하는 변수를 선언한다 private int count; SQL문 SELECT COUNT(ID) COUNT FRO..

백엔드/Database 2022.08.31

Jdbc(ojdbc) 페이징 쿼리 | TIL_138

https://www.youtube.com/playlist?list=PLq8wAnVUcTFWxwoc41CqmwnO-ZyRDL0og 강의를 듣고 정리한 내용입니다 페이징을 위한 쿼리 만들기 1부터 10까지의 ROWNUM을 검색하는 SQL문 SELECT ROWNUM, NOTICE. * FROM NOTICE WHERE ROWNUM BETWEEN 1 AND 10; 위 구문의 문제점 : BETWEEN 2 AND 10;인 경우 조회되지 않는다 해결법 : 서브쿼리를 이용한다(안에서 만들어진 번호) SELECT * FROM ( SELECT ROWNUM NUM, NOTICE. * FROM NOTICE) WHERE NUM BETWEEN 2 AND 10; 최신글 순서대로 정렬하기 SQL문 SELECT * FROM NOTIC..

백엔드/Database 2022.08.29