ddodoi 님의 블로그
7주차-파트02: Express-generator 구조 , 프로젝트 셋팅, Primarykey VS Uniquekey 본문
7주차-파트02: Express-generator 구조 , 프로젝트 셋팅, Primarykey VS Uniquekey
ddodoi 2024. 10. 4. 22:11CHAPTER 1. Express-generator 프로젝트 구조
다음은 우리가 이전에 실습때 express모듈을 설치하면서 자동으로 생성된 파일들이다. 파일별 기능을 자세히 살펴보자.
<Express-generator 프로젝트 구조>
- bin/www : 포트번호 등과 같은 웹 서버를 구축하는데에 필요한 설정 데이터가 정의되어 있는 파일
=> .env파일과 같이 설정 값을 가지고 에러 처리, 기타 추가 설정을 해주는 파일
-node_modules : Node.js, Express에 필요한 모듈들이 설치되는 폴더
-public : images, javascripts, stylesheets -> 정적(ex. 로고, 회사 소개 페이지...) 파일
cf. 동적: 사람마다 다른 데이터
-routes: 각 경로를 담당하는 모듈들이 들어있는 폴더
=라우팅 로직을 구현하는 모듈들
: 클라이언트에서 어떤 요청을 주냐에 따라서 어떤 로직을 수행할 지 파일별로 분할해서 관리하는 정도
(cf. 자바의 controller 역할)
-views: 클라이언트에게 html 코드로 "화면을 보내는 파일"
-app.js : Express 서버의 시작점 => URL에 따라서 라우팅을 해준다.
-package.json: 이 프로젝트에 설치된 모듈 이름, 버전 등등 정보들이 작성되어 있는 파일
CHAPTER 2. 프로젝트 셋팅
✔️외부모듈 한번에 설치
다음처럼 띄어쓰기를 이용하여 외부모듈을 한번에 설치할 수 있다.
CHAPTER 3. MYSQL BRENCH에서 테이블 생성, Primarykey VS Uniquekey
새로운 schema인 Bookshop생성 후 그 안에 테이블을 생성해주었다.
약자들은 차례대로 다음과 같다.
- PK: Primary Key (기본 키) – 테이블에서 각 행을 고유하게 식별하는 열.
- NN: Not Null (NULL 허용 안 됨) – 이 열에 NULL 값을 허용하지 않음.
- UQ: Unique (고유) – 이 열의 값은 테이블 내에서 고유해야 함.
- B: Binary (이진형) – 데이터가 이진 형식으로 저장됨.
- UN: Unsigned (부호 없는 숫자) – 숫자가 음수가 아닌 값만 허용됨.
- ZF: Zero Fill (0 채움) – 숫자를 0으로 채워서 고정 길이로 표시.
- AI: Auto Increment (자동 증가) – 새 행이 추가될 때마다 값이 자동으로 증가함.
- G: Generated Column (생성된 열) – 이 열은 다른 열의 값을 기반으로 자동으로 생성됨.
✔️Primarykey VS Uniquekey
여기서 여러개의 Unique key를 설정할 수 있다는 것은
CREATE TABLE Users (
user_id INT PRIMARY KEY, -- Primary Key (기본 키)
email VARCHAR(255) UNIQUE, -- Unique Key (고유 키)
username VARCHAR(255) UNIQUE -- Unique Key (고유 키)
);
다음처럼 한 테이블 안에서 Primarykey 속성은 한번만 설정이 가능하지만, Unique Key는 그 제한 없이 여러개의 열에 대하여 고유성제약조건 부여가 가능하단 것이다.
'웹풀스택 일일정리' 카테고리의 다른 글
7주차-파트05: Lorem Picsum, URL이 같을 경우 (0) | 2024.10.05 |
---|---|
7주차-파트03:http-status-codes 모듈, 컨트롤러, 해싱,비밀번호 암호화(crypto) (0) | 2024.10.04 |
7주차-파트01: DB diagram사이트 소개, API 설계(2) (0) | 2024.10.01 |
6주차-파트04: API 설계(1) (1) | 2024.09.29 |
6주차-파트03: next(), 쿠키 vs 세션 vs JWT, .env파일 (0) | 2024.09.27 |