profile
이전 블로그: https://blog.naver.com/max9106
post-thumbnail

[Spring Boot] spring data JPA

Object Relational Mapping의 약자로, 객체와 relational(테이블)을 mapping 할 때 발생하는 개념적인 불일치를 해결하는 프레임워크이다. 객체는 크기가 다양한 여러 프로퍼티를 가지고있지만, 테이블은 한정되어 있기 때문에, 어떻게 객체를 테

3일 전
·
0개의 댓글

[Algorithm] 라빈 카프(Rabin-Karp) 알고리즘

라빈 카프 알고리즘이란? 특이한 문자열 알고리즘이다. 항상 빠르지는 않지만 일반적인 경우 빠르게, 작동하는 간단한 구조의 문자열 알고리즘이다. 해시기법을 사용한다. 해시 기법은 긴 데이터를 그것을 상징하는 짧은 데이터로 바꿔주는 기법이다. 각 문자의 아스키 코드

4일 전
·
0개의 댓글
post-thumbnail

[Spring Boot] PostgreSQL

pom.xml에 postgre 드라이버 의존성을 추가해준다.docker를 사용해 postgresql을 설치한다.컨테이너 안의 5432포트를 localhost의 5432포트로 mapping하고, postgresql 정보를 설정해준다.postgre 서버에 접근하려면, 아래

4일 전
·
0개의 댓글
post-thumbnail

[Spring Boot] DBCP & MySQL

DBCP는 DataBase Connection Pool이다. connection을 여러개 미리 만들어 놓고 필요할 때 마다 가져다 쓰는 것이다.몇 개를 만들어놓을지, 얼마나 응답이 없으면 error를 던질지 등의 여러가지 설정을 할 수 있다.DBCP가 애플리케이션 성능

4일 전
·
0개의 댓글
post-thumbnail

[Spring Boot] 인메모리 데이터베이스

스프링부트가 지원하는 인메모리 데이터베이스는 3가지가 있다.1\. H22\. HSQL3\. DerbySpring-JDBC가 클래스패스에 있으면 자동 설정이 필요한 빈을 설정 해준다.(DataSource, jdbcTemplate)pom.xml에 jdbc와 h2 의존성을

5일 전
·
0개의 댓글

[Algorithm] 문자열 매칭 알고리즘

특정한 글이 있을 때, 그 글안에서 특정한 문자열을 찾는 알고리즘이다. 단순히 하나씩 비교하는 가장 간단한 형태의 알고리즘이다. 찾을 문자열을 전체 문장의 처음부분에 두고, 하나씩 비교한다.일치할 때 까지, 한 칸씩 이동하며 비교한다.시간 복잡도는 '찾을 문자열의 길이

5일 전
·
0개의 댓글
post-thumbnail

[Spring Boot] CORS

Cross-Origin Resource Sharing(서로 다른 origin끼리 리소스를 공유할 수 있는 기능을 제공하는 표준이다.)의 약자이다. SOP(Single-Origin Policy: 같은 Origin에만 요청을 보낼 수 있다.)를 우회하기 위한 표준 기술이다

5일 전
·
0개의 댓글

[Spring Boot] HATEOAS

Spring HATEOAS란? Hypermedia As The Engine Of Application State를 구현하기 위해 편리한 기능들을 제공해주는 tool(라이브러리)이다. Hypermedia As The Engine Of Application State는

5일 전
·
0개의 댓글

[Algorithm] 이분 매칭(Bipartite Matching)

이분 매칭이란? 네트워크 플로우의 한 종류로, 네트워크 플로우와 연계되는 알고리즘이다. 네트워크 플로우의 특정한 경우에만 사용가능한데, 집단이 오로지 두 개의 집단으로 나눠졌을 때 사용할 수 있다. 최대 유량을 구하는 문제라고도 볼 수 있다. 두 집단을 그래프로

6일 전
·
0개의 댓글
post-thumbnail

[Spring Boot] ExceptionHandler

스프링 부트에는 기본적으로 error handler가 들어가 있다.index페이지가 없을 때, localhost:8080으로 요청 시, 보이는 화면이 기본 error handler가 처리해준 결과이다.

6일 전
·
0개의 댓글
post-thumbnail

[Spring Boot] HtmlUnit

html을 단일 테스트하기 위한 tool이다. webClient를 만들어서 사용한다. webClient로 특정 페이지에 요청을 보내고 결과를 받아서 HtmlPage라는 인터페이스를 통해 xml, text 등 여러가지로 가져올 수 있다.

6일 전
·
0개의 댓글
post-thumbnail

[Spring Boot] 템플릿 엔진 - Thymeleaf

