본문 바로가기

프로그래밍

(57)
WebFlux & Non-blocking 출처:https://tech.peoplefund.co.kr/2017/08/02/non-blocking-asynchronous-concurrency.html // 개념정리https://tv.kakao.com/channel/3150758/cliplink/391418995 // 토비 강연 영상https://ztkmkoo.github.io/2017/12/13/spring-webflux/ // 공식사이트 번역해줌 토비 강연을 보는데 WebFlux 및 Non-blocking 등이 나온다.Non-blocking이 왜 나오는지 자세히 봐야할 것 같아 정리한다. 출처의 내용이 더욱 상세함. Spring boot 2.0 및 Spring 5가 릴리즈 되었는데 그 특징은 아래의 그림을 참고 하자. 두가지다. Spring We..
OWASP Top 10 출처: https://blog.naver.com/ym6688/221381596236 OWASP Top 10 in 2017년 OWASP(The Open Web Application Security Project)는 오픈소스 웹 애플리케이션 보안프로젝트이다.주로 웹에 관한 정보노출, 악성 파일 및 스크립트, 보안 취약점 등을 연구한다. OWASP TOP 10 - 2017년 발표 A1. 인젝션 A2. 취약한 인증 A3. 민감한 데이터 노출 A4. XML외부 개체 (XEE)[새로나온 공격] A5. 취약한 접근 통제(취약한 접근 통제) 안전하지 않은 직접객체 참조와 기능 수준의 접근통제 누락을 합한 것 A6. 잘못된 보안 구성 A7. 크로스 사이트 스크립팅(XSS) A8. 안전하지 않은 역직렬화 [새로나온 공격,..
코딩테스트 > 연습 깊이/너비 우선 탐색(DFS/BFS) > 타겟 넘버 get(0) +get(1) -get(1) +get(2) -get(2) +get(2) -get(2) +get(3) -get(3) -get(3) ... +get(4) -get(4) ... ... ... END END ... 해당 문제는 위의 표대로 깊이 우선의 탐색이 가능하다.인덱스가 배열 길이만큼 도달하면 탐색을 마친것으로 간주하고 종료한다.종료할 때 target 값이랑 동일하면 count를 늘린다. public class TargetNumber { /* 타겟 넘버 문제 설명 n개의 음이 아닌 정수가 있습니다. 이 수를 적절히 더하거나 빼서 타겟 넘버를 만들려고 합니다. 예를 들어 [1, 1, 1, 1, 1]로 숫자 3을 만들려면 다음 다섯 방법을 쓸 수 있습니다. -1+1+1+1+1 = 3 +1-1+1+..
Permutation vs Combination & BASEBALL GAME 출처 : http://blog.naver.com/PostView.nhn?blogId=bb_&logNo=221338611903&parentCategoryNo=&categoryNo=67&viewDate=&isShowPopularPosts=false&from=sectionhttps://onsil-thegreenhouse.github.io/programming/algorithm/2018/04/05/permutation_combination/ 순열과 조합은 다르다. 예를 들어 int 배열은 {1, 2, 3, 4, 4, 3, 2, 1, 1}, 그리고 선택 개수는 3이라고 하자. 조합(Combination)하는 경우의 수 : 2,3,41,3,41,2,41,2,3 순열(Permutation)하는 경우의 수 : 2,3,..
프로그래머스 > 완전탐색 > 소수찾기 package search; import java.util.HashSet; import java.util.Set; /** * Description : */ public class Permutation2 { /* https://programmers.co.kr/learn/courses/30/lessons/42839 한자리 숫자가 적힌 종이 조각이 흩어져있습니다. 흩어진 종이 조각을 붙여 소수를 몇 개 만들 수 있는지 알아내려 합니다. 각 종이 조각에 적힌 숫자가 적힌 문자열 numbers가 주어졌을 때, 종이 조각으로 만들 수 있는 소수가 몇 개인지 return 하도록 solution 함수를 완성해주세요. 제한사항 numbers는 길이 1 이상 7 이하인 문자열입니다. numbers는 0~9까지 숫자만으로 ..
DBCP & Timeout 출처: https://fuirosun.tistory.com/entry/JDBC-Timeout%EA%B3%BC-DBCPJDBC Internal - 타임아웃의 이해Commons DBCP 이해하기 DBCP 데이터베이스와 애플리케이션을 효율적으로 연결하는 커넥션 풀(connection pool) 라이브러리는 웹 애플리케이션에서 필수 요소다.웹 애플리케이션 서버로 상용 제품을 사용하다면 보통 제조사에서 제공하는 커넥션 풀 구현체를 사용한다.Apache의 Commons DBCP와 Tomcat-JDBC 등이 있다. 웹 애플리케이션의 요청은 대부분 DBMS(database management system)로 연결되기 때문에 커넥션 풀 라이브러리의 설정은 전체 애플리케이션의 성능과 안정성에 영향을 미치는 핵심이다.따라서..
Annotation 정리 잘 정리된 블로그! 출처:https://effectivesquid.tistory.com/entry/Bean-%EA%B3%BC-Component%EC%9D%98-%EC%B0%A8%EC%9D%B4 1.@Bean vs @Component @Bean외부 라이브러리들을 Bean으로 등록하고 싶은 경우에 사용public class RedisConfig { private @Value("${spring.redis.host}") String redisHost; private @Value("${spring.redis.port}") int redisPort; private @Value("${spring.redis.password}") String password; @Bean public JedisPoolConfig jedi..
Docker image 받기 참조: https://jayden-lee.github.io/post/docker/mysql-install/ 1. 아래 사이트를 통해 mac에 docker를 설치할 수 있다.https://hub.docker.com 2. 버전을 확인해 보자$ docker version 3. mysql 이미지를 찾아보자$ docker search mysql 4. mysql 최신버전을 받아보자.$ docker pull mysql 특정 버전을 받고 싶으면 명시해주면 된다.$ docker pull mysql:5.6 docker hub에서 검색해보면 자세한 문서를 볼 수 있다.https://hub.docker.com/_/mysql 5. Docker 이미지 확인$ docker images REPOSITORY TAG IMAGE ID C..