일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 하드웨어
- 알고리즘
- 유비쿼터스
- 백준
- IFELSE
- java
- java프로그래밍
- Spring
- 백준알고리즘
- 1차원배열
- 변수
- FOR문
- Scanner class
- IF
- MySQL
- 기본
- 반복문
- 함수
- 스캐너
- error
- 자료구조
- Scanner
- for
- C언어
- 배열
- IF문
- 자바
- 스캐너클래스
- 데이터
- 파이썬프로그래밍기초
- Today
- Total
목록전체 글 (93)
정리하고기록하자
Spring Boot Batch 란Spring Batch는 대량의 데이터 처리를 위한 프레임워크이다. 반복적인 작업을 수행하는 일괄 처리 (Batch Processing) 작업을 효율적으로 처리 할 수 있는 기능을 제공한다.대용량 데이터 처리나 주기적인 업무 처리 등을 효율적으로 처리 할 수 있고, 대용량 데이터 처리에 적합한 분산 방식의 처리를 지원한다.대량의 정보에 대해서 자동화되고 복잡한 처리가 가능하다. 이러한 작업으로는 시간 기반 이벤트 ( ex : 월말 계산 등..)큰 데이터를 걸쳐 반복적으로 처리되는 복잡한 규칙을 주기적으로 적용한다 ( ex : 보험혜택 등.. )일반적으로 검증 및 트랜잭션 방식으로 처리가 필요한 내부 및 외부 시스템에서 수신한 정보를 기록 시스템에 통합한다. Spring ..
Spring 신규 프로젝트 생성한 곳에 DB를 연동해야 한다. 일단 DB부터 생성 해보자 첫번째 일단 신규 프로젝트 Gradle > dependencies > mysql 등록 하기 dependencies Url 은 여기 그럼 라이브러리에 mysql 추가 된다. 두번째 1. MySQL Workbench 설치 하기 ( DB 신규 등록 하기 위해서 ) 2. Workbench Url 은 여기 3. 설치 하다보면 root 비밀번호를 입력해야 한다고 한다. ( 비밀번호는 알아서 ) 4. 거기 까지 끝났으면 5. 3번에서 root 비밀번호 입력한 값을 입력한다. 6. DB 생성하기 참고 URL : 나는 HeidiSQL 을 사용한다. Mysql 을 사용 하시는 분들은 여기를 참고해주세요. 세번째 DB까지 생성 했으면 ..
간단한 웹 애플리케이션으로 /hello URL 호출 할 경우 내가 만든 이미지리스트 가져와보기 Controller 생성하기 소스코드 package com.example.demo; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; @Controller @RequestMapping("/hello") public class ImgController { @GetMapping() public S..
Spring-boot 신규 프로젝트 만들어 보려고 한다 이것 저것 한번 해보고 싶어서 시작 해본다!! 신규 프로젝트 만들기 spirng.io 링크 Dependencies에 Srping Web / Spring Web Services / Lomobok 추가! 필요 한건 나중에 더 추가 해야지 GENERATE 클릭 자바 17 버전 없으면 설치 해야한다! 자바 17 버전 Url은 여기!! 압축 풀기 다운받은 프로젝트 폴더를 사용하는 IDE에서 열기! 저는 인텔리제이를 사용하기 때문에 인텔리제이에서 열었습니다. DemoApplication 실행 하고 localhost:8080을 입력했을때 그럼 끝~~~
휴대폰번호 마스킹 처리 하기 // 휴대폰 번호 마스킹 처리 public String maskingPhoneNumber(String phoneNumber){ try{ if(StringUtils.isEmpty(phoneNumber)){ return phoneNumber; } phoneNumber = phoneNumber.replaceAll("[^0-9]",""); // 숫자만 추출 if(!(phoneNumber.length() == 10 || phoneNumber.length() == 11)){ return phoneNumber; } if(phoneNumber.length() == 10){ // 10자리인 경우. 000-***-0000 return phoneNumber.substring(0, 3) + "-*..
Lower_bound Lower_bound는 하한선 이라는 뜻이다. 찾고자 하는 Key 값 보다 크거나 같은 첫 번째 인덱스를 찾아주는 알고리즘이다. 이를 활용하면 원하는 Key 값이 없어도 이에 가장 가까운 데이터의 위치를 찾을 수 있다. Lower_bound는 Key 값보다 크거나 같은 원소의 위치(이상)를 찾는 것이기 때문에 mid의 값이 Key보다 작을 때는 left를 mid + 1로 변경해 주고 ( if( arr[mid] < Key) left = mid +1 ) Key보다 크거나 같을 때는 right를 mid로 변경하여 ( else right = mid ) Key 값을 포함시키도록 한다. Lower_bound : 일치하는 숫자가 처음 나타나는 지점 public class Lower_bound {..
백준(JAVA) - 수 찾기 (1920) 문제 N개의 정수 A[1], A[2], …, A[N]이 주어져 있을 때, 이 안에 X라는 정수가 존재하는지 알아내는 프로그램을 작성하시오. 나의 생각 1. 첫번째 배열 크기 정하기 2. 첫번째 배열 원소 넣기 3. 비교할 배열 크기 정하기 4. 비교할 배열 원소 넣기 5. 비교할 배열에 원소 넣고 그 순번에 맞춰 이진 탐색으로 일치하면 1 / 아니면 0 return 하기 생각은 잘했네 1. 첫번째 배열 크기 정하기 2. 첫번째 배열 원소 넣기 Scanner sc = new Scanner(System.in); int[] arr = new int[sc.nextInt()]; // 처음 입력 된 배열 크기 선언 for(int i = 0 ; i < arr.length; i..
이진 탐색 개념과 원리 정렬된 상태의 입력 데이터에 대한 효과적인 탐색 방법이다. 오름차순으로 정렬되었다고 가정되었을때 탐색 방법 배열의 가운데 원소 A[mid]와 탐색키 x를 비교한다. 탐색키 = 가운데 원소 => 탐색 성공 ( 인덱트 mid 반환 후 종료 ) 탐색키 이진탐색 ( 원래 크기 1/2 인 왼쪽 부분배열 ) 순환 호출 탐색키 > 가운데 원소 => 이진탐색 ( 원래 크기 1/2 인 오른쪽 부분배열 ) 순환 호출 *이진탐색 ( 원래 크기 1/2 인 왼쪽 부분배열 ) / 이진탐색 ( 원래 크기 1/2 인 오른쪽 부분배열 ) 탐색을 반복할 때마다 대상 원소의 개수가 1/2씩 감소 한다. 분할 배열의 가운데 원소를 기준으로 왼쪽과 오른쪽 부분배열로 분할한다. 탐색키와 가운데 원소..
회사에서 GitLab을 사용 한다고 해서 GitHub는 알고있었는데, GitLab은 처음들어봐서 두개 차이점이 무엇인지 알아보았다. 일단 로고부터 다르다. GitHub GitHub는 소프트웨어 개발 프로젝트를 위한 소스코드를 관리하는서비스 ( 원격저장소 ) 이다. 소스코드 열람 및 간단한 버그정리, 버전관리, sns기능도 있는 호스팅 플랫폼이다. 깃을 웹에서 보다 편하게 쓸 수 있도록 만든 도구이다. GitLab GitLab은 소프트웨어 개발 및 협업을 위한 올인원 솔루션을 제공하는 웹 기반 DevOps 플랫폼이다. 팀이 소프트웨어 프로젝트를 보다 효율적으로 계획, 생성, 구축, 테스트 및 배포하는데 도움이 되는 다양한 도구와 기능을 제공한다. GitHub / GitLab 의 핵심 차이점은 '*데브옵스'..
Redis란 Redis란 Key, Value 구조로 데이터를 저장하고 관리하는 데이터 베이스 관리 시스템이다. Redis가 무엇인지 서치 해보거나 다른 개발자 분들에게 물어볼때마다 데이터를 Key, Value로 관리하는 저장소 라고 몇번이고 들었다. Key, Value로 데이터를 관리 한다는 얘기는 너무 많이 들어서 어떤 특징이 있는지 찾아보았다. Redis의 특징 Key, Value 구조로 되어 있으며 쿼리를 사용할 필요가 없다. 데이터를 디스크에 쓰는 구조가 아니라 메모리에서 데이터를 처리 하기 때문에 속도가 빠르다. String, Lists, Sets, Sorted Sets, Hashed 자료 구조를 지원한다. String : 가장 일반적인 Key - Value 구조의 형태이다. Sets : Str..