전체 글 19

티스토리 오블완 챌린지 다짐

작심삼주 오블완 챌린지오늘 블로그 완료! 21일 동안 매일 블로그에 글 쓰고 글력을 키워보세요.www.tistory.com네이버 블로그도 블로그 활성화를 위해 이런 챌린지를 진행했었다. 참여자가 너무 많아서 며칠만에 종료된 그 챌린지. 나도 천원 받았던 기억이 있다. 티스토리는 글쓰는 에디터도 불편하고 Open API 지원도 종료해서 카카오가 유일한 블로그 플랫폼을 버리려는건가 싶었다. 근데 챌린지를 하려는거 보니 그런건 아닌 모양이다. 🎯 챌린지 목표: [클라우드 네이티브 스프링 인 액션] 챕터 16개를 실습&정리https://product.kyobobook.co.kr/detail/S000212731527

🪵 .log 2024.10.30

[ACC 연합 프로젝트] 1주차 회고

ACC 연합 프로젝트? ACC 연합 프로젝트는 주어진 주제에 맞추어 AWS를 활용해 인프라를 설계·구축해보는 연합 프로젝트입니다. 2주의 프로젝트 준비 기간 동안 주제에 맞는 아키텍처를 설계하고 8월 2일~3일 간 진행되는 해커톤에서 아키텍처를 구현하고 발표하는 방식으로 행사가 진행됩니다. 저는 이 기간 동안 현재 IT 실무자분의 멘토링을 받을 수 있다는 점이 마음에 들어 행사에 참여하게 되었습니다.팀 식스백, 준비 갈 완료! 팀이 결성되자마자 Jitsi로 온라인 회의를 진행하였습니다. 회의 전 슬랙으로 간단하게 설문을 한 결과 모두가 백엔드 개발을 주로 하고 있어서 팀 이름이 식스백(이라 쓰고 식스팩이라 읽습니다ㅋㅋ)이 되었습니다. 주제가 선정되었습니다!저희 팀의 주제는 '이메일 대량 발송 시스템'이 ..

🪵 .log 2024.07.21

[IntelliJ] 인텔리제이 시작 시 PluginException 해결

플러그인을 Enable 하고 IntelliJ를 재시작하는 와중에 프로그램을 시작할 수 없는 에러가 발생했다.사건 정황Internal error. Please refer to https://jb.gg/ide/critical-startup-errorscom.intellij.diagnostic.PluginException: com.github.blarc.ai.commits.intellij.plugin.settings.AppSettings [₩] at com.intellij.serviceContainer.ComponentManagerImpl.registerServices(ComponentManagerImpl.kt:572) at com.intellij.serviceContainer.ComponentMa..

💡 tips 2024.05.20

[IntelliJ] java.lang.ClassNotFoundException: oracle.jdbc.driver.OracleDriver 해결

직접 받은 ojdbc8.jar 드라이버로 커넥션을 얻다가 이런 오류가 발생하면 드라이버를 찾을 수 없다는 말 입니다. 인텔리제이에서는 다음과 같이 해결합니다. 1️⃣ Project Structure 열기 툴바에서 Files > Project Structure 를 연다. (Mac 단축키 : cmd + ; ) 2️⃣ Modules에 의존 라이브러리 추가 Project Settings > Modules > Dependencies > + > JARs or Directories ... 에서 직접 jar을 추가해줍니다. 3️⃣ 커넥션 확인 위와 같이 DAO의 구현체에 샘플 코드를 작성하여 실행해보았습니다. 드라이버를 정상적으로 로드하고 JDBC를 잘 연결했다면 오류가 캐치되지 않고 "Connection Succes..

[Oracle] 함수

