해당 글에서는 @Autowired로 주입된 빈을 static 메서드에서 사용하려고 할 때 NullPointerException 이 발생하는 원인과 해결방안에 대해 다루려고 한다. 문제 상황 static 메서드 exctractBrandName() 에서 @Autowired로 주입된 someDAO를 사용하여 실행하면 NullPointerException이 발생한다. @Slf4j@Service("dataService")public class DataService { @Autowired private someDAO someDAO; public static String extractBrandName(String input) throws Exception { List brandNam..

오랜만에 진행한 코딩테스트.... 입문 문제 이게 맞나.... ? 3시간 가까이 걸린.... 각 풀이과정은 주석을 통해 작성했다 다소 직관적일 수 있다는 점 ㅜㅜ 느낀점은 step by step 이 중요하다는 점이다 손코딩을 통해 실제로 내가 어떻게 비교하는지 로직 생각 -> 코드로 풀어쓰기 import java.util.*;class Solution { public int solution(int[] array) { // 배열이 하나일경우 최빈값 바로 반환 if(array.length == 1) return array[0]; Map maxMap = new HashMap(); // Step 1: 배열..
유클리드 호제법: 두 수의 최대공약수(GCD)를 구하기 위한 수학적 알고리즘 반복적으로 큰 수를 작은 수로 나누면서 나머지를 계산해, 나머지가 0이 될 때의 나누는 수를 GCD로 반환 유클리드 호제법의 원리 두 정수 A와 B의 최대공약수를 구하려고 할 때:A%B 를 계산하여 나머지를 구한다.A를 B로, B를 나머지로 바꾼다.나머지가 0이 될 때까지 이 과정을 반복한다.나머지가 0이 되면, 그때의 B 값이 GCD가 된다. 유클리드 호제법 구현 (Java 코드) class GCDExample { public static int getGCD(int a, int b) { // 유클리드 호제법 while (b != 0) { int temp = b; ..
[ 개념 ] SSH(Secure Shell) 기반으로 작동하는 파일 전송 프로토콜파일 전송뿐만 아니라 디렉토리 관리, 파일 권한 설정 등 다양한 작업을 암호화된 채널에서 처리할 수 있음 [ 주요 특징 ] 암호화데이터 전송은 SSH를 통해 암호화 되며, AES, Blowfish 같은 강력한 암호화 알고리즘이 사용됨인증 방식비밀번호 인증 : 간단하지만 보안상 취약할 수 있음SSH 키 인증 : 공개 키 / 개인 키 쌍을 사용해 더 높은 보안성을 제공함다중 인증(MFA) : 일부 환경에서는 추가 보안을 위해 OTP, 인증 앱과 함께 사용. 그렇다면 실무적인 관점에서 바라본 SFTP 란? SFTP 는 실무에서 파일 전송의 표준으로 잡은 프로토콜이다. 보안과 편의성 측면에서 탁월하며, 적절히 구성하면 ..
[ 예외 구문 & 문제 ] bad SQL grammar []; nested exception is java.sql.BatchUpdateException: 키워드 'OPTION' 근처의 구문이 잘못되었습니다. "OPION" MSSQL 에서 사용하는 예약어를 컬럼명으로 사용하여 조회하려 하는경우 발생 오타문제인줄알고 눈알빠져라 확인했는데 아니었음 [ 해결 ] [ ] 로 감싸서 조회한다 ex) SLECT [OPRION] FROM YOUR_TABLE; +) 추가 ; uncategorized SQLException; SQL state [S0001]; error code [102]; '1' 근처의 구문이 잘못되었습니다.; nested exception is java.sql.Ba..

SVN 설치 https://www.visualsvn.com/downloads/ Downloads | VisualSVNThe most favored way to setup and maintain an enterprise level Apache Subversion server on the Microsoft Windows platform. VisualSVN Server is useful either for home, small business or enterprise users. Includes Apache Subversion 1.14.4 command-line tools.www.visualsvn.com 홈페이지에서 svn 다운받고 원하는 폴더에 설치 SVN setting File > Setti..
참조의 의미와 자바의 GC(가비지컬렉터)가 어떻게 동작하는지 초보자의 시점에서 알아보자 참조(Reference)란? 어떤 객체를 가리키고 있다는 뜻 - 객체의 주소를 기억해서 그 객체에 접근할 수 있게 해주는 역할 예시 ) public class Example { public static void main(String[] args) { Person person = new Person(); // 'person'은 Person 객체를 참조하고 있음 person.setName("John"); Person anotherPerson = person; // 'anotherPerson'도 같은 Person 객체를 참조함 ..

자바의 메모리 구조중에 Stack 영역과 Heap 영역에 대해서 알아보자 Stack 영역 각 메소드가 호출될 때마다 그 메소드 내에서 사용되는 지역 변수(로컬 변수)들이 저장됨메소드가 끝나면 그 메소드에 대한 스택 영역은 사라짐일시적인 데이터들(메소드 실행 중에만 유효한 데이터)을 저장하는 공간빠르게 접근 가능 public class Example { public static void main(String[] args) { int x = 10; // Stack에 저장되는 지역 변수 int y = 20; // Stack에 저장되는 지역 변수 int sum = add(x, y); // Stack에 메소드 호출 정보 저장 System.out.prin..