Spring Bean Container


스프링 빈 컨테이너 역할

스프링 객체를 관리한다 : 컨테이너가 스스로 객체를 생성한다

1) @ComponentScan : @Component가 붙은 클래스들을 읽어서 객체로 생성한다

2) @Bean : @Bean을 이용하여 개발자가 생성하는 코드를 작성한다.



@Configuration

-> class 가져올 때 반드시 사용해야함


@Import 

-> configure 파일 가져옴


@Import({DVDConfig.class, DVDPlayerConfig.class})

두가지 클래스 믹싱하는 방법


@Component 종류에는

-> 1. @Controller - @RestController

    2. @Service

    3. @Repository


@RestController : @RestController -> @Controller 안으로 들어가면 @Component 어노테이션이 있다.

@Component 어노테이션이 붙어 있으면 스프링 Bean Container가 모두 객체를 생성한다.(개발자가 직접 new()를 사용하는 것과 같은 역할)


@ComponentScan

-> 루트 패키지 이하의 클래스 중 @Component 어노테이션이 붙은 클래스 검색








https://jhkang-tech.tistory.com/44

host name이 도메인 주소가 같지 않다


호스트 네임 => 컴퓨터의 이름(사람의 이름)

도메인 네임 => 컴퓨터 그룹의 이름(사람의 성)


내부 네트워크를 구분하기 보다는 각 서버 또는 서비스의 영역을 구분하기 위한 것



1. ROLLUP 이나 GROUPING SETS 하라는 문장


SELECT COL1, COL2, SUM(COL3)

FROM SQLD_33_01

GROUP BY ( COL1, ROLLUP(COL2) ) 또는 ( GROUPING SETS(COL1,(COL1,COL2))



COL1으로만 하나 묶으면 ROLLUP 써야함 GROUP BY 집계함수 (COL1, ROLLUP(COL2))]


COL1,COL2 두개로 묶으면 CUBE COL1하나 묶은거 보이고 아래에 COL2 묶은거 보일 경우



2. 조회문 결과찾기


3,2


SELECT SUM ( CASE WHEN COL1 <='A' THEN 1 END ) AS SUM1,

SUM ( CASE WHEN COL2 < 200 THEN 1 END ) AS SUM2

FROM SQLD_33_07;



3. 조인 기법은

Nested Loop Join

1) 먼저 선행테이블의 조건을 만족하는 행을 추출하여 후행 테이블을 읽으면서 조인을 수행한다.

2) 랜덤 방식으로 액세스 한다.

3) 결과를 가능한 빨리 화면에 보여줘야하는 온라인 프로그램에 적당하다.

'SQLD자격증 대비 > SQLD 기출문제 정리' 카테고리의 다른 글

SQLD 블로그 질문 내용들  (0) 2019.08.16
SQLD 21회 기출문제  (0) 2019.03.12
SQLD 30회차 기출 문제  (0) 2019.03.10

1. order by 숫자 무슨 의미인가요?

order by 1;


-> 1번 colum asc 


order by 2;

-> 2번 컬럼 ASC(오름차순)



2. 테이블 이름 수정 쿼리


RENAME tb_1 TO tb_2; (sql server)


ALTER TABLE tb_1 RENAME TO tb_2; (oracle server)


3. 테이블 컬럼 이름 수정 쿼리


(sql server)

ALTER TABLE 기관분류 ALTER COLUMN 분류명 VARCHAR(30) NOT NULL;

ALTER TABLE 기관분류 ALTER COLUMN 등록일자 DATE NOT NULL;


(oracle)

ALTER TABLE 기관분류 MODIFY COLUMN 분류명 VARCHAR(30) NOT NULL;

ALTER TABLE 기관분류 MODIFY COLUMN 분류명 VARCHAR(30) NOT NULL:


4. 문제집 98번 서브쿼리내용

 EXISTS도 나옴


 서브쿼리에 대한 설명 : 


다중 행 서브쿼리 비교 연산자는 단일 행 서브쿼리의 비교 연산자로도 사용할 수 있다.

단일 행 서브쿼리 비교연산자는 다중 행 서브쿼리의 비교연산자로 사용할 수 없다.


단일 행 서브쿼리의 비교연산자 : = , < , <= , >, >=, <>가 되어야 한다.

다중 행 서브 쿼리의 비교연산자 : IN,ALL


