23.08.26 항해 99 16기 주특기 Spring 2일차
오늘 공부한 것
* Spring 입문주차 1주차 강의 듣기
오늘도 열심히 1주차 강의를 들었다다행인건 조금씩 레벨1 과제의 가닥이 잡힌다는것이었다
Path Vaiabe Cient 즉 브라우저에서 서버로 HTTP 요청을 보낼 때 데이터를 함께 보낼 수 있다
서버에 보내려는 데이터를 URL 경로에 추가가능
required=false 값을 넣지 않아도 검색 가능
HTTP 데이터를 객체로 처리하는 방법
DTO 데이터 전송 및 이동을 위해 생성되는 객체
Clent에서 보내오는 데이터를 개체로 처리할 때 사용
Database 데이터의 집합
DBMS 데이터베이스를 관리하고 운영하는 소프트웨어
RDBMS 관계형 데이터 베이스 테이블이라는 최소 단위로 구성되며 열과 행으로 이루어짐
테이블간 FK를 통해 다른 데이터를 조합해서 함께 볼수 있다는 장점이있다
3 Layer Architecture 1) Controller 클라이언트의 요청을 받고 거기에 대한 로직 처리는 Sevice에게 전담 Service에서
처리 완료된 결과를 클라이언트에게 응답
2) Service 사용자의 요구사항을 처리(‘비지니스 로직’)하는 실세중의 실세 DB 저장 및 조회가
필요할땐 Repository에게 요청
3) Repository DB관리, DB CRUD 작업을 처리
SQL RDBMS에서 사용하는 언어
1) DDL 테이블이나 관계의 구조를 생성하는데 사용
(1) CREATE 새로운 데이터베이스 및 테이블 생성
ㄱ. 제약조건
(ㄱ) AUTO_INCR EMENT 컬럼의 값이 중복되지 않게 1씩 자동으로 증가하게 해줘 고유변호 생성
(ㄴ) NOT NULL 해당 필드는 NULL 값을 저장할 수 없게 된다
(ㄷ) UNIQUE 해당 필드는 서로 다른 값을 가져와야 한다
(ㄹ) PRIMARY KEY 해당 필드가 NOT NULL과 UNIQUE 제약 조건의 특징을 모두 가짐
테이블 내에서 유일하게 존재하는 값의 조합을 설정하여 중복된 데이터가
테이블에 삽입하는 것을 방지
DBMS는 인덱스를 만들고 해당 데이터를 빨리 찾을 수 있게 도와주는 일종의
목차가 됨
(ㅁ) FOREIGN KEY 하나의 테이블을 다른 테이블에 의존하게 만들며 데이터의 무결성을 보장함
FK를 가지는 테이블이 참조하는 기준 테이블의 열은 반드시 PK, UNIQUE
제약조건이 설정되어있어야함
두 개의 테이블을 연결하는 다리 역할을 함 중복데이터 결합
(ㅂ) CASCADE FOREIGN KEY 로 연관된 데이터를 삭제, 변경 가능
(2) ALTER 데이터베이스와 테이블의 내용을 수정 할 수 있다
(3) DROP 데이터베이스와 테이블을 삭제할 수 있다 데이터 및 테이블 전체를 삭제함
(4) TRUNCATE 데이터베이스와 테이블을 삭제할 수 있다 최초 테이블이 만들어졌던 상태 즉 컬럼값만 남김
2) DCL 데이터의 사용 권한을 관리하는데 사용
(1) GRANT 사용자 또는 ROLE에 대해 권한 부여
(2) REVOKE 사용자 또는 ROLE에 부여한 권환 회수
3) DML 테이블에 데이터를 검색 삽입 수정 삭제하는데 사용
(1) INSERT 테이블에 새로운 row를 추가할 수 있다
(2) SELECT 테이블에 row를 선택할 수 있다
(3) UPDATE 테이블의 row의 내용을 수정할 수 있다
(4) DELETE 테이블의 row를 삭제할 수 있다
JDBC DB에 접근할 수 있도록 JAVA에서 제공하는 API다 DB 연결 로직 변경할 필요 없이 DB 변경 가능
JdbcTemplate Spring에서 제공하는 JDBC