단일 행 함수 행 당 하나의 결과를 반환 SELECT, WHERE, ORDER BY절에서 사용 데이터 타입 변경 가능 중첩 가능 문자 함수 함수 설명 CHR(65) / ASCII('A') 문자 / ASCII LOWER('HELLO WORLD') / UPPER('hello world') 소문자 / 대문자 INITCAP('the quick brown fox') 첫 글자만 대문자로 변환 LPAD('123', 5, '0') 00123 / RPAD('123', 5, '0') 12300 왼쪽 / 오른쪽에서 문자열 LTRIM(' hello') / RTRIM('hello ') 왼쪽 / 오른쪽 공백 제거 REPLACE('hello world', 'l', 'z') hezzo worzd 문자열 치환 SUBSTR('hello..

아이폰 단축어 특정 이미지 가져오기

이번달부터 교육 프로그램을 들으러 다니고 있습니다. 교육장에 입장하려면 1층의 게이트를 통과해야 하는데 매번 사진앱을 열어 QR을 꺼내는게 번거로웠습니다. 그래서 아이폰 단축어로 QR 사진을 바로 꺼내는 기능을 만들어 봤습니다! 목차 1️⃣ 앨범 만들기 사진 앱에서 원하는 사진만 들어 있는 앨범을 하나 만들어 줍니다. 저는 'QR'이라는 이름으로 만들었습니다. 2️⃣ 단축어 생성하기 앱 > 사진 > 사진찾기 필터를 추가합니다. 1️⃣에서 만든 앨범의 이름을 찾도록 설정합니다. (예시는 다른 앨범으로 설정했습니다.) 앨범에 사진이 두 개 이상 있다면 제한을 1개로 걸어줍시다. 앨범의 첫번째 이미지를 가져옵니다. 카테고리 > 미디어 > 입력에서 이미지 가져오기 카테고리 > 문서 > 결과보기 단축어가 잘 설정..

💡 tips 2023.07.16

맥북 바탕화면(데스크탑)에서 파일 사라짐 해결

어느날 빵이님이 공유해주신 뉴진스 아이콘으로 데・꾸(데스크탑 꾸미기)를 하려고 봤는데 바탕화면에 있던 파일과 폴더가 다 사라져있었다! 게다가 바탕화면에서 우클릭도 안먹히는 상태였다. 다행히 구글링으로 문제 해결 방법을 찾을 수 있었고 난 무사히 뉴진스 바탕화면을 설정할 수 있었다 :) 1. Finder의 설정 삭제 Terminal을 열어 아래의 명령어를 입력해 줍니다. 엔터를 입력하고 나서 아무것도 뜨지 않는게 맞습니다. rm ~/Library/Preferences/com.apple.finder.plist 2. Finder 재시작 Finder를 강제종료 해줍니다. 저는 캡쳐를 하기 위해 shift를 눌러서 바로 'Finder 강제 종료'가 뜨는데, 기본적으로 강제 종료 메뉴를 누르면 오른쪽과 같이 종료할..

💡 tips 2023.07.16

Day06. 알고리즘

코딩 테스트시간 복잡도빅 오 표기법big-O (빅 오 표기법) : O() => 최악의 경우, worst case점근적 상한선입력 크기가 무한대로 갈 때점근적 상한(아무리 나빠도시간이 이보다 덜 걸림. 즉, 최악의 시나리오)주로, 빅 오 표기법을 사용함계산 방법가장 큰차수 만 고려 : 예) n2 + n + 1 => O(n2)계수는 1 로 함 : 예) 3n => O(1n) => O(n)작은 차이는 무시 : 예) O(n-1) => O(n)규모가 큰 것 만 고려 : 예) O(2n + n2) => O(2n)크기 순서$$ O(1) ⏩ 오래 걸림 공간 복잡도코딩 테스트에서 문제가 되는 경우는 많지 않음.재귀 구현할 때 정도? 입력방법: 첫째 줄에 정수의 개수 N (= 10,000,000), 둘째 줄부터 N개의 줄에 ..

Day05. 자바 프로그래밍 기본

목차자바 기본 문법Stringif (str1 == str2) // 주소값 비교if (str1.equals(str2)) // 문자열 비교new 키워드 유무에 따른 차이new 로 생성되면 무조건 객체를 새로 만든다 ex) String str1 = new String(”예시”);new 로 생성되지 않으면new 없이 생성된 것 중 값이 같은게 있는지 확인하고같은게 있으면 그곳을 똑같이 가리킴String은 불변/상수이다. ⇒ 값 변경 불가String str = "kim";str = "lee";=을 기준으로 오른쪽이 먼저 일어난다. 따라서 “lee” 스트링(객체)가 생성되고 str이 가리키고 있던 “kim”을 끊은 뒤 “lee”를 가리킨다. 이때, 원래의 자원을 더이상 쓰지 않으면 gc(garbage collect..

Day04. 자바 프로그래밍 기본

목차Object Oriented ProgrammingEncapulattion(캡슐화-은닉)외부에서 사용자가 속성을 직접 조회, 수정할 수 없도록 제한개발자가 만들어 주는 대로만 사용할 수 있도록 메소드 제공 → setXxx, getXxx관례) 생성자 밑에 작성setXxx필드를 수정한다작성법modefier ⇒ publicreturntype ⇒ voidmethodName ⇒ setXxx()parameter ⇒ Exist!왜 쓰지?메소드이니까 기능을 만들 수 있다! 유저의 예상치 못한 상황을 제어.⇒ 예외 처리해서 프로그램의 라이프 사이클이 원하는 방향으로 흘러가도록.public void setAge(int age) { if (age > 18) this.age = age;}getXxx필드를 조회한다작성법m..