1. 스프링 어노테이션 만들기2. 검증 관련 어노테이션 클래스 구현3. 패스워드 유효성 검사 예제 스프링 어노테이션 만들기@Constraintvalidation을 하기위한 구현체 연결 어노테이션@Target어노테이션을 사용할 곳default 값은 모든 대상Type 종류 타입설명ElementType.FIELD필드ElementType.METHOD함수ElementType.PARAMETER파라미터ElementType.CONSTRUCTOR생성자ElementType.LOCAL_VARIABLE지역변수ElementType.PACAGE패키지ElementType.ANNOTAION_TYPE다른 어노테이션@RETENTION어노테이션의 지속 시간종류타입설명RetentionPolicy.SOURCE컴파일 후에 해당 어노테이션이 사..
1. 직접 검증2. BindingResult3. 애노테이션 사용 직접검증HashMap을 이용하여, error를 담고 ModelAttribute로 반환thymeleaf의 조건문과 삼항문을 이용하여, error 인 경우와 정상인경우 렌더링//[Controller] Map errors = new HashMap(); if ( member.getPasswd() != null && member.getPasswd().length() >= 8 ){ if (member.getPasswd().matches("[a-zA-Z]+")){ errors.put("passwd", "비밀번호는 숫자와 특수문자를 포함해야합니다."); }..
1. 문제2. 문제 분석3. 슈도코드4. 구현문제주어진 N (1 - 숫자 범위 : ( 숫자 - 2초 이내 풀어낼 것 ( CPU 계산 : 1초에 1억번 연산 )- N세제곱은 시간 오버이므로, 주의하며 구현 문제분석N제곱 안에 문제를 풀어내야함 (시간제한)투포인터 ( O(n) )를 사용하여 , 두수의 합으로 표현되는 수 찾기 가능단, 두수의 합으로 표현되는 수의 개수를 찾는것이기에 한가지 조합만 있으면 됨[투포인터]* 투포인터 사용 전, 오름차순 정렬이 전제 조건임1. Arr[i] + Arr[j] 2. Arr[i] + Arr[j] > M // j 감소3. Arr[i] + Arr[j] == M // count 증가, i 증가, j 감소 슈도코드N (배열의 개수) for (N만큼 반복){ A배열에..
1. 유틸리티 설명2. 주요 메서드 유틸리티 설명[java.util.Arrays]- JAVA에서 배열을 조작하는 유틸리티 메서드를 제공하는 클래스- 배열을 정렬하거나, 검색하거나, 복사하거나, 배열의 내용을 비교하는 등의 작업을 간편하게 수행 주요메서드sort()배열을 정렬하는 메서드오름차순으로 기본 정렬숫자나 문자열등의 배열을 간판하게 정렬int[] arr = {5,3,6,1};Arrays.sort(arr);binarySearch()배열에서 특정 값을 이진탐색으로 찾음배열이 이미 정렬되어있어야함값이 있는 위치의 인덱스를 반환 (값이 없으면 음수 값 반환)int index = Arrays.binarySearch(arr,3);boolean isEqual = Arrays.equals(arr1,arr2);fi..
1. StringTokenizer 란?2. 생성자3. 주요 메서드StringTokenizerJAVA에서 문자열을 분리하기 위한 유틸리티 클래스.각각 나눠진 문자열은 토큰(token)으로 취급함구분자(delimiter)를 기준으로 여러부분으로 나누는 역할 생성자기본 구분자 (공백, 탭, 줄바꿈)을 사용하여 분리하는 생성자StringTokenizer(String str)지정한 구분자(delimiter)를 기준으로 문자열을 분리하는 생성자StringTokenizer(String str, String delimiter)delimiter를 기준으로 문자열을 나눔, 거기에 returnDelimiter가 true일경우, 구분자도 토큰으로 반환StringTokenizer(String str, String delimit..
1. 정의2. 사용이유3. 예제 정의문자, 배열 및 줄을 효율적으로 읽을 수 있도록 문자를 버퍼링하여,문자 입력 스트림에서 텍스트를 읽는 클래스 Buffered Reader 사용 이유지정된 파일 혹은 입력을 버퍼에 저장하지 않을경우, read() / readline()을 할때마다 파일또는 입력에서 바이트를 읽어 문자로 변환한 후 반환하므로 매우 비효율임buffer를 사용하여 입력 및 파일 읽은 내용을 저장하고, 텍스트로 변환하는 작업을 줄일 수 있다 예제bufferedReader의 경우 Reader객체와 함께 사용됨( Reader 객체 : FileReader, InputStreamReader 등 )public class Test{ public static void main(String[] arg..
1. 문제2. 문제 분석3. 슈도코드 작성4. 코드 작성 참고) CPU 연산은 1초에 1억번 (시간복잡도 계산하며 풀기)문제주몽의 명령 갑옷만들기- 갑옷을 만드는데 필요한 재료 2가지- 재료의 합 M ( 1 - 재료의 개수 N ( 1 문제 분석투포인터 사용 (start point , end point)투포인터 이동 원칙- A[i] + A[j] > M : j--; #번호의 합이 M보다 크면 끝 번호 인덱스(j)를 한칸 아래로 이동- A[i] + A[j] - A[i] + A[j] == M : i++, j--; #양쪽 포인터를 모두 이동시키고 count를 증가 두가지 포인터를 이용하여, 값을 계산하며 추정정렬 필요 : 투포인터를 사용하기 위해서는 정렬을 해야함 (2초내 연산이므로 사용해도 괜찮다)..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/cHPRj2/btsKfeeoK2P/LuXhIKyJmKJmkZZZKxR5a0/img.png)
1. 서브쿼리?2. 서브쿼리 문법3. 예제서브쿼리?하나의 SQL 쿼리 내에서 다른 쿼리를 포함하는 구조SELECT , UPDATE, DELTE 문에서 사용될 수 있다조건문에서 주로 사용됨서브쿼리는 단일행 / 다중행 서브쿼리가 있다단일행 : 하나의 값을 반환다중행 : 여러 값을 반환 서브쿼리 문법SELECT 서브쿼리SELECT [column1] FROM [table1] WHERE column1 = (SELECT [column2] FROM [table2] WHERE [조건]); INSERT 서브쿼리INSERT INTO [table1] [(column1)] SELECT [column2] FROM [table2] WHERE [조건]; UPDATE 서브쿼리UPDATE [table1] SET [column1] =..
- Total
- Today
- Yesterday
- 이진탐색
- 깊이우선탐색
- stack
- 게시판 프로젝트
- 기술면접
- 버블정렬
- 우선순위 큐
- JSON
- 티스토리챌린지
- 검증
- 예외처리
- Java
- 클래스
- 오블완
- DFS
- 정렬
- 알고리즘
- HTML5
- 타입변환
- JDBC
- BFS
- Thymeleaf
- Spring
- 백준
- 포트폴리오
- bean
- 게시판
- SQL
- 코딩테스트
- db
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |