오늘 공부한 내용 백준 이분 탐색 1문제 풀기 스프링 게시판 API에 AOP를 통한 로그 적용, 환경 분리한거 포스팅하기 토비의 스프링 영상 시청 💭느낀 점 & 배운 점 아 오늘은 진짜 동아리방에 가림막 설치하는 것 때문에 한 5시간 날리고, 집 와서는 발표 PPT 만든다고 5시간 날렸다..ㅠㅠㅠ 스프링 AOP 적용한걸 포스팅 하는 과정에서 몇개 잘못 작성한 것을 깨닫고 고쳤다!!! 글 귀찮아서 안 썼으면 큰일날뻔.. 이제 뭐 할지 고민이다.. 토비의 스프링 봐야하는데 ㅠㅠ 🔥내일 공부할 내용 백준 이분 탐색 1문제 풀기 스프링 핵심원리 고급편 - AOP 공부하기 토비의 스프링 책읽기 토비의 스프링 영상 시청 이펙티브 자바 - 아이템 18 (상속보다는 컴포지션을 이용하라) 자바의 정석 - 2.3 진법 정..
어우 되게 오랜만에 글 쓰네요..ㅎㅎ AOP 공부하다가 늦었습니다... 아마 이번 포스팅 이후로 한동안 포스팅을 못 할 거 같네요... 학교도 복학하고, 회장이 되버려서 좀 이것저것 바쁩니다.. 그리고 토비의 스프링도 읽고, 이것저것 공부할 게 많아서요..ㅠㅠ 오늘은 AOP를 적용하여 Controller, Service, Repository 계층에 대해 메서드가 수행되면 로그를 남기고, 이를 파일로 저장하도록 바꿔보겠습니다. 그리고 운영환경별 로그 수준을 다르게 남기는 것도 해보겠습니다! 시큐리티를 이용한 JSON 데이터로 로그인 (완료) JWT를 이용한 인증 (완료) 도메인, 테이블 설계, 엔티티 생성 (완료) 댓글 삭제 로직 구현 (완료) 회원가입 + 정보수정 등 회원 서비스 구현 (완료) 게시판 서..
랜선 자르기 https://www.acmicpc.net/problem/1654 1654번: 랜선 자르기 첫째 줄에는 오영식이 이미 가지고 있는 랜선의 개수 K, 그리고 필요한 랜선의 개수 N이 입력된다. K는 1이상 10,000이하의 정수이고, N은 1이상 1,000,000이하의 정수이다. 그리고 항상 K ≦ N 이다. 그 www.acmicpc.net 풀이 import annotation.boj.BOJ; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.*; @BOJ public class 백준1654 { private static BufferedReader ..
오늘 공부한 내용 백준 이분 탐색 1문제 풀기 스프링 게시판 API에 AOP를 통한 로그 적용, 환경 분리 토비의 스프링 영상 시청 이펙티브 자바 - 아이템 16,17 공부 💭느낀 점 & 배운 점 어제 AOP 적용하는 게 안됐었는데, 아마 졸린 상태로 하느라 정신이 없었던 것 같다, 오늘 다시 해봤는데 잘 됐다!!! 그리고 운영 환경이랑 개발 환경 분리도 해봤고, 로그를 파일로 저장하는 것보 해보긴 했는데, 콘솔에는 출력 안 하고 파일에만 출력되게 하는법은 모르겠다..ㅠㅠ 이분 탐색 실버 3 문제를 풀었는데 너무 어려웠다..ㅠㅠㅠ 흐... 일단 답 보고 따라하긴 했는데 다음에 다시 혼자서 해보아야겠다. 🔥내일 공부할 내용 백준 이분 탐색 1문제 풀기 스프링 게시판 API에 AOP를 통한 로그 적용, 환경..
숫자 카드 2 https://www.acmicpc.net/problem/10816 10816번: 숫자 카드 2 첫째 줄에 상근이가 가지고 있는 숫자 카드의 개수 N(1 ≤ N ≤ 500,000)이 주어진다. 둘째 줄에는 숫자 카드에 적혀있는 정수가 주어진다. 숫자 카드에 적혀있는 수는 -10,000,000보다 크거나 같고, 10, www.acmicpc.net 풀이 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.*; import java.util.stream.Collectors; public class Main { public static void main(..
오늘 공부한 내용 백준 이분 탐색 1문제 풀기 스프링 핵심 원리 고급편 - 스프링 AOP 개념까지 공부 스프링 게시판 API에 AOP 적용하려다 실패! 토비의 스프링 영상 시청 리펙터링 강의 보기 💭느낀 점 & 배운 점 오늘은 BFS/DFS를 다 끝내고 처음으로 이분 탐색 문제를 풀어보았다. 정렬 하고 이분탐색을 해야 하는데, 정렬 안 하고 계속 풀어서 오류가 났었다. 참..ㅋㅋ..ㅠㅠ 스프링 AOP 한번 다 들은 기념으로 직접 적용해 보면서 공부하려 했는데, 아니 적용이 안되는거임..ㅠㅠ 그래서 내일 다시 하루종일 해봐야겠다..!! 추가로 어제 자기전에 '최범균'님의 제네릭 변성이라는 영상을 보고 질문을 남겼는데, 범균님이 고맙다고 해주셔서 너무 영광이었다.. 내 인생 최고 업적... 🔥내일 공부할 내..
수 찾기 https://www.acmicpc.net/problem/1920 1920번: 수 찾기 첫째 줄에 자연수 N(1 ≤ N ≤ 100,000)이 주어진다. 다음 줄에는 N개의 정수 A[1], A[2], …, A[N]이 주어진다. 다음 줄에는 M(1 ≤ M ≤ 100,000)이 주어진다. 다음 줄에는 M개의 수들이 주어지는데, 이 수들 www.acmicpc.net 풀이 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.Arrays; public class Main { static BufferedReader br =new BufferedReader(new I..
횡단 관심사 (cross-cutting concerns) 애플리케이션의 기능은 핵심 기능과 부가 기능으로 나눌 수 있습니다. 예를 들어 영화 예매 애플리에션의 경우 영화를 예매하는 것이 핵심 로직이고, 이러한 핵심 기능을 보조하기 위해 로그를 남긴다던지 하는 기능들은 부가 기능입니다. 핵심 기능과 부가 기능은 같이 사용되지만, 하나의 코드 안에서 핵심 기능과 부가 기능이 모두 들어가게 코드를 작성한다면 핵심 기능에 집중하기 어려워 질 것입니다. 또한 대부분의 부가 기능은 하나의 핵심 기능에 붙는 것이 아니라 여러개의 핵심 기능에 사용되기 때문에 중복되는 코드도 많아집니다. 이렇게 여러 기능에 동일하게 사용되는 부가 기능을 횡단 관심사(cross-cutting concerns)라고 합니다. 부가 기능을 적..