분류 전체보기 474

[모던자바인액션] chapter 2. 동작파라미터화란 - 파라미터로 코드 전달하기

" Modern Java In Action - 모던 자바 인 액션, 전문가를 위한 자바 8, 9, 10 기법 가이드 " 독서 스터디 후, 책 내용을 정리한 글입니다. 1) Chapter 1. 자바 8, 9, 10, 11 : 무슨일이 일어나고 있는가? 2) Chapter 2. 동작 파라미터화 코드 전달하기 3) Chapter 3. 람다 표현식 4) Chapter 4. Stream 5) Chapter 5. Stream 활용 6) Chapter 6. Stream으로 데이터 수집하기 7) Chapter 7. Stream 병렬 데이터처리와 성능 Chapter2. 동작 파라미터화로 코드 전달하기, 에서는 자주 변경되는 요구사항에 유연하게 대응할 수 있는 코드를 설계하자. 를 주된 목적으로 기술된 챕터같습니다. 변경..

[백엔드 면접 질문] CS - Web, Network 면접 질문 정리(1)

웹, 네트워크 관련 백엔드 면접 질문-답변 정리(1) 쿠키 vs 세션 쿠키란 쿠키는 클라이언트의 로컬에 Key-Value쌍이 String 형태로 저장되는 데이터 파일입니다. 브라우저가 종료된 후에도 상태가 유지됩니다. 클라이언트의 상태 정보(이름, 값, 만료 날짜 및 시간, 경로정보)를 포함하고 있습니다. 세션이란 세션은 일정 시간 같은 클라이언트로부터 들어오는 일련의 요청을 하나의 상태로 보고, 그 상태를 유지하는 기술입니다. 브라우저가 종료되기 전까지 상태가 유지됩니다. 상태 유지 수단으로 쿠키를 사용하지만, 사용자 정보를 클라이언트 로컬이 아닌 서버측에서 관리합니다. 쿠키와 세션의 필요성 HTTP 프로토콜의 경우 “Connectionless, Stateless”한 특성이 있어 요청간에 의존관계가 없..

CS 면접 준비 2022.08.07

[MySql] View Table 개념, 가이드, 성능, 조인 + Spring View Table 사용

[목차] 뷰 테이블이란? 가상테이블이란 뷰 테이블의 데이터 동기화? 뷰 테이블 생성 및 조회 시 동작 과정 뷰테이블 쓰는 이유 및 뷰테이블 성능 복합 뷰 테이블 (view table join) 뷰 테이블 장, 단점 뷰테이블 유용하게 사용될 떄 1. SQL View Table 이란 📌 뷰(View)란 데이터베이스에 존재하는 일종의 가상테이블입니다. 가상 테이블이란 이름 그대로 실제 데이터를 가지고 있지않은 테이블 의미합니다. 뷰 테이블은 데이터가 아닌, SQL 을 저장하고 있으며 그렇기때문에, 이름 그대로 View, 즉 데이터를 보여주기만하는 테이블이다. 로 이해할 수 있을 것 같습니다. VIEW와 TABLE과의 차이점은 그냥 TABLE은 실질적인 데이터가 있지만 VIEW는 데이터가 없고 SQL만 저장한다..

DataBase/Mysql 2022.08.03

[Maven] 메이븐이란, mvn clean install vs clean package

Maven 이란, xml 형식으로 이루어진 빌드 도구 입니다. maven clean, install, package 📌 clean 은 컴파일 된 결과물인 .target 폴더를 지워주는 메이븐 명령어이고 📌 install 과 package 는 프로젝트를 빌드하여 jar 실행 파일을 만들어주는 명령어입니다. Mvn install vs package mvn install 과 mvn package 의 차이점은 로컬 maven 폴더에 jar 파일을 저장해주냐 안해주냐의 차이입니다. package 는 생성된 jar파일이 .target 폴더에 위치하고 install 은 생성된 jar 파일이 .target 하위 와, 로컬 mvn 폴더 내의 repoisoty 폴더 생성됩니다. 메이븐 생명주기 (maven lifecycl..

Spring/기타 2022.07.30

HTTP HEAD 메소드

HTTP 메스드 중, HEAD 메소드라는게 있다. (전혀 몰랐다) GET 요청과 항상 동일한 결과값을 반환받아야하는 메소드이다. GET 과 HEAD 의 차이점은 1. HEAD 메소드는 GET 메소드의 요청과 동일한 응답을 요구하지만, 응답 본문을 포함하지 않습니다. 포함 되더라도, 이를 무시해야한다고 합니다. 2. HTTP 요청 시에도, GET메소드는 헤더와 데이터를 서버에게 보낸다. HEAD메소드는 헤더 정보 외에는 전송하지 않습니다. HEAD 가 GET 보다 속도가 빠른 이유 또한 ➡️ GET 과 동일한 응답을 요구하지만, 서버의 응답의 본문은 리턴되지않고, HEAD 값만 넘겨오기 때문입니다. GET Response HEAD Response ➡️ 같은 요청을 보내지만, head 는 바디에 아무것도 오..

Web-Network 2022.07.29

[모던자바인액션] chapter 1. 자바 8 이후 추가된 것

" Modern Java In Action - 모던 자바 인 액션, 전문가를 위한 자바 8, 9, 10 기법 가이드 " 독서 스터디 후, 책 내용을 정리한 글입니다. 1) Chapter 1. 자바 8, 9, 10, 11 : 무슨일이 일어나고 있는가? 2) Chapter 2. 동작 파라미터화 코드 전달하기 3) Chapter 3. 람다 표현식 4) Chapter 4. Stream 5) Chapter 5. Stream 활용 6) Chapter 6. Stream으로 데이터 수집하기 7) Chapter 7. Stream 병렬 데이터처리와 성능 1. 자바가 멀티코어 병렬성을 더 쉽게 이용할 수 있도록 진화하는 과정 1) JAVA 8 - 자바 역사상 가장 큰 변화 자바는, 자바 8을 이용해 자연어에 더 가깝게 간단..

