분류 전체보기(313)
-
[Spring] - DI(Dependency Injection) (복습)
#Spring #DI 지난 주에 이어 Spring 온라인 강의를 이어서 들었다. Spring의 특성을 자동화 이전 단계에서 직접 구현해보며 배우고 있다. 이번 시간엔 DI(Dependency Injection) 의존성 주입에 대해 배웠다. 주요 구현 방법은 객체들을 어떻게 주입시킬 것인가에 대한 것이다. 1. DI란 말그대로 의존성 주입인데, 홀로 존재하지 못하는 의존적이란 특성을 Spring Framework에 여러가지 방법으로 주입하여 객체를 생성해주는 것을 말한다. Spring에서 Container 내에 분포하는 클래스(Beans)는 의존적이다. DI는 Spring 특징 중 하나인 IoC(Inversion of Control) 제어의 역행을 구현하는 하나의 갈래이다. 사용했을 때 장점은 유지보수가 ..
2020.08.31 -
[Spring] - Maven 방식 이해하기 (복습)
#Spring #Maven 코로나 확진이 거세지면서 정부 권고로 학원은 8월 휴강에 들어갔다. 학원 대처가 괜찮은 것이 4일 차까지 듣다가 끊긴 수업의 인강이용권을 무료로 배부해주고 다음 달에 현강을 들을 수 있게끔 조치해주었다. 정보처리기사 필기시험과 맞물리면서 Spring 기초 원리를 알 수 있었던 설치부터 Maven 프로젝트 내 폴더 기능들까지 1~2일 차 강의를 제대로 복습 못한 것이 못내 아쉬웠는데 휴강을 전화위복으로 삼고 개강 전까지 복습하는 시간을 가지기로 했다. 1. Spring 프레임워크의 특징 강의에서 예시를 부대찌개로 들었는데, Spring을 활용하면 넣고 끓이기만 하면 되는 레토르트 식품에 가깝고 반대로 개별 재료를 하나씩 사서 다듬고 육수를 우려내고 등등 A to Z까지 수작업으로..
2020.08.26 -
[백준] 11399 - ATM
백준링크: 바로가기 11399번: ATM 첫째 줄에 사람의 수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄에는 각 사람이 돈을 인출하는데 걸리는 시간 Pi가 주어진다. (1 ≤ Pi ≤ 1,000) www.acmicpc.net #그리디 알고리즘 #정렬 일단 접근방법은 맞았고 IntelliJ 결과값도 잘 나왔는데 백준 런타임 에러 가 4번 떠서 당황한 문제. 원인은 문제해결과 무관한 코드 입력 때문이었다(a.k.a 쓸모없는 코드입력이나 접근방법은 배제하라 아님 에러를 주겠어) 요즘 유튜브로 DP(다이나믹 프로그래밍)을 공부해서 최소값과 현재 배열 index 전까지의 총합을 구하는 부분이 타일링이나 피보나치와 유사하다고 생각해 dp[] 배열을 만들어서 total을 구했다. = (런타임 에러 구덩이로 ..
2020.08.26 -
[백준] 1003 - 피보나치 함수(재도전)
문제링크: 바로가기 #DP(다이나믹 프로그래밍) 피보나치 함수는 다양한 유형으로 백준 문제에 출제된다. 이전 재귀함수를 활용한 제일 기초적인 피보나치 함수는 풀어보았는데 이번 문제는 간단한 설명임에도 접근방법이 어려웠다. 결국 해결하지 못했지만, 다음 번엔 꼭 성공하리라 다짐하면서 간략한 복기를 해본다. 친절하게 피보나치 함수 코드를 제공해준다. 물론 본 문제를 내기 위한 참고설명일 뿐이지만. 피보나치 특성 상 재귀로 연산을 중복/반복하게 되는데 fibonacci(0)과 fibonacci(1)이 각각 몇 번씩 출력되는지를 구하면 된다. 앞선 타일링 문제에서 적용한 DP(다이나믹 프로그래밍)을 사용해야겠단 것은 알았으나 출력을 어떻게 잡아(catch)줘야할지 꼬인 실타래가 끝내 풀리지 않았다. 다수 블로그..
2020.08.26 -
[백준] 1758- 알바생 강호
문제링크: 바로가기 # 그리디 알고리즘 # 정렬 스터디 과제로 풀었다가 틀린 문제인데, 스터디원이 다 맞았는데 왜 틀린지를 모르겠다고 피드백 줬었다. 12일 후인 오늘 그리디 알고리즘 연습삼아 복습 겸 풀어봤다. 구글링한 부분은 Array.Sort를 Reverse, 즉 내림차순으로 하는 부분이다. Collection과 Comparator 인터페이스를 사용하면 된다. 유의할 점은 data type을 primitive(ex.int)가 아닌 객체로 지정해줘야 한다는 것이다. (ex.Integer) 그리고 이번에도 보기만 해도 짜증이 나는 틀렸습니다! 가 떴는데 그 이유를 알아냈다. 받을 수 있는 팁 최대값 변수 data type을 int로 선언했기 때문이다. 이놈의 함정은 내가 문제를 제대로 못 읽고 파악 못..
2020.08.26 -
Spring - 입력값 처리 @GetMapping
Date: 08/18/20 (Day 04) Spring MVC jsp 에서 입력값을 받아 Controller가 처리하는 방법을 알아본다. 반복적으로 나오는 다이어그램이 있는데 Spring Web 흐름을 이해하려면 필수적이라고 느껴진다. 1. GET과 POST 방식으로 요청, 응답하는 방법 Requst 맵핑으로 각기 다른 메서드를 만들어준다. GET/POST 응용: 게시판 글쓰기 페이지 board/write 와 board/write POST 로 URL 구분해서 사용자에게 보여줄 화면과 실제 DB 업데이트는 POST로 전달된다고 보면된다. @GetMapping과 @PostMapping 으로 간결하게 쓸 수 있다(SPRING 4부터 지원) @Controller @RequestMapping("/request")..
2020.08.25