비 연관 서브쿼리가 주로 메인쿼리에 값을 제공하기 위한 목적으로 사용된다.


메인 쿼리의 결과가 서브쿼리로 제공될 수도 있고, 서브쿼리의결과가 메인쿼리로 제공될 수도 있으므로 실행 순서는 상황에 따라 달라진다.


5. 31회 13번



c3->c2->c1 순으로 정렬이 되어야 하는 문제. (가나다순으로 책정리 한다 생각하시면됩니다.)
문자열 비교는 첫자리부터 비교 대상이 되니..

c3 : 1->2->null, 110->1100 순으로 정렬됨.
2 110 110
3 150 110
4 null 110
1 100 1100
5 null 200 v
6 200 200 v

c2 : 정렬된 c3의 구간내에서 
c3의 200 구간의 c2 정렬만 적용됨 200 -> null, 나머지는 순차적임
2 110 110
3 150 110
4 null 110
1 100 1100
6 200 200 v
5 null 200 v

c1 : 정렬된 c3,c2의 중복 구간이 없으므로 정렬 적용될게 없음




6. 문제집 45번


2번은 isnull() 이 col2가 null이면 X로 바꾸는? 건데 where절에 col1이 a인 조건이 나와서 a 행의 col2는 null이라서 X로 실행결과가 나오는거 같아요
4번은 결론적으로 실행결과가 2가 나와야 해요! in(b,c)는 b 또는 c가 들어있는 행을 count 한 것을 찾는 거라서 2입니다. ''는 null이 아니므로 숫자로 카운트 됩니다!

둘다 공백은 count 에 들어가는겅로 알고 있어요! 
null 이 아닌건 전부 count 되는거 같아요


'SQLD자격증 대비 > SQLD 기출문제 정리' 카테고리의 다른 글

33회 기출문제  (0) 2019.08.16
SQLD 21회 기출문제  (0) 2019.03.12
SQLD 30회차 기출 문제  (0) 2019.03.10

DB 테이블을 생성할 때 데이터의 타입을 정의해 주는 것은 아주 중요하다.

연산이 필요한 데이터가 있을 수도 있고, BLOB같이 많은 공간을 사용하는 데이터 타입은 비효율적일 수도 있다.

결국 DB의 저장과 효율을 높이기 위해서는 알맞는 데이터 타입을 사용할 필요가 있으며 테이블의 사이즈를 줄이고 데이터의 처리 속도를 향상 시킬 수 있다.

DEC(6,2) : 소수점 앞의 숫자는 최대 6개, 소수점 뒤의 숫자는 최대 2개를 의미


*VARCHAR와 CHAR의 차이

- VARCHAR는 길이가 변할 수 있으므로(최대 길이는 유효) 길이가 변할 수 있는 데이터의 타입으로 사용하면 유용하다.(공간 절약)

- CHAR 만약 길이가 변하지 않고, 항상 정해진 길이라면 CHAR를 사용할 수 도 있다.


*참고

작은 따옴표를 사용하는 데이터 타입

-char / varchar / date / datetime / time / timestamp / blob

작은 따옴표를 사용하지 않는 데이터 타입

- dec / int

for문을 사용할때 for(int i=0 ; i<parcels.size();i++){

이런 구문을 주로 사용했지만, 이제는

for(Parcel index : parcels){

콜론만을 활용해서 객체 : 리스트 형식으로 for문을 돌려서 리스트 안의 값을 Object안에 넣어주는 것을 목표로 한다.


자바 for each문을 사용할 떄 주의 할 점은 
오직 배열의 값을 가져다 사용할 수만 있고(read) 수정할 수는 없다는 것(write)입니다.

성능 차이는 딱히 없다.


for each(향상된 for문)에서는 배열의 항목 수만큼 실행 부분을 반복하는데 반복이 이루어질 때마다 배열의 항목을 순서대로 꺼내어 변수(number)에 자동으로 대입해 줍니다.


따로 반복 변수(int i)를 선언하거나 배열의 값을 가져오는 부분(array[i]) 없이 실행부분에서는 하고자 하는 작업에 집중할 수 있습니다.

https://cocodo.tistory.com/11?category=739808



자바 데이터베이스 관련 더 찾은 블로그

https://m.blog.naver.com/PostView.nhn?blogId=printf7&logNo=10170263611&proxyReferer=https%3A%2F%2Fwww.google.com%2F


+ Recent posts