LinkedList : 링크드 리스트
·
자료구조
링크드 리스트 : 노드로 구성된 자료구조 배열 또는 선형 리스트는 👍🏻 기본적인 자료구조 형태로 데이터를 빠른 시간 안에 조회할 수 있는 장점이 있습니다. 👎🏻 하지만, 데이터 추가/삭제 작업 후에 순서를 유지시키기 위해 데이터를 이동하는 추가적인 작업과 시간이 필요합니다. 👎🏻 또한, 크기를 변경할 수 없어 실행 속도 향상을 위해 충분히 큰 배열을 생성할 때 메모리가 낭비됩니다. 👉🏻 이러한 단점을 보완한 자료구조가 링크드 리스트 입니다. 링크드 리스트는 불연속적으로 존재하는 데이터를 서로 연결한 형태로 구성되어 있습니다. 특징 - 링크드 리스트의 원소는 원소값 필드와 다음 원소의 주소값 필드로 구성되어 있다. - 물리적으로 데이터가 연결되어 있지 않지만, 다음 원소의 주소값을 통해 연결되어 논리적으로..
JPA 영속성 컨텍스트
·
WEB/JPA
영속성 컨텍스트 란? - entity를 영구 저장하는 환경 - JPA를 이해하기 위해 중요한 용어 - entityManager를 통해서 영속성 컨텍스트에 접근 > 쉽게 entityManager 안에 영속성 컨텍스트라는 눈에 보이지 않는 공간이 생긴다고 이해! EntityManager.persist(entity); // entity(객체)를 영속성 컨텍스트라는 공간에 저장! 엔티티의 생명 주기 - 비영속 (new/transient) : 영속성 컨텍스트에 추가되지 않은! 관계가 없는 새로운 상태 -> 새로운 객체 생성 때 상태 - 영속 (managed) : 영속성 컨텍스트에 관리되는 상태 - 준영속 (detached) : 영속성 컨텍스트에 저장되었다가 분리된 상태 > 영속성 컨텍스트가 제공하는 기능을 사용 ..
Open API에서 공휴일 날짜 파싱 (JSON)
·
WEB/Spring
- open api 사용 방법 - 공공데이터 오픈 API 사용하기(휴일 정보 - 한국천문연구원_특일 정보) 공휴일 정보를 불러오기 위해 공공데이터인 한국천문연구원_특일 정보 open API를 사용했다. https://www.data.go.kr/index.do 공공데이터 포털 국가에서 보유하고 있는 다양한 데이터를『공공데이터의 제 study-ce.tistory.com Open API로 휴일 정보를 가져왔다. 그런데, 만들고자 하는 API에서는 휴일 날짜만 필요했다. 즉, json객체에서 locdate라는 이름의 값만 필요했다. 그래서 json 객체의 이름을 이용해서 값을 추출했다. open API에서 특정 연도 공휴일 날짜를 출력하는 Spring Boot Controller이다. import java.io..
공공데이터 오픈 API 사용하기(휴일 정보 - 한국천문연구원_특일 정보)
·
WEB/Spring
공휴일 정보를 불러오기 위해 공공데이터인 한국천문연구원_특일 정보 open API를 사용했다. https://www.data.go.kr/index.do 공공데이터 포털 국가에서 보유하고 있는 다양한 데이터를『공공데이터의 제공 및 이용 활성화에 관한 법률(제11956호)』에 따라 개방하여 국민들이 보다 쉽고 용이하게 공유•활용할 수 있도록 공공데이터(Datase www.data.go.kr 활용신청을 클릭하고 사유를 입력하면 바로 사용이 가능하다!! ( 로그인 필요 ) ▼ 위 이미지에서 사용할 API를 클릭하면 상세 정보를 확인할 수 있다. 해당 페이지에서 url에 필요한 인증키를 확인할 수 있다. 아래의 API 상세 페이지에서 api를 호출하는 sample 코드를 제공하고 있어서 이를 활용했다. 한국천문연..
Spring: log4j.xml 에러
·
WEB/Spring
웹 코딩하다가 갑자기 건들지 않은 log4j.xml에 에러가 생겼다.. 전체 페이지로 보면 빨간줄이 많았는데, 다행히 첫번째 에러를 해결하니 다른 빨간줄은 사라졌다! 에러 : Cannot find DTD ... DTD 파일 = XML의 문법을 정리해놓은 파일 XML은 DTD파일을 먼저 확인하여 문법을 확인한다. 간혹, 이클립스에서 log4j.xml의 DTD파일을 확인하지 못해 에러를 표시하는 경우가 있다고 한다. 그때 DTD 선언문인 에러가 발생한 줄의 코드를 지우고 아래의 코드로 변경하면, DTD 파일의 경로를 웹의 절대경로로 변경하여 해결할 수 있다. 2번째 줄이 수정한 부분이다. 참고 사이트 https://m.blog.naver.com/jjk003/222129914141
Spring: root-context.xml 에러
·
WEB/Spring
Spring의 root-context.xml을 수정하다가 context:component-scan 태그에 오류가 발생했다. ① 첫 번째 에러 The prefix "context" for element "context:component-scan" is not bound. : beans의 xmlns 선언 부분에 context에 대한 부분이 없어서 발생하는 에러이다. 아래와 같이 xmlns:context="http://www.springframework.org/schema/context" 를 추가해주면 해결된다! 그렇지만, 새로운 에러 메세지가 생겼다! ② 두 번째 에러 cvc-complex-type.2.4.c: The matching wildcard is strict, but no declaration ca..
MariaDB 설치 + workbench 연결 for MAC
·
WEB/DB
MariaDB는 macOS용 설치 파일을 제공하지 않는다🥲 그래서 Homebrew를 이용하여 MariaDB를 설치한다!! ① homebrew를 설치한다. 만약, homebrew를 이미 설치한 경우, brew update 명령어를 통해 업데이트해준다. ② mariaDB를 설치한다. brew install mariadb 완료되면 아래와 같다. ③ mariaDB 확인!! brew services start mariadb //시작 brew services stop mariadb //종료 brew services list //상태확인 ④ mariaDB 접속 sudo mysql -u root -p 사진처럼 비밀번호를 입력한다. 아래의 명령어에 1234 대신 원하는 비밀번호를 입력하면 변경이 가능하다. set pas..
[MAC] Homebrew 설치
·
개발툴
Homebrew 설치 with M1- Homebrew는 MAC OS용 패키지 관리자입니다. brew install을 이용해 유용한 패키지를 쉽게 설치할 수 있습니다.  1. Intel 이 아닌 M1 프로세서인 mac os를 사용하는 경우, 터미널의 Rosetta를 사용하여 열기를 활성화해줍니다.    2. Terminal을 열고 homebrew 설치 코드를 입력합니다.  HomebrewThe Missing Package Manager for macOS (or Linux).brew.sh위의 사이트에서 아래의 코드를 찾을 수 있습니다. /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" 아..