동적 컨텐츠를 생성하는 방법이다. view만 만드는데 사용하는 것이 아니다. 여러 가지 용도(code generation, email 등)로 사용할 수 있지만, 주로 사용하는 기능이 view를 만드는 것이다.

6일 전
·
0개의 댓글

[Spring Boot] 웹 JAR

웹 JAR이란? 클라이언트에서 사용하는 Reactjs, Angularjs, vuejs, jquery 등을 JAR 파일로 스프링부트에 추가해 줄 수 있다. 그 JAR 파일에 있는 css나 java script를 참조할 수 있다. pom.xml에 의존성 추가해주면 사용 할 수 있다. 스프링 부트는 웹 JAR의 기본 매핑을 제공한다. /webjars/**...

2020년 2월 9일
·
0개의 댓글

[Spring Boot] 정적 리소스 지원

정적 리소스 우리가 서버에서 어떤 작업을 처리해서 요청이 들어왔을 때, 뷰를 만들어 내는 것이 아니라, 웹 브라우저나 클라이언트에서 요청이 들어왔을 때, 그것에 대한 리소스가 이미 만들어져있고, 만들어져 있는 리소스를 그냥 보내주면 되는 것이다. 기본적으로 아래 위치에 있는 리소스들은 /**요청에 mapping되어 제공된다. classpath:/stat...

2020년 2월 9일
·
0개의 댓글

[Spring Boot] ViewResolver

ContentNegotiatingViewResolver ViewResolver 중의 하나로, 들어오는 요청의 accept header(브라우저 또는 클라이언트가 어떠한 타입의 본문을 응답을 원한다고 서버에 알려주는 것)에 따라 응답이 달라진다. 어떠한 요청이 들어오면 그 요청의 응답을 만들 수 있는 모든 view를 찾아내고, 최종적으로 accept hea...

2020년 2월 9일
·
0개의 댓글

[Spring Boot] 스프링 웹 MVC - HttpMessageConverters

스프링부트는 기본 설정에 의해, 기본적으로 웹 mvc를 바로 사용할 수 있다.(자동 설정 파일이 적용되었기 때문) HttpMessageConverters 스프링 프레임워크에서 제공하는 인터페이스이며 spring MVC의 일부분이다. HTTP 요청 본문을 객체로 변경하거나, 객체를 HTTP 응답 본문으로 변경할 때 사용한다. @RequestBody / ...

2020년 2월 9일
·
0개의 댓글

[Algorithm] 네트워크 플로우(Network Flow)

네트워크 플로우란? 특정한 지점에서 다른 지점으로 얼마나 많은 양의 데이터가 흐르고 있는지를 측정하는 알고리즘 각 노드 사이는 실제로 가는 양(유량: Flow)/갈수있는 총량(용량: Capacity) 으로 나타낼 수 있다. 한 노드에서 여러 노드를 거쳐 최종 목적지에 도착할 때 까지, 해당 경로의 간선 중 용량이 가장작은 값이 출발점에서 목적지까지의 ...

2020년 2월 9일
·
0개의 댓글

[Spring Boot] Devtools

Spring-Boot-Devtools란? 스프링 부트가 제공하는 optional한 tool이다. 기본적으로 적용되는 것은 아니다. pom.xml에 의존성 추가를 해줘야한다. devtools를 의존성 추가해주면, 기본적으로 제공되는 properties들이 바뀌는 것이 있다. 대표적으로 캐쉬관련된 항목들을 false로 바꿔준다.(그 외에도 여러가지가 있...

2020년 2월 7일
·
0개의 댓글

[Algorithm] 강한 결합 요소(Strongly Connected Component)

강한 결합 요소란? SCC라고도 부르며, 그래프 안에서 강하게 결합된 정점 집합을 뜻한다. 같은 SCC에 속하는 두 정점은 서로 도달이 가능하다. 싸이클이 발생하는 경우 SCC이다. 즉, 방향 그래프일 때만 의미가 있다. 무향 그래프인 경우 그래프 전체가 SCC이기 때문에 의미가 없다. SCC를 추출하는 알고리즘은 2가지가 있다. 코사라주 알고리즘:...

2020년 2월 7일
·
0개의 댓글

[Spring Boot] 테스트

테스트란? 테스트 파일에는 @SpringBootTest 어노테이션이 붙어있는데, @SpringBootTest 어노테이션은 @SpringBootApplication 어노테이션이 붙어있는 스프링 메인 애플리케이션을 찾아간다. 그리고 메인에서 부터 시작하는 모든 Bean 스캔을 한다. 그 모든 것을 테스트용 애플리케이션 context를 만들면서 모든 Bean을...

2020년 2월 6일
·
0개의 댓글