。゚(*´□`)゚。

코딩의 즐거움과 도전, 그리고 일상의 소소한 순간들이 어우러진 블로그

분류 전체보기 397

4. 자료구조

4.1 복잡도 알고리즘을 수행하면 시간과 메모리 공간 드으이 자원이 사용되며 시간 복잡도는 알고리즘의 실행 시간을 정량화하는 것 공간 복잡도: 실행하는 데 필요한 메모리 사용량을 정량화 복잡도 표기법: 빅오 표기법 입력 값(n)에 대한 수식에서 최고차항을 기준으로 알고리즘이 수행되는 최악의 시간 복잡도를 표현 최고차항을 기준으로 표현하는 이유는 연산의 수가 극한에 수렴할 때 나머지 항이 복잡도에 미치는 영향은 미미하기 때문이다. 4.2 선형 자료구조 연속적으로 데이터가 나열되는 자료구조를 나타낸다. 배열, 리스트, 스택, 큐 4.2.1 배열 정해진 크기만큼 데이터가 일렬로 저장되는 정적 자료구조 각 데이터를 배열의 요소라고 하며 데이터를 가리키는 번호를 인덱스라고 한다. 접근: 걸리는 시간 복잡도 O(1..

CS 2023.12.18

3.4 조인

조인 여러 테이블을 합쳐 원하는 데이터를 얻는 작업 테이블을 하나로 합치려면 각테이블에서 공통된 열을 이용함. 조인 연산자 ON 조인 연산에 대한 조건절을 작성할 때 사용하는 연산자로, 각 테이블에서 어떠한 속성을 사용해 연산을 수행할지 나타낸다. USING 조인 연산을 하려는 테이블에서 속성명이 동일할 때 USING 연산자 뒤에 공통되는 속성명만 작성해 조건을 간단하게 적을 수 있다. WHERE 테이블에서 원하는 데이터를 조회하기 위한 조건절을 작성할 때 사용하는 연산자. IN WHERE 절과 함께 사용하며, IN 연산자 뒤에 나오는 조건에 하나라도 해당하는 값을 검색할 수있다. BETWEEN 특정 범위에 속하는 데이터를 조회할 . 때사용하는 연산자, > < 처럼 값을 비교하는 데 사용 LIKE 특정 ..

CS 2023.12.16

3.3 트랜젝션

3.3.1 트랜젝션 데이터베이스의 상태를 바꾸기 위해 수행하는 작업의 단위 또는 일련의 연산 특징(ACID) 원자성(Atomicity): 트랜젝션이 데이터베이스에 완전히 반영되거나 아예 실행되지 않아야 한다. 일관성(Consistencty): 트랜젝션이 수행이 완료된 데이터베이스는 일관성이 있다. 독립성(Isolation): 수행 중인 트랜잭션에 다른 트랜잭션이 끼어들 수 없다. 영속정(Durability): 완료한 트랜잭션의 결과가 데이터베이스에 영구적으로 반영된다. 명령어 TCL(Transaction Control Language) COMMIT: 트랜젝션이 정상적으로 종료되어 데이터베이스에 변경 사항을 반영하는 명령어 ROLLBACK: 트랜젝션이 비정상적으로 종료되어 변경 사항을 취소하고 데이터베이스..

카테고리 없음 2023.12.16

3.2 관계형 데이터 베이스에서 사용하는 개념

키 데이터베이스에서 튜플을 구분하기 위한 속성 또는 속성의 집합 유일성: 하나의 . 키값으로 튜플을 식별할 수 있는 특성 최소성: 튜플을 식별하는 데 필요한 속성만으로 이루어져 있는 특성 DBMS(데이터베이스 관리 시스템)의 다섯 가지 키 슈퍼 키: 튜플을 식별할 수 있어서 유일성은 만족하지만 후보 키와 달리 최소성을 만족하지 않아도 된다. 후보 키: 튜플을 식별할 수 있는 유일성과 필요한 속성만으로 구성되는 최소성을 만족해야한다. 기본 키: 후보 키 중에서 메인이 되는 키로 NULL 값을 가지면 안 된다. 대체 키: 후보 . 키중.기본 키를 제외한 키 외래 키: 다른 테이블의 기본 키를 참조하는 키 무결성 데이터베이스에 저장된 데이터와 실제 데이터가 일치하는 정확성과 데이터가 일정하게 유지되는 일관성을..

CS 2023.12.15

[BleuAuction 리팩토링] 12/13 (수) 종원's Service 코드 리뷰

계속 반복되는 코드를 메서드로 만들어바라 ! 하는 종원's 리뷰 이런 생각을 한 번,, 진짜 해봤는데 그냥 생각만 하고 넘어갔다. 바꾸니까 좋잖아 ,,!! 서비스를 두 개로 나누고 나서 아래와 같이 조언을 받았다. 그래서 고쳤더니;; 테스트 코드가 작동이 안 됐다. 아니 왜 안 되는거야 !!!!! 검색해보니까 주입이 어쩌고 저쩌고 하는데 이미 다 @를 달아놨는데 왜 ,,! 하고 생각해보니,,, 서비스를 두 개로 나누면서 서비스에서 서비스를 주입받는 것을 깨달았고 Mock 객체로 추가 해주니 정상 작동했다. 오늘의 발견 ^ㅡ^

앱서버 웹서버

요청자가 데이터를 가지고 있는 자(웹서버)에게 request(요청)를 함 요청자의 위치를 알려주는 ip주소를 보내야 하고 무엇을 필요로 하는지 알려주는 url(자원을 요청하는 주소)이 있어야 함. ex) http:~/a.html // http:~/b.avi 응답자(웹서버)는 요청자의 ip주소를 토대로 response(응답)해줌. 웹서버는 주로 아파치를 사용하며 Static 자원(정적인 자원)을 지원함 JSP 혹은 자바코드를 요청하면 아파치는 자바코드를 이해하지 못 하기 때문에 톰켓 추가 톰켓이 JSP → 자바 → html 문서로 변환 → 아파치가 응답 아파치(Apache)는 웹 서버 소프트웨어 중 하나로, 가장 널리 사용되는 오픈 소스 웹 서버 중 하나입니다. Apache HTTP Server라고도 불리..

CS 2023.12.12

[BleuAuction 리팩토링] 12/11(월) 특이사항 없음

종원님을 기다린다는 핑계와 ,,, 약간의 무기력증 ,,, 등등 핑계를 만들어 업데이트가 없었다. 지난 주에 jsp공부한다고 바빴음. 다음 회의까지 해올 것은 서비스 나누기 isEmpty() 문자열(String) 객체에서 사용되는 메서드로, 이 메서드는 문자열이 null이거나 길이가 0인 경우 true를 반환하며, 그렇지 않으면 false를 반환합니다. Spring Data JPA에서는 JpaRepository 인터페이스를 사용하여 자동으로 CRUD(생성, 읽기, 갱신, 삭제) 기능을 구현할 수 있습니다. JpaRepository는 Spring Data JPA에서 제공하는 기본적인 리포지토리 인터페이스 중 하나입니다. import org.springframework.data.jpa.repository.Jp..

[Spring 입문] 5. 웹 MVC 개발/Thymeleaf

Thymeleaf를 사용하는 웹 페이지에서 XML 네임스페이스를 정의하는 부분 Thymeleaf는 서버 사이드 및 클라이언트 사이드 템플릿 엔진으로 사용되며, th:로 시작하는 속성을 사용하여 템플릿에서 서버 변수 및 표현식을 사용할 수 있음. 이렇게 정의된 네임스페이스는 Thymeleaf 속성을 사용할 때 사용. th:text="${pageTitle}"는 서버 변수 pageTitle의 값을 출력하는 Thymeleaf 속성 Default Title 회원 웹 기능 - 홈 화면 추가 package hello.hellospring.controller; import org.springframework.stereotype.Controller; import org.springframework.web.bind.ann..

강의/Spring 2023.12.11

[Spring 입문] 4. 스프링 빈과 의존관계

스프링 빈(Spring Bean) 스프링 프레임워크에서 관리되는 객체 스프링은 객체 지향 프로그래밍의 장점을 활용하여 애플리케이션을 개발하는데, 이때 많은 객체들이 생성되고 관리되어야 합니다. 스프링 빈은 이러한 객체들을 스프링 컨테이너가 생성, 관리, 조립하여 제공하는 것입니다. 특징: 생성과 소멸의 관리: 스프링 컨테이너가 객체의 생성과 소멸을 담당하므로 개발자는 객체의 생명주기를 직접 다룰 필요가 없습니다. 의존성 주입(Dependency Injection): 스프링은 빈을 생성하고 조립할 때 의존성 주입(DI)을 통해 필요한 의존 객체들을 자동으로 주입합니다. 이로써 객체 간의 결합도가 낮아지며 유지보수와 테스트 용이성이 향상됩니다. 스코프 관리: 스프링은 빈의 스코프를 관리하며, 싱글톤, 프로토..

강의/Spring 2023.12.11

[Spring 입문] 3. 회원 도메인 개발

일반적인 웹 어플리케이션 구조 컨트롤러: 웹 MVC의 컨트롤러 역할 서비스: 핵심 비즈니스 로직 구현 리포지토리: 데이터베이스에 접근, 도메인 객체를 DB에 저장하고 관리 도메인: 비즈니스 도메인 객체, 예) 회원, 주문, 쿠폰 등등 주로 데이터베이스에 저장하고 관리됨 회원 객체 public class Member { private Long id; private String name; public Long getId() { return id; } public void setId(Long id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } } 회원 ..

강의/Spring 2023.12.11