본문 바로가기

TIL(Today I Learned)

(137)
TIL-230707 📝오늘 공부한 것 스파르타코딩클럽 Spring 숙련주차 2주차 1~13 강의 듣기 알게 된 점❗ [RestTemplate의 get요청] Client입장 서버 - UriComponentsBuilder를 사용하여 URI를 만들 수 있음. - getForEntity는 get방식으로 해당 URI의 서버에 요청을 진행 - 요청의 결과값에 대해서 직접 JSON TO Object를 구현 할 필요없이 자동으로 처리 [RestTemplate의 post요청] Client입장 서버 - UriComponentBuilder의 expand를 사용하여 {query} 안의 값을 동적으로 처리 - RestTemplate의 postForEntity는 Post방식으로 해당 URI의 서버에 요청을 진행 [RestTemplate의 excha..
TIL-230706 📝오늘 공부한 것 스파르타코딩클럽 Spring 강의 - Spring Security, Validation 복습 알게 된 점❗ [Spring Security] Spring 서버에 필요한 인증 및 인가를 위해 많은 기능을 제공해주는 프레임워크 [Filter Chain] - Spring에서 모든 호출은 DispatcherServlet을 통과하게 되고 이후에 각 요청을 담당하는 Controller로 분배 - 이 때, 각 요청에 대해서 공통적으로 처리해야할 필요가 있을 때 DispatcherServlet 이전에 Filter단계가 필요 - Spring Security도 인증인가 처리를 위해 Filter를 사용, FIlterChainProxy를 통해 상세로직을 구현 [UsernamePasswordAuthenticat..
TIL-230705(로그인 기능 구현하기) 📝오늘 공부한 것 "회원가입, 로그인 기능이 추가된 나만의 항해 블로그 백엔드 서버 만들기" 📌요구사항 시도해 본 것들💦 & 💯해결 로그인 기능까지 구현하고 요구사항에 맞게 수정하는 중 토큰을 검사하여, 유효한 토큰일 경우에만 게시글 작성 가능 제목, 작성 내용을 저장하고 저장된 게시글을 Client 로 반환하기(username은 로그인 된 사용자 부분에서 로그인을 하면, JWT 이 생성되고, 그 생성된 토큰의 유효성을 확인하는 if문을 작성한 뒤 유효한 토큰일 경우에 게시글을 작성할 수 있도록하면 되겠다!라는 생각은 들었지만,,유효한 토큰일 경우에만 게시글 작성하는 부분에서 막혔다. 원래 게시글 작성코드에서는 username, password, title, contents를 모두 작성을 한 뒤 게시글을..
TIL-230704(회원가입 기능 구현하기) 📝오늘 공부한 것 스프링 부트로 블로그에 회원가입 기능 구현하기 ⛔문제점 & 시도해 본 것들💦 그리고.. 💯해결 ① 어제까지만 해도 잘 되던 프로젝트가 오늘 Fostman으로 확인하려했더니 갑자기 런타임에러... [에러 메시지] 전에도 dispatcherServlet에러가 떴었던 적이 있는데 server.port로 포트번호를 바꿨더니 잘 잘동했었다. 그래서 이번에도 포트를 사용중이어서 그런가,,하고 8082로 바꿔보았다. 그래도 여전히 해결되지 않은 에러ㅠ 구글링을 해서보니 다들 DB문제, 초기화. 주입문제였다. 혹시나 해서 다 확인해봤더니 DB생성도 잘 되어 있고, final잘 붙어있고, 빈 잘 주입되고 있고...뭐가 문제야ㅠㅠㅠㅠ 했더니 나는 바보였어,,, Fostman에 api주소를 잘못입력했던 것..
TIL-230703(윈도우/ EC2에 Spring, Database 연동하여 배포하기(1)) 📝오늘 공부한 것 EC2에 Spring, Database 연동하여 배포하기 ⛔문제점 시험을 위해 ec2에 Spring, Database를 연동하여 배포하는 법을 알아야했다. 그래서 https://bcp0109.tistory.com/356 AWS 1편: EC2 생성 후 Spring Boot 띄우기 Overview AWS EC2 인스턴스를 생성하고 Spring Boot 서버를 띄워보는 것까지 진행합니다. 주 목표는 서버를 외부에 제공하는 거라서 따로 배포 시스템을 구축하지 않고 단순히 빌드 파일을 복사해서 수 bcp0109.tistory.com https://bcp0109.tistory.com/357 AWS 2편: RDS 생성 후 EC2 와 연동 Overview 지난 포스팅에서는 AWS 에서 EC2 인스턴스..
TIL-230630 📝오늘 공부한 것 스파르타코딩클럽 Spring 숙련주차 1주차 ~9 강의 듣기 알게 된 점❗ [Bean을 수동 등록을 해야할 때] - 기술적인 문제나 공통적인 관심사를 처리할 때 사용하는 객체들을 수동으로 등록하는 것이 좋음. - 공통 로그처리와 같은 비즈니스 로직을 지원하기 위한 부가 적이고 공통적인 기능들을 기술 지원 Bean이라고 부르고 수동등록함. - 비즈니스 로직 Bean보다는 그 수가 적기 때문에 수동으로 등록하기 부담스럽지 않음. - 또한, 수동등록된 Bean에서 문제가 발생했을 때 해당 위치를 파악하기 쉬움. [같은 타입의 Bean이 2개일 때] @Primary 사용하기 - 같은 타입의 Bean이 여러 개 있더라도 우선 @Primary가 설정된 Bean 객체를 주입해줌 @Qualifier ..
TIL-230629(application.properties 민감정보 숨기기) 📝오늘 공부한 것 요구한 API를 구현 후 답안 제출 시 ec2에 Spring, Database를 연동하여 배포 github 올리기 회원조회 API만들기 ● Myblog API를 만들고 ec2에 Spring, Database를 연동한 뒤 배포하였다. 완성을 하고 github에 올렸는데 팀원분이 application.properties에 있는 DB 비밀번호를 지워야한다고 알려주셨다. 진짜 생각도 못하고 있었는데 큰일날뻔..!!!!! ⛔문제점 & 💯해결 구글링을 해봤을 땐 DB접속 정보를 암호화하는 방법도 있었던 것 같은데 나는 팀원분이 알려주신 application.properties를 분리하였다. 나는 원래있던 properties을 copy한 뒤, github에는 올리지 않을 비밀번호를 저장할 파일에는 ..
TIL-230628 📝오늘 공부한 것 스파르타코딩클럽 Spring 입문주차 1주차, 2주차 복습 알게 된 점❗ [Controller] Controller 있을 때 templates에서 먼저 확인,, 그래서 @ResponseBody해줘야함 view를 반환해야 한다. -> Controller data를 반환해야 한다. -> ResponseBody @RestController = @Controller + @ResponseBody - @RestController를 사용하면 해당 클래스의 모든 메서드에 @ResponseBody 애너테이션이 추가되는 효과를 부여할 수 있음. [Jackson] - JSON 데이터 구조를 처리해주는 라이브러리 - 직접 JSON 데이터를 처리해야 할 때는 Jackson 라이브러리의 ObjectMapper를..