11

[Spring] Spring Boot 프로젝트 고군분투 3주차 리뷰

2주차... 이전에 3주차 코드 리뷰를 먼저 정리해보려고 한다..! 1. Converting String to Numeric value 처음에 나의 코드는 아래와 같이 NumberFormatException에 대한 고려를 전혀 하지 않은 코드였다. 만약 nativeWebRequest.getParameter("offset")이라는 코드에서 "0L" 숫자가 아닌 문자가 섞여있다면 바로 예외 상황이 발생할 것이다. Long offset = Long.parseLong(nativeWebRequest.getParameter("offset")); ✨ 이후 예외 상황으로부터 안전한 코드를 만들기 위해서 Apache Commons에 있는 NumberUtils를 활용했다. // toLong(String str, long ..

2020.11.28

[git] local repository의 remote URL 변경

[공식 문서 참조] 1. 이전 계정의 깃 repository와 연결된 폴더로 이동 후 2. 현재 remote 정보 확인 git remote -v > origin https://github.com/USERNAME/REPOSITORY.git (fetch) > origin https://github.com/USERNAME/REPOSITORY.git (push) 3. 바꾸고자 하는 remote url을 set-url 명령어와 함께 입력 git remote set-url origin https://github.com/USERNAME/REPOSITORY.git 4. 바뀐 remote 정보 확인 git remote -v > origin https://github.com/USERNAME/REPOSITORY.git (f..

2020.11.21

[Spring] Spring Boot 프로젝트 고군분투 1주차 리뷰

1주차로 작성한 스프링 부트 프로젝트에 대해 리뷰받은 내용을 정리해보려고 한다..! 1. Controller Based Injection @RestController @RequestMapping("/api/users") public class UserRestController { @Autowired UserService userService; public UserRestController(UserService userService){ this.userService = userService; } 원래 내가 쓰던 코드였다. 하지만 여기서 ✨ UserService는 이미 생성자를 통해서 DI(Dependency Injection)되기 때문에 따로 @Autowired 표기를 하지 않아도 된다. 이렇게 Contr..

2020.11.19

[JWT] JWT 구성과 생성 과정

JWT는 Json Web Token의 약자이다 헤더.페이로드.서명 이 세 가지로 구성되어있고 각각의 요소는 '.'을 통해서 구분된다. 가장 먼저 헤더(Header)는 해당 JWT를 어떻게 검증할 지에 대한 정보를 담고있다. { "alg": "서명 시에 사용하는 알고리즘", "kid": "서명 시에 사용하는 키 식별 값(public/private key)" } 위의 JSON 객체 직렬화 → '{"alg": "알고리즘","kid": "키 식별 값"}' → UTF-8로 인코딩 → UTF-8(직렬화된 JSON객체) → Base64 URL-Safe로 인코딩→ Base64URLSafe(UTF-8 인코딩 결과) → eyAAAAAA 헤더 짜란 JSON 객체를 직렬화하고 인코딩한 최종결과가 헤더이다. (ey~~ 요론게)..

2020.11.16

[Spring] Spring Boot 프로젝트 고군분투 1주차

최근 Spring Boot 프로젝트 스터디에 들어갔는데.. 현직자들이 많은 것같았다. 따라가기가 사실 너어어어무 힘들지만 일단 다른 사람들 코드를 보면서, 그리고 멘토님 코드를 보면서 계속 공부해야겠다 스터디에서 추천해준 책인 '토비의 스프링 3.1'도 정말정말 큰 도움이 되고있다. 정말 말 그대로 스프링의 기술적인 부분보다도 스프링 자체를 이해하고싶다면 이 책은 정말 ㄹㅇ 바이블.. 주변에 벡앤드 공부하는 친구가 있다면 추천해주고 싶지만 그런 친구가 없기때문에... (훌쩍) 이 기쁨을 함께할 수 없어서 살짝 아쉽다.. 요 근래 느낀 바, 배운 점들에 대해 적어보려한다. Commit period Commit을 기능 단위로 해야한다고 말은 들었지만, 와닿지 않았다. 근데 정말 생각보다 ..

2020.11.11

[DB] SQL 문법 - 기본 함수

부스트 코스 참고 www.edwith.org/boostcourse-web-be/ concat() : 컬럼 합성 함수 dev.mysql.com/doc/refman/8.0/en/charset-repertoire.html select concat('columnA', 'columnB', 'text') as 'alias' from 'table_name'; concat 함수 실행 결과 order by() : 정렬 함수 select 'column_name' from 'table_name' order by 'column_name'; # 오름차순 정렬 select 'column_name' from 'table_name' order by 'column_name' desc; # 내림차순 정렬 select 'column_na..

2020.11.01

[ Github ] SSH 키 생성방법 - Windows

git-scm.com/book/ko/v2/Git-%EC%84%9C%EB%B2%84-SSH-%EA%B3%B5%EA%B0%9C%ED%82%A4-%EB%A7%8C%EB%93%A4%EA%B8%B0 Git - SSH 공개키 만들기 많은 Git 서버들은 SSH 공개키로 인증한다. 공개키를 사용하려면 일단 공개키를 만들어야 한다. 공개키를 만드는 방법은 모든 운영체제가 비슷하다. 먼저 키가 있는지부터 확인하자. 사용자의 SSH git-scm.com ⁕ Windows 기준 1. cmd창을 열어 ssh-keygen 실행 ssh-keygen 2. 그리고 file을 입력하라고 하는데 그냥 엔터치면 저 default 위치에 ssh키가 생성된다. Passphrase를 입력하지 않고 enter를 누르면 키 사용시에 따로 암호 입..

2020.10.26