코딩 테스트에서 문자열 관리 (JAVA)
·
BackEnd/알고리즘 공부
코딩 테스트를 볼 때 문자열을 가지고 장난치는 문제가 상당히 많이 나옵니다. 문자열 문제가 나왔을 때 대처할만한 메서드들을 공부해 보려고 합니다. 문자에 대해 문자의 배열 String.charAt(int index) // 문자 하나를 가져온다. String.toCharArray() // 모든 문자를 한 번에 배열로 가져온다. charAt은 하나하나씩 호출하므로 메서드 호출에 따른 오버헤드가 있습니다. toCharArray()는 문자열 길이에 해당하는 메모리를 사용합니다. 아스키코드 아스키코드도 문제를 풀 때 정말 많이 사용했습니다. 특히 Char를 int로 바꿀 때 자주 사용했습니다. char digit = '10'; int digitToInt = digit - '0'; 대문자를 소문자로 소문자를 대문자..
스프링 부트로 채팅 서버 구현하기
·
혼자하는 프로젝트/나만의 프로젝트
이번 프로젝트 때 스프링 부트로 1 : 1 채팅을 구현해야 합니다. 그래서 여러 가지 내용을 열심히 공부해 봤습니다. 프로젝트 채팅 1 : 1 조건 고민 상담 게시판에서 채팅방이 시작됨 채팅 매칭을 누르면 채팅방이 생성 대화를 한 내용은 DB에 저장 세션 값을 가지고 있어야 한다. WebSocket을 선택한 이유 WebSocket은 양방향 실시간 통신을 제공하는 프로토콜 및 API(응용 프로그래밍 인터페이스)입니다. 일반적으로 웹 브라우저와 웹 서버 간의 실시간 통신을 위해 사용됩니다. WebSocket은 기존의 HTTP 프로토콜을 확장하여 지속적인 연결을 제공하고, 클라이언트와 서버 간에 데이터를 양방향으로 주고받을 수 있게 합니다. WebSocket을 사용하기 전 일반적으로 웹은 클라이언트에서 서버로..
스트림이란? (1)
·
BackEnd/JAVA 공부
람다식을 공부하면 람다식과 자주 같이 쓰는 것이 stream입니다. 코테에서도 stream을 잘 사용만 하면 가독성 면이나 편하게 data를 세팅할 수 있습니다. 그래서 이번에는 stream을 공부해 보려고 합니다. 아래의 내용은 이것이 자바다라는 책을 보면서 공부한 내용을 정리 했습니다. https://product.kyobobook.co.kr/detail/S000061695652 이것이 자바다 | 신용권 - 교보문고 이것이 자바다 | JAVA 17 버전으로 업그레이드해서 돌아왔다! 7년 동안 꾸준히 사랑받은 자바 베스트셀러 1위, 『이것이 자바다』 개정판!『이것이 자바다』는 기본 개념에 충실한 설명으로 2015년 product.kyobobook.co.kr 스트림이란? List를 탐색할 때는 for문으..
람다식이란?
·
BackEnd/JAVA 공부
자바로 프로젝트를 하면서 또 코테 문제를 풀면서 람다식은 자바의 엄청난 무기라는 것을 느꼈습니다. 그래서 이것이 자바다라는 책을 보면서 람다식을 공부한 내용을 정리해 봤습니다. https://product.kyobobook.co.kr/detail/S000061695652 이것이 자바다 | 신용권 - 교보문고 이것이 자바다 | JAVA 17 버전으로 업그레이드해서 돌아왔다! 7년 동안 꾸준히 사랑받은 자바 베스트셀러 1위, 『이것이 자바다』 개정판!『이것이 자바다』는 기본 개념에 충실한 설명으로 2015년 product.kyobobook.co.kr 함수형 프로그래밍이란? 함수를 정의하고 이 함수를 데이터 처리부로 보내 데이터를 처리하는 기법을 말합니다!! 데이터 처리부는 데이터만 가지고 있을 뿐, 처리 방..
토큰 기반 인증으로 로그인 업그레이드 하기(JWT)
·
혼자하는 프로젝트/나만의 프로젝트
저번 글에서는 스프링 시큐리티를 이용해 세션 기반 인증을 하였습니다. 세션 기반 인증을 사용해 사용자마다 사용자의 정보를 담은 세션을 생성하고 저장해서 인증을 합니다. 토큰 기반 인증은 서버가 토큰을 생성해서 클라이언트에게 제공하면, 클라이언트는 이 토큰을 갖고 있다가 여러 요청을 이 토큰과 함께 신청합니다. 그럼 서버는 토큰만 보고 유효한 사용자인지 검증합니다!! 토큰을 전달하고 인증받는 과정 클라이언트가 아이디어와 비밀번호를 서버에게 전달하면서 인증을 요청합니다. 서버는 아이디어와 비밀번호를 확인해 유효한 사용자인지 검증합니다. 유효한 사용자면 토큰을 생성해서 응답합니다, 클라이언트는 서버에서 준 토큰을 저장합니다. 이후 인증이 필요한 API를 사용할 때 토큰을 함께 보냅니다. 서버는 토큰이 유효한지..
스프링 시큐리티로 회원가입, 로그인 구현하기
·
혼자하는 프로젝트/나만의 프로젝트
https://product.kyobobook.co.kr/detail/S000201766024 스프링 부트 3 백엔드 개발자 되기: 자바 편 | 신선영 - 교보문고 스프링 부트 3 백엔드 개발자 되기: 자바 편 | ★ 자바 백엔드 개발자가 되고 싶다면★ 자바 언어 입문 그다음에 꼭 보세요실력을 갖춘 개발자로 성장하려면 시작이 중요합니다. 그래서 이 책은 product.kyobobook.co.kr 이번 방학 동안 이 책으로 스프링 부트 3을 공부해 보려고 합니다. 이 책은 스프링 부트 3을 사용해 웹페이지를 직접 구현해 봅니다. 그중 스프링 시큐리티로 로그인 및 회원가입을 구현하는 부분이 나옵니다. 그래서 이번 기회에 스프링 시큐리티를 이 책을 통해 공부하고 정리해 보려고 합니다. 스프링 시큐리티란? 스프..