본문 바로가기

전체 글

(93)
Spring boot 자주 사용되는 어노테이션(Annotations) @SpringBootApplication - Spring boot application 으로 설정 @Controller - View를 제공하는 controller로 설정 @RestController - REST API를 제공하는 controller로 설정 @RequestMapping - URL 주소를 매핑 @GetMapping - Http GetMethod URL 주소 매핑 @PostMapping - Http PostMethod URL 주소 매핑 @PutMapping - Http PutMethod URL 주소 매핑 @DeleteMapping - Http DeleteMethod URL 주소 매핑 @RequestParam - Http Body를 Parsing 매핑 @Vaild - POJO java class..
3장 -3 데이터 변경을 위한 SQL문 데이터베이스를 만든 후 입력/수정/삭제하는 기능 입력할 때는 INSERT 수정은 UPDATE 삭제는 DELETE 문을 사용 1. 데이터 입력: INSERT INSERT 문의 기본 문법 INSERT INTO 테이블 [(열1, 열2, ...)] VALUES (값 1, 값 2, ...) 테이블 이름 다음에 나오는 열은 생략이 가능. 열 이름을 생략할 경우 values 다음에 나오는 값들의 순서 및 개수는 테이블을 정의할 때의 열 순서 및 개수와 동일해야 한다. 간단한 테이블을 만들어보자. 위 예제에서는 아이디와 이름만 입력하고 나이는 입력하고 싶지 않다면 아래와 같이 테이블 이름 뒤에 입력할 열의 이름을 써줘야 한다. 이 경우 생략한 나이 열에는 아무것도 없다는 의미의 NULL 값이 들어간다. INSERT I..
3장 -2 좀 더 깊게 알아보는 SELECT 문 SELECT 문에서는 결과의 정렬을 위한 ORDER BY, 결과의 개수를 제한하는 limit, 중복된 데이터를 제거하는 distinct 등을 사용할 수 있다. GROUP BY 절은 지정한 열의 데이터들을 같은 데이터끼리는 묶어서 결과를 추출한다. 주로 그룹으로 묶는 경우는 합계, 평균, 개수 등을 처리할 때 사용하므로 집계 함수와 함께 사용된다. GROUP BY 절에서도 HAVING 절을 통해 조건식을 추가할 수 있다. HAVING 절은 WHERE 절과 비슷해 보이지만 GROUP BY절과 함께 사용되는 것이 차이점이다. 1. ORDER BY 절 SELECT 절의 형식 SELECT 열_이름 FROM 테이블_이름 WHERE 조건식 GROUP BY 열_이름 HAVING 조건식 ORDER BY 열_이름 LIMI..
3장 SQL 기본 문법 // SELECT ~ FROM ~ WHERE SELECT 문은 구축이 완료된 테이블에서 데이터를 추출하는 역활을 한다. SELECT 문의 기본 형식: SELECT ~ FROM ~ WHERE SELECT 다음에는 열이름이, FROM 다음에는 테이블 이름이 나온다. WHERE 다음에는 조건식이 나오는데 조건식을 다양하게 표현함으로써 데이터베이스에서 원하는 데이터를 뽑아낼 수 있다. (1) 실습용 데이터 베이스 만들기 1. 완성된 SQL 다운로드 한빛미디어 사이트의 혼공 자료실에 접속해서 예제 소스를 다운로드 https://www.hanbit.co.kr/src/10473 https://www.hanbit.co.kr/src/10473 www.hanbit.co.kr 2. File - Open SQL Script 메뉴를 선택, market.db.sql을 선택..
2장 2. 데이터베이스 개체 데이터베이스의 핵심 개체: 테이블, 인덱스, 뷰, 스토어드 프로시저, 트리거, 함수, 커서 등인덱스: 데이터를 조회할 때 결과가 나오는 속도를 빠르게 해줌.뷰: 테이블의 일부를 제한적으로 표현할 때 주로 사용스토어드 프로시저: SQL에서 프로그래밍이 가능하도록 해줌.트리거: 잘못된 데이터가 들어가는 것을 미연에 방지 1. 인덱스 데이터가 많을 때 결과가 나오는 시간을 대폭 줄여주는 역활.인덱스 개념: '찾아보기'와 비슷한 개념. 데이터에 라벨을 달아주는 것.기존의 데이터 찾는 법SELECT * FROM member WHERE member_name = '아이유';  어떻게 데이터를 찾았는지 확인하기 위해서 [Execution Plan(실행 계획)] 탭을 클릭하면 Full Table Scan 이라고 나온다...
2장 1. 데이터베이스 시작부터 끝까지 1. 데이터베이스 구축 절차 데이터베이스 만들기 => 테이블 만들기 => 데이터 입력/ 수정하기 => 데이터 조회/활용하기 2. 데이터베이스 구축 실습 *FIle -> close tab으로 탭 닫기 가능 3. 테이블 만들기 1. 테이블 설계 => 열 이름과 데이터 형식을 지정 - 데이터 형식, 최대 길이, Null을 설정 => Null은 빈 것을 의미하고 Not Null은 반드시 입력해야 한다는 의미이다. (1) 회원 테이블 열 이름(한글) 영문 이름 데이터 형식 최대 길이 널 허용 안함(Not Null) 아이디(기본 키) member_id 문자(CHAR) 8글자 Yes 회원 이름 member_name 문자(CHAR) 5글자 Yes 주소 member_addr 문자(CHAR) 20글자 No (2) 제품 테..
1. SQL 설치 및 개념 정리 1장 정리 MySQL 서버는 데이터베이스 엔진을 운영하는 핵심 프로그램 MySQL 워크밴치는 MySQL 서버에 접속하기 위한 프로그램 root는 MySQL 관리자 이름 기본적으로 생성 중요 용어 MySQL: 대표적인 관계형 DBMS MariaDB: MySQL 초기 개발자가 오라클 사를 퇴사한 후 만든 DBMS, MySQL과 유사하고 무료 MySQL Server: MySQL의 여러 소프트웨어 중 엔진 기능을 하는 핵심 소프트웨어 MySQL Workbench: MySQL 서버에 접속,연결하기 위한 클라이언트 도구 2장 정리 데이터베이스 모델링: 모델링이 잘되어야 제대로 된 데이터베이스를 구축 가능 대표적으로 폭포수 모델을 사용, 데이터베이스 모델링은 폭포수 모델의 업무 분석과 시스템 설계 단계에 해당. 이 ..
7. Validation Validation, 검증이란 프로그래밍에 있어서 가장 필요한 부분이다. 특히 Java에서는 null 값에 대해서 접근 하려고 할 때 null pointer exception이 발생 함으로, 이러한 부분을 방지 하기 위해서 미리 검증을 하는 과정을 Validation 이라고 한다. 단순하게는 아래와 같은 코드들이 있다. 특정한 클래스 객체가 들어온다고 하던지 반복된다면 여러가지 문제점이 야기된다. 1. 검증해야 할 값이 많은 경우 코드의 길이가 길어진다. 2. 구현에 따라서 달라 질 수 있지만 Service Logic과의 분리가 필요 하다. 3. 흩어져 있는 경우 어디에서 검증을 하는지 알기 어려우며, 재사용의 한계가 있다. 4. 구현에 따라 달라 질 수 있찌만, 검증 Logic이 변경 되는 경우 테스트..