본문 바로가기

분류 전체보기19

데이터베이스 정규화(Normalization)란? 데이터베이스에 대해 공부하다보면 정규화(Normalization)이란 단어를 자주 접하게 된다. 정규화는 데이터베이스 설계에서 중요한 부분을 차지하므로 공부해보자. 데이터베이스 정규화란? 중복되는 데이터를 제거하고 각 릴레이션의 중복된 종속성을 여러개의 릴레이션에 분할하여 저장공간을 효율적으로 사용하고 이상(Anomaly)현상을 방지하는 작업이다. 이상현상이란? 이상현상에는 아래와 같이 3가지의 종류가 있다. 삽입 이상(Insertion Anomaly) 불필요한 다른 데이터의 부재로 데이터를 테이블에 추가할 수 없는 경우를 말한다. 이름 나이 직종 한승훈 30 서비스업 현재진 26 서비스업 유동근 29 ? 위의 테이블에서 무직 상태인 유동근을 테이블에 추가하려고 할 때 직종 칼럼의 데이터의 부재로 인해 .. 2021. 12. 16.
프로세스(Process)와 스레드(Thread)의 차이 프로세스(Process)란 시스템으로부터 할당받은 메모리에 적재된 프로그램의 인스턴스를 말하고 스레드(Thread)란 하나의 프로세스 내에서 할당받은 메모리를 이용하는 동작하는 실행의 흐름 입니다. 프로세스는 최소 1개의 스레드를 가지고 있고 프로세스는 독립된 메모리 영역을 갖지만 스레드 간에는 code와 Data, Heap(동적 메모리)를 공유하게 됩니다. 단순히 둘의 차이에 대한 비교는 간단하기 때문에 관련된 주제들을 몇가지 더 알아보겠습니다. 컨텍스트 스위칭(Context Switching)에 대해 Context란 무엇일까? CPU가 해당 프로세스를 실행하기 위해 필요한 프로세스의 정보들을 말한다. 컨텍스트는 각각의 프로세스의 PCB(Process Control Block, Process descr.. 2021. 12. 13.
HTTP와 HTTPS의 차이 HTTP vs HTTPS: 무엇이 다른가? HTTPS는 암호화된 HTTP다. 두 프로토콜의 유일한 차이는 HTTPS는 일반 HTTP Request와 Response를 암호화 하기 위해 *TLS(SSL)를 사용한다는 것에 있다. 결과적으로 HTTPS는 HTTP보다 훨씬 더 안전하다. HTTP를 사용하는 웹사이트는 Url이 http://로 시작하는 반면, HTTPS를 사용하는 웹사이트는 https://로 시작한다. 그럼 HTTP란 무엇일까? HTTP는 Hypertext Transfer Protocol의 약자이며 *프로토콜의 일종이다. 네트워크 상에서 데이터를 주고 받는데 쓰인다. 웹사이트의 내용이나 *API call을 포함한 인터넷 상에서 주고 받는 거의 모든 정보는 HTTP 프로토콜을 사용한다. HTTP에.. 2021. 12. 10.
WARN com.zaxxer.hikari.util.DriverDataSource - Registered driver with driverClassName=oracle.jdbc.driver.OracleDriver was not found, trying direct instantiation. 경고 내용 Hikari Connection Pool을 사용중인데 실행 시 데이터베이스와 연결은 잘 되나 아래와 같은 경고성 메세지가 발생함 원인 아래의 내용처럼 Oracle 9i부터는 oracle.jdbc.driver.OracleDriver는 Deprecated 되어 지원이 중단 되니 oracle.jdbc.OracleDriver class를 사용해야 함 (참고) https://tomcat.apache.org/tomcat-5.5-doc/jndi-datasource-examples-howto.html#Oracle_8i,_9i_&_10g 해결 방법 참고 문서의 내용대로 DriverClassName property의 값을 oracle.jdbc.driver.OracleDrvier -> oracle.jdbc.Oracle.. 2021. 12. 8.