본문 바로가기

전체 글63

Controller에서 여러 인자를 받는 방법 @RequestParam은 말 그대로 요청 파라미터를 받아올 때 사용하는 어노테이션입니다. 여러 개의 변수를 받아와야 할 때는 Map 또는 List 형식으로 받아와야 하는 것은 아니며, 컨트롤러 메서드의 인자에 각각 변수명을 지정해줘서 받아올 수 있습니다. 예를 들어, 아래와 같이 컨트롤러 메서드를 작성할 수 있습니다. @GetMapping("/example") public String getExample(@RequestParam("param1") String param1, @RequestParam("param2") String param2) { // param1과 param2를 이용한 로직 처리 return "example"; } 이렇게 작성하면 요청 URL에 “param1”과 “param2”라는 파라.. 2024. 3. 5.
URL로 파라미터를 전달하는 2가지 방법-PathVariable/RequestPar GET http://youngjinmo.github.io/member?id=2 // type 1 GET http://youngjinmo.github.io/member/2 // type 2 스프링부트에서 URL로 파라미터를 전달하는 두가지 방식이 있다. type 1의 방식이 쿼리 스트링을 적용한 방식이고, type 2가 REST하게 이용하는 방식이다. type 1번처럼 요청을 할 경우에 추가적인 파라미터가 존재할 경우 /api/v1/pet?id=XXX¶m=YYY와 같이 변하고, type 2번의 경우에는 추가적인 파라미터가 존재할 경우 /api/v1/pet/XXX/YYY 와 같은 형태로 변형된다. 따라서 type 2번의 경우에는 입력받을 파라미터가 많이 존재한다면 어떤 값이 입력되는지 알기가 쉽지 않.. 2024. 3. 5.
[DFS] 광물캐기 https://school.programmers.co.kr/learn/courses/30/lessons/172927 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 해설 접근 방식은 아래와 같다. 1. picks를 반복문으로 탐색하며 순서대로 DFS를 하기로 했다. 2. 깊이 탐색을 할 때 함수를 빠져나오는 올바른 조건을 걸어주기 3. 깊이 탐색을 할 때 피로도 계산 해주기 또 중요한 점이 하나 있는데 곡괭이의 배열이 [1, 3, 2] 이런식으로 다이아 곡괭이 1개, 철 곡괭이 3개, 돌 곡괭이 2개가 있다면 각각의 곡괭이가 아래 그림 처럼 다 다른 곡괭이.. 2024. 2. 29.
스트림(Stream) - reduce( ) reduce(Identity, Accumulator -> Combiner) Identity – an element that is the initial value of the reduction operation and the default result if the stream is empty Accumulator – a function that takes two parameters: a partial result of the reduction operation and the next element of the stream Combiner – a function used to combine the partial result of the reduction operation when the reduction i.. 2024. 2. 27.
Stream, 되도록이면 사용하지 말자 https://school.programmers.co.kr/learn/courses/30/lessons/12941 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 위 문제를 풀면서 아래 기존코드와 같이 Arrays.sort를 이용해서 내림차순을 하기 위해 Stream을 이용해서 int타입을 Integer 타입 배열로 박싱하는 코드를 구현했다. 하지만 이 코드는 정확선 테스트에서는 문제가 없었지만, 효울성 테스트를 통과하지 못했다. 기존코드 import java.util.*; class Solution { public int solution(int []A, .. 2024. 2. 26.
[HashSet, HashMap] 롤케이크 자르기 https://school.programmers.co.kr/learn/courses/30/lessons/132265 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr import java.util.*; class Solution { public int solution(int[] topping) { int answer = 0; HashSet set = new HashSet(); Map map = new HashMap(); for(int i=0;i 2024. 2. 26.