⚠️ 문제고립망 → 클라우드 배치테스트 실패고립망에서 클라우드로 데이터와 소스를 옮긴 뒤, 배치 테스트가 실패함.데이터만 이관하면 정상 작동할 것으로 예상했으나, 실행되지 않음.자페스에서는 이상 없음 뜸🧐 원인소스 코드 내부에 특정 SQL 실행 분기점에서트랜잭션 롤백이 무조건 발생하도록 작성되어 있었음. ⚡ 해결법플래그가 true로 설정되어 있을 때만 롤백하도록 if문 내에 정확히 조건을 설정한다. import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.SQLException;public class TransactionRollbackExample { public ..
🍩 용어 정리JDK : Java Development Kitbin : binary폴더. 보통 실행파일을 bin이라고 함Java.exe : cmd에 java라고 치면 실행되는 파일javac.exe : cmd에 javac라고 치면 실행되는 파일. java파일을 컴파일하여 class파일로 만들 때 사용한다.💡 "javac"는 "java" (자바) + "c" (씨) = "자바 씨"풀어서 말하면 "Java Compiler"의 약자라서, 자연스럽게 "자바 씨"라고 부른다. 🚀 Java라고 명령을 내렸을 때 일어나는 일✅ java 파일이 어디서든 실행되는 이유👉 환경변수(Path) 덕분! `Path` : 명령어(java, javac 등)를 어디서든 찾을 수 있게 해주는 환경변수. 설정 방법 :내 컴퓨터 →..
자바가 자바 가상 머신(JVM) 위에서 실행된다는 것은 익히 알려진 사실이다. 이클립스를 다운로드할 때는 이클립스 버전에 호환되는 JDK도 함께 설치한다.또한, 이클립스 설정에서 [Installed JREs]에서 JRE를 추가하면서, 기존에 두루뭉술하게 알고 있던 JDK와 JRE의 차이가 궁금해졌다.그래서 오늘은 개념을 명확히 정리해보고자 한다. 1. JDK vs JRE vs JVM 차이진짜 간단히 요약하면 자바로 개발할 때 → JDK 필요 (컴파일러 포함)그냥 실행만 할 때 → JRE만 있어도 됨실제 실행 담당 → JVM 위에서 돌아감... JRE는 실행용, JDK는 개발용이라고 이해하면 쉽다. ■ JDK (Java Development Kit)`.java` 파일을 `.class(바이트코드)`로 ..
📑 1. 문제설명 💡 2. 풀이과정처음에는 3,6,9 게임을 잘못 이해했다.3의 배수일 때 박수 치는 걸로 이해해서 해당 숫자를 3으로 나눈 나머지가 0일 때 cnt ++을 하는 실수를 했다. 하지만 오리지널 369게임은 숫자 3, 6, 9가 들어가면 박수를 치는 게임이다. 즉, 숫자 하나 하나가 3 또는 6 또는 9 값을 가지면 횟수를 카운트하고 마지막에 총 횟수를 리턴한다. 주어진 숫자를 문자열로 바꿔서 각 자릿수를 탐색해도 되지만이 문제에서 어차피 숫자의 순서는 상관 없고주어진 order 안에서 3, 6, 9가 총 몇개인지 갯수면 세면 되는 문제이기 때문에주어진 숫자를 10으로 나눈 나머지가 3,6,9에 해당하는지만 확인하면 쉽게 풀 수 있다. 1. 주어진 숫자(order)를 10으로 나눈 나머..
📑 1. 문제설명💡 2. 풀이과정 n과 가장 가까운 수를 구하려면 n에서 해당 요소를 뺀 값이 제일 작아야 한다고생각했다.즉 `n - array[i]` 의 절대값이 0이거나 가장 작은 것을 구하는 접근 방식을 취했다. 처음에는 n - array[i] 이 현재 min 에 저장된 최소값보다 작으면최소값을 min에, 해당 요소의 배열 index를 answer 변수에 업데이트 하는 방식으로 풀었다.하지만 코드가 예상대로 돌아가지 않았다.import java.util.Arrays;class Solution { public int solution(int[] array, int n) { int min = Math.abs(n - array[0]); int answer =..
📑 1. 문제설명💡 2. 풀이과정처음에 접근한 방식1. my_string을 toCharArray()로 char 타입의 배열로 변환2. for 문으로 배열 요소를 순회하면서 `Character.isDigit(c)` 메서드로 요소가 숫자이면 count++3. 2에서 나온 count 크기만큼의 int 배열을 선언한다. 4. for each문으로 다시 한 번 배열을 순회하면서 `Integer.parseInt(String.valueOf(c));` 로 숫자만 int 배열에 추가5. 오름차순 정렬 ⭐`Character.isDigit()`는 주어진 문자가 숫자(0~9)인지 확인하는 자바 메서드특정 문자가 숫자인지 아닌지를 판단하여, 숫자이면 true를 반환하고, 숫자가 아니면 false를 반환한다.⭐ `Inte..
📑 1. 최댓값 만들기 💡 풀이과정배열을 오름차순으로 정렬한 뒤에 가장 끝 값 2개를 곱한 값, 시작값 2개를 곱한 값 중 더 큰 값을 반환이렇게 하는 이유는 요소가 양수일 수도 있고 음수일 수도 있기 때문이다. 👨💻 정답코드import java.util.*;class Solution { public int solution(int[] numbers) { Arrays.sort(numbers); int n = numbers.length; // 가장 큰 두 수의 곱 vs 가장 작은 두 수의 곱 중 최댓값 반환 // 음수일 가능성 때문임 return Math.max(numbers[n - 1] * numbers[n - 2..