Back-End 179

[백엔드 과정][자바 기초] - hashCode와 equals 그리고 TreeSet과 HashSet

https://kizoo.gitlab.io/docs/archive/java/002/ 2 HashSet으로 1들의 집합을 만듭니다. import java.util.*; class Sameness { public static void 집합크기(Set 집합, Object[] elements) { Collections.addAll( 집합, elements ) ; System.out.println( 집합.toString() + "의 원소 수는 " + 집 kizoo.gitlab.io 1. HashSet으로 1들의 집합을 만듭니다. HashSet을 사용한 중복 제거에도 불구하고 set 안에는 왜 5개나 되는 1이 존재하는 것일까? 자바는 모든 객체에 해시코드가 있다. 또한 타입마다 해시코드가 다르기 때문에 이 각기 ..

[백엔드 과정][자바 기초] - call - by - value

https://kizoo.gitlab.io/docs/archive/java/001/ 1 Java에서는 call-by-value로 인자 값을 주고 받습니다. class 물체 { private int n = 0; public 물체( int m ) { n = m; } public void modify( int m ) { n = m; } public String toString() { return "" + n; } } class ParameterPassing { public stati kizoo.gitlab.io 1. 자바의 경우 함수에 전달되는(매개변수로) 인자의 데이터 타입에 따라서 함수 호출 방식이 달라진다. 기본 자료형의 경우 call - by - value로 int, short, long, float,..

[백엔드 과정][자바 기초] - 1. 추상클래스와 인터페이스(1)

1. 인터페이스와 추상 클래스란? 인터페이스란? 추상 클래스란? 공통점 추상클래스와 인터페이스는 선언부만 있고 구현 내용이 없는 클래스이다. 자기 자신이 직접 객체를 생성할 수 없으며, 자식 클래스가 추상클래스를 상속(extends)받거나, 인터페이스를 구현(implements)하여 객체를 생성할 수 있다. 선언된 타입과 자식 타입이 같아야 한다. 차이점 인터페이스 상속이 아닌 기능 구현에 사용한다. 다중 상속이 가능하다. 아주 간단한 설계도로 생각하면 편하고 이때 메소드 바디를 작성하면 안 된다.(선언만 가능) implements 구현한다. 추상 클래스 다중 상속이 불가하다. 상속 관계가 필요할 때 사용한다.(그러나 요즘 추세는 인터페이스를 사용하는 것이다. 여러 상속 관계가 얽히면 복잡해지기 때문) ..

[데이터베이스][데이터베이스 개념 잡기] - 1. 데이터베이스

1. 데이터베이스 1.1 데이터와 데이터베이스, DBMS 데이터와 정보 데이터는 사전적인 의미로 자료와 정보라는 두 가지 의미가 있다. 데이터베이스 분야에서는 데이터와 정보는 다른 의미로 해석한다. 데이터 - 정제하지 않은 값이나 사실 또는 자료 자체를 의미한다. 정보 - 수집한 데이터를 어떤 목적을 위해 분석, 가공하여 가치를 추가하고 새로운 의미를 이끌어 낼 수 있는 결과로 파일 시스템과 DBMS 과거 데이터베이스 개념 이전에는 데이터를 파일 시스템을 이용해서 관리했다. 파일 시스템은 분산된 데이터들을 관리하는 관리체계였기 때문에 많은 문제가 발생했고 이를 해결하기 위해서 DBMS가 등장하게 됐다. DBMS를 통한 데이터 관리? 효율적인 데이터 관리를 위해 데이터베이스 관리 시스템이 등장했다. DBM..

Back-End/DB 2022.07.28

[Spring DB][자바 예외] - 체크, 언체크 예외의 활용 그리고 예외 포함 스택 트레이스

💻본 포스팅은 '스프링 MVC 2편 - 백엔드 웹 개발 활용 기술 - 김영한'님의 강의를 듣고 작성되었습니다. https://inf.run/As6W 스프링 DB 1편 - 데이터 접근 핵심 원리 - 인프런 | 강의 백엔드 개발에 필요한 DB 데이터 접근 기술을 기초부터 이해하고, 완성할 수 있습니다. 스프링 DB 접근 기술의 원리와 구조를 이해하고, 더 깊이있는 백엔드 개발자로 성장할 수 있습니다., - 강의 www.inflearn.com 목차 1. 체크 예외 활용 2. 언체크 예외 활용 3. 예외 포함과 스택 트레이스 1. 체크 예외 활용 현재 실무에서는 체크 예외보단 언체크 예외를 사용하는 것이 일반적이라고 한다. 대부분 다 언체크 예외를 사용하고 예외적으로 비지니스 로직에 문제가 발생해서 이 문제를 ..

Back-End/Spring 2022.07.20

[Spring DB][자바 예외] - 자바의 예외 이해

💻본 포스팅은 '스프링 MVC 2편 - 백엔드 웹 개발 활용 기술 - 김영한'님의 강의를 듣고 작성되었습니다. https://inf.run/As6W 스프링 DB 1편 - 데이터 접근 핵심 원리 - 인프런 | 강의 백엔드 개발에 필요한 DB 데이터 접근 기술을 기초부터 이해하고, 완성할 수 있습니다. 스프링 DB 접근 기술의 원리와 구조를 이해하고, 더 깊이있는 백엔드 개발자로 성장할 수 있습니다., - 강의 www.inflearn.com 목차 1. 자바 예외의 계층 2. 예외의 기본 규칙 3. 체크 예외의 기본 이해 4. 언체크 예외의 기본 이해 5. 체크 예외와 언체크 예외의 차이 1. 자바 예외의 계층 자바에서 객체의 최고 조상이 object이기에 예외의 최상이 부모 역시 Object이다. 예외의 최..

Back-End/Spring 2022.07.12

[React.js, 스프링 부트, AWS로 배우는 웹 개발 101][인증 백엔드 통합] - 스프링 시큐리티

본 포스팅은 'React.js, 스프링 부트, AWS로 배우는 웹 개발 101 - 김다정'님의 책을 보고 작성되었습니다. 목차 1. 스프링 시큐리티 설정 2. 인증된 사용자 사용하기 3. 패스워드 암호화 4. 정리 1. 스프링 시큐리티 설정 서블릿 필터 사용을 위한 작업 두 가지 서블릿 필터 구현 서블릿 컨테이너에 이 서블릿 필터를 사용하라고 알려주는 설정 작업 [서블릿 컨테이너에 이 서블릿 필터 사용하라고 알려주는 설정 작업] package com.example.demo.config; import com.example.demo.security.JwtAuthenticationFilter; import lombok.extern.slf4j.Slf4j; import org.springframework.bean..

[React.js, 스프링 부트, AWS로 배우는 웹 개발 101][인증 백엔드 통합] - 스프링 시큐리티 와 서블릿 필터

본 포스팅은 'React.js, 스프링 부트, AWS로 배우는 웹 개발 101 - 김다정'님의 책을 보고 작성되었습니다. 목차 1. 스프링 시큐리티를 사용한 인증, 인가 2. JWT 생성 및 반환 구현 3. 스프링 시큐리티와 서블릿 필터 4. JWT를 이용한 인증 구현 1. 스프링 시큐리티를 사용한 인증, 인가 API 요청에 토큰 또는 아이디와 비밀번호를 보내는 작업을 스프링 시큐리티를 사용해 코드를 한 번만 짜고, 이 코드가 모든 API 요청에 수행되기 전에 실행되도록 설정및 구현을 해야한다. 2. JWT 생성 및 반환 구현 사용자 정보를 바탕으로 헤더와 페이로드를 작성하고 전자 서명한 후 토큰을 리턴해야 한다. JWT 관련 라이브러리를 디펜던시에 추가한다. implementation group: 'i..

[Spring DB][커넥션풀과 데이터소스 이해] - DataSource의 이해

💻본 포스팅은 '스프링 MVC 2편 - 백엔드 웹 개발 활용 기술 - 김영한'님의 강의를 듣고 작성되었습니다. https://inf.run/As6W 스프링 DB 1편 - 데이터 접근 핵심 원리 - 인프런 | 강의 백엔드 개발에 필요한 DB 데이터 접근 기술을 기초부터 이해하고, 완성할 수 있습니다. 스프링 DB 접근 기술의 원리와 구조를 이해하고, 더 깊이있는 백엔드 개발자로 성장할 수 있습니다., - 강의 www.inflearn.com 목차 1. DataSource와 커넥션 풀 2. DriveManager와 DataSource(DriveManagerDataSource) 3. HikariDataSource 4. DataSource 데이터베이스에 적용 5. Connection Pool과 DataSource..

Back-End/Spring 2022.06.24

[Spring DB][커넥션풀과 데이터소스 이해] - 커넥션풀과 데이터소스란 무엇인가?

💻본 포스팅은 '스프링 MVC 2편 - 백엔드 웹 개발 활용 기술 - 김영한'님의 강의를 듣고 작성되었습니다. https://inf.run/As6W 스프링 DB 1편 - 데이터 접근 핵심 원리 - 인프런 | 강의 백엔드 개발에 필요한 DB 데이터 접근 기술을 기초부터 이해하고, 완성할 수 있습니다. 스프링 DB 접근 기술의 원리와 구조를 이해하고, 더 깊이있는 백엔드 개발자로 성장할 수 있습니다., - 강의 www.inflearn.com 목차 1. 커넥션풀(ConnectionPool) 2. 데이터소스(Data source) 1. 커넥션풀(Connection Pool) 커넥션풀 이전의 문제 상황 DriveManager를 통해서 데이터베이스에 커넥션을 요청하면 매번 새로운 커넥션을 획득한다. 이때 커넥션을 ..

Back-End/Spring 2022.06.22