Layered Architecture 효율적인 개발과 유지보수를 위해 어플리케이션을 계층화하여 개발하는 것을 말한다. 대체적으로 중/대규모 어플리케이션에서 사용하고 있다. Pressentation Layer - 사용자와 가장 가까운 계층을 말하며, 사용자와 상호작용을 한다. - Spring MVC 객체를 말하며, 프론트 컨트롤러(DispatcherServlet), 컨트롤러, 뷰, 모델이 포함된다. Business Layer (Service Layer) - 실제 비지니스 로직을 수행하는 컴포넌트로 트랜잭션 및 기능을 수행한다. - 컨트롤러(presentation layer)에서 요청을 보내면 DAO(data access layer)를 이용해 실제로 비지니스 로직을 수행한다. - 보통 하나의 비지니스 로직은..
분류 전체보기 검색 결과
https://programmers.co.kr/learn/courses/30/lessons/42748 코딩테스트 연습 - K번째수 [1, 5, 2, 6, 3, 7, 4] [[2, 5, 3], [4, 4, 1], [1, 7, 3]] [5, 6, 3] programmers.co.kr 문제 설명 배열 array의 i번째 숫자부터 j번째 숫자까지 자르고 정렬했을 때, k번째에 있는 수를 구하려 합니다. 예를 들어 array가 [1, 5, 2, 6, 3, 7, 4], i = 2, j = 5, k = 3이라면 array의 2번째부터 5번째까지 자르면 [5, 2, 6, 3]입니다. 1에서 나온 배열을 정렬하면 [2, 3, 5, 6]입니다. 2에서 나온 배열의 3번째 숫자는 5입니다. 배열 array, [i, j, k..
알고리즘 문제를 푸는데 꽤나 많이 나오는 숫자 뒤집기에 대해 풀어보자. 풀이 1 숫자를 뒤집으려면 숫자를 10으로 나눈 나머지를 계속 더해줘야 한다. 더하기를 할 때, 기존 숫자에 곱하기 10을 해주어야 자릿수를 하나씩 넘길 수 있다. public int solution(int n) { int answer = 0; while (n != 0) { answer = answer * 10 + n % 10; n /= 10; } return answer; } 풀이 2 public int solution(int n) { int answer = 0; while(n > 0) { int t = tmp % 10;// 나머지 구하기 answer = answer * 10 + t; n = n / 10; } return answe..
https://programmers.co.kr/learn/courses/30/lessons/42576 코딩테스트 연습 - 완주하지 못한 선수 수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수 programmers.co.kr 문제 설명 수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수들의 이름이 담긴 배열 completion이 주어질 때, 완주하지 못한 선수의 이름을 return 하도록 solution 함수를 작성해주세요..
향상된 for문 사용하기 Java 코딩할 때 가장 많이 사용하는 for문과 if문, 오늘은 for문에 대해 알아보자. 일반적인 for문 for(초기값 ; 조건식 ; 증감식) { 조건식이 참일 경우 반복 수행; } 위와 같은 문법이다. 조건식이 참일 경우에 중괄호 안의 문장들을 반복하고 거짓인 경우 반복문을 벗어나는 것이다. 처음에 초기값을 실행하며, 조건식이 참일 경우 괄호 안에 문장을 반복 실행하는 것이다. 일반적인 for문의 예시는 아래와 같다. 초기값 : 반복문에 사용될 변수를 초기화하는 부분, 처음에 1번 실행 // 초기값 for(int i=1 ; i
문장 속 가장 긴 단어 찾기 (Java) 문장 속에서 가장 긴 단어를 찾는 알고리즘을 구현해보자. 긴 단어를 찾으려면 해당 문장의 단어들을 쪼개어서 for 문을 사용하여 문자열을 비교하여 찾아내면 되는데 방법은 크게 2가지가 있다. 어떻게 문제를 풀던 메인 메소드는 아래와 같이 고정이다. public static void main(String[] args) { Main m = new Main(); Scanner sc = new Scanner(System.in); String str = sc.nextLine(); System.out.println(m.solution(str)); } 1. split 사용하기 public String solution(String str) { String answer = "";..
최근댓글