본문 바로가기

TIL139

23.06.19 gardle이 실행되는 경로상에 한글이 있으면 오류가 생겨서 사용자 이름, 바탕화면까지 전부 영어로 교체하는 과정을 거치느라 1시간 가량을 소비해버렸다... Bean은 @Controller, @Service, @Repository등의 Annotation들로 자동으로 등록하는게 편하고, 개발 생산성에도 유리하다. 하지만 Bean을 수동으로 등록해야 할 때가 있는데, 기술적인 문제나 공통적인 관심사를 처리할 때 사용하는 객체들을 수동으로 등록하는 것이 좋다. 공통 로그처리와 같은 비즈니스 로직을 지원하기 위한 부가 적이고 공통적인 기능들을 기술 지원 Bean이라 부르고 수동등록 합니다. 비즈니스 로직 Bean 보다는 그 수가 적기 때문에 수동으로 등록하기 부담스럽지 않습니다. 또한 수동등록된 Bean에서 문.. 2023. 6. 19.
23.06.18 문자열이 들어간 배열의 유사도 확인하기 public int solution(String[] s1, String[] s2) { int count = 0; for (int i = 0; i < s1.length; i++) { for (int j = 0; j < s2.length; j++) { if (s1[i].equals(s2[j])) { count++; } } } return count; } 시간복잡도가 O(n^2)인 점만 빼면 깔끔하게 푼 듯하다. 숫자 찾기 public int solution(int num, int k) { int lenOfNum = String.valueOf(num).length(); for (int i = 0; i < lenOfNum ; i++) { int digit = (int)((.. 2023. 6. 18.
23.06.16 문자열에서 중복된 문자열 제거하기 public String solution(String my_string) { ArrayList answer = new ArrayList(); for (int i = 0; i < my_string.length(); i++) { String addString = Character.toString(my_string.charAt(i)); if (!answer.contains(addString)) { answer.add(addString); } } return String.join("",answer); } ArrayList를 만든 뒤 조건문을 통해 중복되지 않는 글자만 추가하도록 로직을 짜고 join메서드를 통해 리스트의 글자들을 String으로 변환해줬다. 다른 풀이를 보니 A.. 2023. 6. 16.
23.06.15 스프링 부트로 로그인 기능이 없는 나만의 항해 블로그 백엔드 서버 만들기 과제 주의사항 Entity를 그대로 반환하지 말고, DTO에 담아서 반환해주세요! 프론트엔드와 백엔드가 느슨하게 결합하는 환경이 ”최근에는” 더 일반적이라고 말씀드렸죠? 앞으로 남은 강의 예제와 실습에서는 html/css/js 즉 뷰도 같이 반환 하겠지만, 과제에는 여러분들이 서버 로직에 더 집중하실 수 있도록 JSON을 반환하는 API형태로 진행하려고 합니다. 눈으로 직접 확인 할 수 있었던 view와는 다르게, 여러분들이 과제를 진행하시려면 서버가 반환하는 결과값을 더 쉽게 확인 하실 수 있는 도구가 필요합니다. 바로 PostMan 입니다. 요구사항 아래의 요구사항을 기반으로 Use Case 그려보기 손으로 그려도 됩니다. cf.. 2023. 6. 15.