로그인 황금 코드✨ 만들기 로그인에 대한 구현이 끝나간다. 이쯤에 내가 스프링부트에서 로그인을 구현하기 위해 고민했던 것들과 그것의 구현이 어떤 식으로 진행 됐는지 작성해보는 것이 좋을 것 같아 이 글을 진행해본다. 아직 초보 개발자이고 배우는 과정이라 완벽한 코드거나, 완전하지 않을 수 있다는 점을 참고해서 초보개발자가 로그인을 구현해가는 고민의 흐름(?) 정도로만 봐줬으면 좋겠다. 의견이 있으면 자유롭게 코멘트도 환영하고 있다. 이 프로젝트의 컨셉 이 프로젝트에 목적은 최대한 롬복을 이용해 상용구를 줄이고 간결한 코드를 위해 노력했다. 또한 최근에 읽었던 객체지향 관련 책에서 봤던 인상적인 글귀가 있었다. 결국에 우리가 객체지향을 사용해 설계과정을 거쳐 객체지향에 입각해 코드를 만드는 이유는 비즈니스..
세션 불일치란? 로드 밸런싱: 하나의 인터넷 서비스가 발생하는 트래픽이 많을 때, 여러 대의 서버가 분산 처리해 서버의 로드율 증가, 부하량, 속도 저하 등을 고려해 적절히 분산처리해 해결해주는 서비스이다. 스케일 아웃을 사용할 경우, 서버가 여러 대가 생기는데, 로드밸런서의 라운드 로빈 등의 로드밸런싱 전략에 의해 클라이언트가 서버1에서 세션을 저장한 후, 다음 요청을 진행했을 때, 세션이 저장된 서버 외의 다른 서버와 연결되어 기존 로그인이라던지 저장되어있던 상태가 풀리게 되는 현상을 의미한다. Sticky Session 껌딱지 전략, 담당일진 전략이다. 즉, 처음 작업이 요청에 대한 응답을 준 서버에서 해당 클라이언트의 작업을 담당한다. 즉, 클라이언트가 서버1에서 로그인 작업을 통해 세션을 생성했..
학습목표 롬복이란 롬복의 원리 설치 롬복 기능 설명 롬복 도큐먼테이션 정리 1부이다. 도큐먼트 순서대로 업데이트할 예정이다. 롬복이란? 롬복은 편집기에 자동으로 연결되고, 도구를 빌드해 java 를 멋지게 꾸미는 java 라이브러리입니다. 다른 getter 또는 setter, equals 메소드를 다시 작성하지 마세요. 하나의 주석을 이용해 완전한 기능의 빌더가 있고, 로깅 변수를 자동화 하는 등의 작업을 수행할 수 있습니다. 라는 것이 공식페이지 의 설명이다. 즉, 자바의 보일러 플레이트 코드(라 쓰고 상용구라 읽는다. ) 를 생성하는 자동화 작업을 수행함으로써 보일러 플레이트 코드를 제거할 수 있다. 알면 알수록 아주 효율적이라는 이야기이다! 그러니 진지하게 각. 잡고 이 블로그를 읽어주었으면 좋겠다..
우리 어플리케이션이 성공했다하자. (우와🤩🤩🤩) 많은 유저가 동시접속하는 서비스가 되어 기존에 사용하던 서버에 한계가 있을때, 인프라를 업그레이드하는 방법은 스케일 업과 스케일 아웃이 있다. 스케일 업(= 수직 스케일링) 스케일 업이란, 우리가 현재 사용하고 있는 서버 자체의 성능을 증가시켜 처리 능력을 향상시키는 것으로 cpu, 메모리 업그레이드 등으로 서버의성능을 높이는 방식이다. 스케일업은 비교적으로 쉽고, 실천하기도 쉬운 방법이다.실제로 우리가 사용하는 컴퓨터가 느려졌다면, 성능이 더 좋은 새로운 컴퓨터를 구매하는 것이다. 한 대의 서버에서 모든 데이터를 처리하기 때문에, 데이터 갱신이 빈번하게 일어나는 경우 적합하다. 정합성을 유지하기 어려운 경우 OTLP 데이터베이스 서버 aws 의 경우 버튼..
이번 시간에는 MyBatis-Spring-Boot-Starter 의 사용법에 대해 알아보겠습니다. MyBatis-Spring-Boot-Starter(http://mybatis.org/spring-boot-starter/mybatis-spring-boot-autoconfigure/)를 참고했습니다. 다른 참고 문헌은 페이지 하단에 소개되어있습니다. 바쁘신 분들은 부터 참고하세요. 사용 라이브러리 lombok org.mybatis.spring.boot mybatis spring-boot mysql MyBatis란? 마이바티스는 개발자가 지정한 SQL , 저장 프로시저, 그리고 몇 가지 고급 매핑을 지원하는 퍼시스턴스 프레임워크입니다. 마이바이트는 JDBC 로 처리하는 상당 부분의 코드와 파라미터 설정, 결과..
목표 자바의 Input과 Ontput에 대해 학습하세요. 학습할 것 (필수) 스트림 (Stream) / 버퍼 (Buffer) / 채널 (Channel) 기반의 I/O InputStream과 OutputStream Byte와 Character 스트림 표준 스트림 (System.in, System.out, System.err) 파일 읽고 쓰기 입출력이란? 입출력(I/O)이란 Input 과 Output의 약자로 입력과 출력을 말한다. 즉, 컴퓨터 내부 또는 외부 장치와 프로그램간의 데이터를 주고받는 것을 말한다. 예) 키보드로 데이터 입력받기, System.out.println() 을 이용해 화면에 출력하기 스트림, 버퍼, 채널 기반의 IO 스트림 FIFO 단방향이라 입력 스트림과 출력 스트림을 별도로 해야한..
Map은 key와 value를 쌍으로 저장하는 자료구조 키는 중복될 수 없고, 값은 중복될 수 있다. import java.util.HashMap; import java.util.Iterator; import java.util.Map; import java.util.Set; public class MapExam { public static void main(String[] args) { // Key, Value가 모두 String 타입인 HashMap인스턴스를 만듭니다. Map map = new HashMap(); // key와 value값을 put으로 저장합니다. map.put("001", "kim"); map.put("002", "lee"); map.put("003", "choi"); // 같은 ke..
목표 자바의 애노테이션에 대해 학습하세요. 학습할 것 (필수) 애노테이션 정의하는 방법 @retention @target @documented 애노테이션 프로세서 마감일시 2021년 2월 6일 토요일 오후 1시까지. 애노테이션이란? 애노테이션, 즉 Annotation은 클래스나 메소드 선언 시에 @ 를 사용하는 것을 말한다. Annotation은 어노테이션, 애노테이션, 메타데이터(Metadata) 등으로 불린다. Jdk 5부터 등장했다. 애노테이션의 사용 컴파일러에게 정보를 알려주기 컴파일할 때와 설치시의 작업 지정 실행할 때 별도의 처리가 필요할 때 애노테이션은 클래스, 메소드, 변수 등 모든 요소에 선언 가능하다. java.lang.annotion 안에 들어있다. 애노테이션의 용도 ( 용도를 나타내..
- Total
- Today
- Yesterday
- pycharm
- 자바인강
- 자스계의백과사전
- 자바 인강이 듣고 싶다면 => https://bit.ly/3ilMbIO
- 주피터노트북 설치
- 파이참
- linter
- EC2
- https://cupjoo.tistory.com/96
- 배포
- 패스트캠퍼스
- 쿠버네티스
- 세션불일치
- 디비
- 스프링 프레임워크 핵심 기술
- AWS
- hot
- 참고 링크
- 자바 인강
- vim
- 마크다운
- 패스트 캠퍼스
- django
- CKA
- 자바
- 쉘스크립트
- 크론탭
- 언제나 함께해요
- 환경세팅
- 유용한웹사이트
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |