본문 바로가기
728x90
반응형

전체 글39

[Spring] IoC(Inversion of Control : 제어의 역전)컨테이너란? 들어가면서.. Spring 하면 떠오르는 3 대장 IoC, DI, POJO가 있다. 이 중에서도 핵심 of 핵심 IoC 컨테이너가 무엇인지 오늘 알아보려고 한다. 우선 IoC 컨테이너가 무엇인지 알아보기에 앞서 컨테이너가 무엇인지부터 살펴보도록 하자. 컨테이너란? 한 가지 예시로 우리가 컴퓨터를 조립하는 회사에 다닌다고 하자. 고객에게 주문서가 들어오면 우리는 주문서대로 컴퓨터를 만들기 위한 부품들을 박스에 담게 되는데 그것을 컨테이너라고 한다. 마찬가지로 우리가 스프링을 사용할 때 만들어야 할 주문서대로 객체를 담아야 하는데, 소프트웨어상 그 객체들을 담는 공간을 일반적으로 컨테이너라고 한다. 그리고 컨테이너는 보통 인스턴스의 생명주기를 관리, 생성된 인스턴스들에게 추가적인 기능을 제공하도록 하는 것이.. 2021. 9. 29.
[IntelliJ] 포트 변경 방법 (ft. localhost:8080 로그인 창) 상황 강의를 듣던 중 http://localhost:8080 포트로 실행을 했을 때 화면이 나와야 하는데, 나오지 않고 로그인 화면이 뜨길래 그 이유를 찾아보았다. 이유 이전에 내가 Eclipse환경에서 개발했을 때 Oracle를 설치해 사용했는데, 높은 확률로 같은 8080 포트를 쓰는 Oracle 포트와 겹쳐서 나타나는 현상일 것이라고 한다. 해결방법 현재 알고 있는 해결 방법은 3가지가 있다. 1. server.xml 포트 변경 apachetomcat/conf/server.xml 경로로 찾아가 server.xml 파일 우클릭 후 편집에 들어가 아래와 같이 포트를 수정한다. 하지만 나는 이미 8090 포트로 변경 후 사용했었기 때문에 이 방법은 사용하지 못했다. 2. Oracle 서비스 중지 제어판 .. 2021. 9. 26.
[Spring] 스프링 빈(Bean)이란? Spring Bean이란? Spring IoC 컨테이너가 관리하는 자바 객체를 빈(Bean)이라고 부른다. 우리가 알던 기존의 Java Programming에서는 Class를 생성하고 new를 입력하여 원하는 객체를 직접 생성한 후에 사용했었다. 하지만 Spring에서는 직접 new를 이용하여 생성한 객체가 아니라, Spring에 의하여 관리당하는 자바 객체를 사용한다. 이렇게 Spring에 의하여 생성되고 관리되는 자바 객체를 Bean이라고 하고, Spring Framework에서는 Spring Bean을 얻기 위하여 ApplicationContext.getBean()와 같은 메소드를 사용하여 Spring에서 직접 자바 객체를 얻어서 사용하게 된다. * Application Context는 Bean들을.. 2021. 9. 24.
[DB] 인덱스(Index) 사용 예시 (생성, 조회, 삭제, 리빌드) 들어가면서.. 인덱스를 사용하는 방법을 알아보려 한다. 예전에 실습용으로 잠깐 만들어 두었던 B 테이블을 가지고 간단한 예제를 진행해 보려고 한다. 인덱스(Index) 사용 예시 ① 인덱스 생성 --문법 CREATE INDEX [인덱스명] ON [테이블명](컬럼1, 컬럼2, 컬럼3.......) --예제 1) 기본 CREATE INDEX EX_INDEX ON B(B_NO, B_TITLE); --예제 2) 컬럼 값 중복 허용 x 인 인덱스 생성 CREATE[UNIQUE] INDEX EX_INDEX ON B(B_NO, B_TITLE); 위와 같이 쿼리문을 작성하면 INDEX를 생성할 수 있다. CREATE 뒤에 UNIQUE 키워드를 붙이면 컬럼 값에 중복 값을 허용하지 않는다는 뜻이다. ② 인덱스 조회 --.. 2021. 9. 17.
[DB] 데이터베이스(DB) 인덱스(Index) 란 무엇인가? 들어가면서.. DB를 사용하면서 데이터의 양(row)에 따라 실행 결과의 속도가 차이가 나는 것을 알고 있었다. 특히 데이터의 양이 증가할수록 실행 속도는 느려지고, JOIN이나 서브 쿼리 사용 시 곱 연산이 일어나 데이터 양이 증가하기 때문에 WHERE 조건에서 필요한 데이터만 추출 후 사용하는 것이 좋다고 알고 있었는데, 보다 쿼리의 성능을 높이는 데 중요한 것은 인덱스를 적재적소로 활용하는 것이었다. 그렇다면 인덱스의 개념과 구조, 그리고 왜 사용하는지?, 사용했을 때 장점과 단점들에 대해 공부해보도록 하자. 인덱스(Index)란? 인덱스는 데이터베이스 테이블에 대한 검색 성능의 속도를 높여주는 자료 구조라고 한다. 특정 컬럼에 인덱스를 생성하면, 해당 컬럼의 데이터들을 정렬하여 별도의 메모리 공간.. 2021. 9. 13.
728x90
반응형