[mac] Nginx Tomcat 연동 - nginx 스프링 내장 톰캣 리다이렉트 방법 (Proxy Server)

요거 다음으로 도커로 nginx 랑 스프링부트 띄우는건 요글을 봐주세영 https://thalals.tistory.com/343 mac 로컬환경에서 진행했습니다. ✨ Nginx 를 aws 앞에 web server 로 두고, 리버스 프록시 서버로 사용해보자 ! ! 1. nginx 요청을 spring boot 로 리다이렉트!! 현재 이전 게시물 까지 진행해서, mac 로컬 환경에서, nginx 는 8090 포트로 변경해놓은 상태고 jar 파일도 백그라운드에서 실행시킨 상태 📌 이제 이걸, nginx 8090 포트로 접속하면, spring 내장 톰캣이 띄어놓은, 8080 포트로 리다이렉트 시키고자 한다. ( 그냥 리다이렉트 시키는게 리버스 프록시를 두는 의미가 있는건가,,?) 의문을 가졌는데, Nginx 자체..

Web-Network 2022.07.24

jar 파일 생성하고, local 에서 Jar 실행하기

이 카테고리에 있으면 안되지만,, nginx 를 리버스 프록시 서버로 사용하기위해서 그냥 순서대로 가즈우ㅏ maven jar 파일 생성 하고 내보내기 참고로 JAR(Java Archive) 파일이란 .jar 확장자 파일에 Class와 같은 Java 리소스와 속성 파일, 라이브러리 및 액세서리 파일이 포함되어 있어 JAVA 어플리케이션이 동작할 수 있도록 자바 프로젝트를 압축한 파일입니다. Spring Boot 프로젝트를 Maven 으로 Jar 파일을 만들어 실행시키고자 합니다. 👉 maven 으로 jar 만드는 방법 (mvn install or mvn package) mvn install 과 mvn package 의 차이는 두 명령어로 빌드하게되면, .target 폴더안에 jar 파일이 생성되는데 ins..

Web-Network 2022.07.23

[Nginx] mac 로컬 환경에 nginx 설치 실행하기 (local os)

맥 로컬 환경으로 Nginx 처음부터 설치하고 실행하는 가이드라인 " Docker 를 사용해서 Nginx 를 웹 서버 로 앞에 두고, Spring 내장 톰캣 (WAS) 에 Nginx 포트를 변경하여 ( 8090 ) 접속해 주세요~ " 라는 온보딩 과제를 받아서 그에 대해 차근차근 공부해나가는 포스팅입니다 1. nginx 설치 brew install nginx 2. nginx 설치 확인 brew services 그냥 실행하면 현재 유저 권한으로 등록/실행된 service 목록 조회 sudo를 붙여서 실행하면 root로 등록/실행된 service목록 조회 nginx 가 생성 되었다 3. nginx 실행 (nginx 명령어 모음) 1) brew services start nginx nginx 시작 : brew..

Web-Network 2022.07.22

[프록시란] Proxy? Proxy Server? 리버스 프록시 ?

출처: https://engineer-mole.tistory.com/288 [매일 꾸준히, 더 깊이:티스토리] [설정] > [네트워크와 인터넷] > [프록시]에서 설정할 수 있다. 포워드 프록시의 장점 캐시 저장(액세스 고속화) 프록시 서버에 캐시를 저장할 수 있다. 다시 동일한 페이지를 리퀘스트 했을 때에는 캐시에 남아 있는 정보를 클라이언트에게 준다. 이것으로 사이트에 접속하는 속도가 빨라진다. URL 필터링 외부의 액세스는 프록시 서버를 경유하므로 사용자 전원의 외부 웹 사이트로의 액세스를 필터링할 수 있다. 아래의 예는, http://example1.co.jp에 에 액세스하려고 해도 해당 사이트로의 리퀘스트가 보내지지 않는다(에러용 페이지가 표시되는 등 설정에 따른 화면이 표시된다). 리버스 프록..

Web-Network 2022.07.22