전체 글 31

Unrecognized option: --add-opens when passed with _JAVA_OPTIONS

이클립스로 서버를 구동했는데 오류 메시지가 출력되었다.. (분명 어제까지만해도 이상없이 진행되었기에 더 당황.. 서버는 건드린게 없었는데..?)  Console 창에는 제목과 같이 Unrecognized option: --add-opens when passed with _JAVA_OPTIONS라는 에러메시지만 출력될 뿐 다른 설명들은 없었다.결국 구글링으로 찾아보는 것을 시작으로 방법을 찾다가 참조할 수 있는 블로그를 발견하여 해결했습니다.자바 8버전에서는 --add-opens 라는 옵션이 없기 때문에 에러가 난다고 작성되어 있었다.run > run configurations > > Arguments > VM Arguments 에서 --add-opens 가 붙은 옵션들을 제거해주면 됩니다. referen..

Java 2024.04.23

그래프 탐색 알고리즘( Graph Search Algorithm )

📋 목 차 ❓ 그래프 탐색 Depth-First Search( DFS ) Breadth-First Search ( BFS ) ❓ 그래프 탐색 그래프 탐색 문제란? 어떤 한 그래프의 해당 그래프의 시작 정점이 주어졌을 때, 시작점에서 간선(Edge, E)을 타고 이동할 수 있는 정점(Vertex, V)들을 모두 찾아야 하는 문제를 의미합니다. 그래프 탐색 알고리즘 (Graph Search Algorithm)에는 흔히 너비 우선 탐색( Breadth-First Search, BFS)과 깊이 우선 탐색(Depth-First Search, DFS)이 있습니다. 🔶 Depth-First Search DFS 요약 -그래프에서 깊은 부분을 우선적으로 탐색하는 알고리즘 -루트 노드(or 다른 임의의 노드)에서 시작해서..

Spring Bean 이란?

📋 목차 Spring Bean 이란? Java Bean과는 다른가? 어떻게 Spring IoC 컨테이너에 빈을 등록할까? 🔶 Spring Bean 이란? Spring IoC 컨테이너가 관리하는 자바 객체를 '빈(Bean)' 이라고 부릅니다. 먼저 IoC를 설명을 한다면 아래와 같습니다. 일반적으로 자바 프로그램에서는 각 객체들이 프로그램의 흐름을 결정하고 각 객체를 직접 생성하고 조작하는 작업(객체를 직접 생성하여 메서드 호출)을 했습니다. 즉, 모든 작업을 사용자가 제어하는 구조였습니다. 예를 들어 A 객체에서 B 객체에 있는 메서드를 사용하고 싶으면, B 객체를 직접 A 객체 내에서 생성하고 메서드를 호출합니다.하지만 IoC가 적용된 경우, 객체의 생성을 특별한 관리 위임 주체에게 맡깁니다. 이 경우..

Spring 2022.10.12

Linked List (연결 리스트) 란?

📋 목차 ❓ 연결리스트 란? Array(배열) & List (리스트) 특징 연결 리스트 종류 연결 리스트 구현 (자바) ❓ 연결리스트 란? 연결 리스트는 각 노드가 데이터와 포인터를 가지고 한 줄로 연결되어 있는 방식의 자료구조입니다. 데이터를 담고 있는 노드들이 연결되어 있고, 노드의 포인터가 이전, 다음 노드와의 연결을 담당합니다. 자료의 논리적인 순서와 메모리 상의 물리적인 순서가 일치하지 않고, 개별적으로 위치하고 있는 원소의 주소를 연결하여 하나의 전체적인 자료구조를 이룹니다. 🔶 Array(배열) & List (리스트) 연결 리스트를 이해하기 앞서 배열과 리스트의 컴퓨터 공학적인 개념부터 잠깐 짚고 넘어가고자 합니다. 배열은 메모리 상에 연속적인 공간을 할당받아 데이터를 저장합니다. 배열은 원..

Queue (큐)

📌 목차 ❓ Queue 란 ❓ Queue 주요 동작 Queue의 사용 사례 Queue의 종류 Queue 구현 ❓ Queue 란 ❓ 큐(Queue)는 먼저 집어 넣는 데이터가 먼저 나오는 FIFO(First In First Out), 선입선출 방식입니다. 선입선출 구조이기 때문에 앞쪽을 나타내는 Front와 뒤쪽을 나타내는 Rear가 있습니다. 나중에 집어 넣는 데이터가 먼저 나오는 스택(stack)과는 반대되는 개념입니다. 🔶 Queue 주요 동작 enQueue( ) : 큐에 데이터를 넣는 과정, Rear가 커진다. Push로 만들 수도 있지만 스택과 혼돈이 생길 수도 있으므로 지양한다. deQueue( ) : 큐에서 데이터를 빼는 과정, Front가 커진다. Pop으로 만들 수도 있지만 위와 마찬가지로..

Stack (스택)

📄 목차 ❓ Stack 이란 ❓ Stack 주요 동작 컴퓨터에서 Stack 실사용 예제 Stack 구현 ❓ Stack 이란 ❓ 스택은 한 쪽 끝에서만 자료를 넣거나 뺄 수 있는 선형적 자료구조(LIFO - Last In First Out)으로 되어 있다. 자료를 넣는 것을 '밀어넣는다' 하여 푸쉬(push)라고 하고 반대로 넣어둔 자료를 꺼내는 것을 ‘당긴다’ 의 팝(pop)이라고 하는데, 이 때 꺼내지는 자료는 가장 최근에 푸쉬한 자료부터 나오게 된다. 이처럼 ‘나중에 넣는 값이 먼저 나오는 것’ 을 ‘LIFO’ 구조라고 한다. 🔶 Stack 주요 동작 pop( ) : 스택에서 가장 위에 있는 항목을 제거한다. push(item) : item 하나를 스택의 가장 윗 부분에 추가한다. peek( ) : ..

Spring Boot

🔍 목차 - SpringBoot 란? - 특징 - Spring Framework 와 Spring Boot 차이점 🔶 Spring Boot 란? 스프링 부트(spring boot)는 스프링을 더 쉽게 이용하기 위한 도구라고 볼 수 있다. 스프링을 이용하여 개발을 할 때, 셋팅 해야 될 요소들이 많다. 여러가지를 세탁해야 되는 진입 장벽이 존재하여 Spring 을 처음 배우려는 사용자들에게는 어려움이 될 수 있다. Spring boot 는 매우 간단하게 프로젝트를 설정할 수 있게 하여, spring 개발을 조금 더 쉽게 만들어주는 역할을 하고 있다. 🔶 특징 스프링 부트는 기본적으로 스프링 프레임워크 확장판이라고 생각하면 된다. 스프링 프레임워크는 설정해야 할 기능들이 너무 많고 어려웠었기 때문에 이를 해결..

Spring 2022.10.05

AS-IS, TO-BE 란??

❓ AS - IS , TO - BE 가 뭐지 ❓ 회사를 다니면서 보고서를 보게 될 경우 AS-IS, TO-BE 라는 용어를 보게 됩니다. 영어를 어느정도 알면 짐작은 가능하지만 일상에서 사용하지 않을뿐더러 용어를 사용할 때 의미를 알지 않고 사용해도(?) 문제가 되지 않았기 때문에 '필자'가 이 용어에 대해 잘 모르고 있다는 것을 느꼈습니다. 어느 순간 시간이 흘러 누군가(후임 or 선임 or 동종업계 근무자)가 물어본다면 내가 답을 할 수 없을 것이라는 것이라는 확신이 드니 정리를 해야겠다 라는 생각이 들었습니다. 🔶 용어) AS-IS : "있는 그대로" 또는 "현재의 상태 그대로" 란 의미를 가지고 있다. 즉 'AS-IS 분석'이란 현재의 업무 프로세스에 대한 분석을 뜻합니다. 크게 3가지로 나누어집..

IT 용어 2022.10.04

Spring FrameWork

🔍 목차 - Spring 이란? - FrameWork? - Spring 특징 🔶 Spring 이란? 스프링 프레임워크(Spring framework)는 자바 플랫폼을 위한 오픈 소스 애플리케이션 프레임워크로서 간단히 스프링(Spring)이라고도 한다. [자바기반의 웹 어플리케이션을 만들 수 있는 프레임워크] 동적인 웹 사이트를 개발하기 위한 여러 가지 서비스를 제공하고 있다. 대한민국 공공기간의 웹 서비스 개발 시 사용을 권장하고 있는 전자정부 프레임워크의 기반 기술로서 쓰이고 있습니다. 🔶 FrameWork (프레임워크) 프레임워크는 어떠한 목적을 달성하기 위해 복잡하게 얽혀있는 문제를 해결하기 위한 구조이며, 소프트웨어 개발에 있어 하나의 뼈대, 골격 코드 역할을 합니다. 이를 자동차로 비유한다면, ..

Spring 2022.09.29

MySQL 자정 12시에 콘솔창 출력 막는 방법

MySQL을 공부하기 위해 설치하였는데, 밤 12시만 되면 MySQLInstaller 콘솔창이 출력되었습니다. 별로 신경 쓰지 않았는데 어느 순간부터 롤(LOL)을 하게 되면서 밤 12시가 되면 갑자기 게임 중에 튕겨 나가면서 콘솔창이 출력되는 상황이 계속 반복되었습니다.. (그것 때문에 죽기도 함) 이제는 더 이상은 미룰 수가 없어서 제거하는 방법을 찾게 되었습니다. 제어판 클릭 시스템 및 보안 관리 도구 클릭 작업 스케쥴러 클릭 MySQL 디렉토리 내부의 Installer 클릭 '작업' 창의 '선택한 항목'의 사용 안 함을 클릭 결과 롤을 하실 거면 무조건 사용 안함으로 바꾸고 게임 하세요