반응형 Develop233 [Java] BufferedReader, BufferedWriter 프로그래머스 코테는 파라미터를 알아서 넘겨 받도록 되어있는데.. 백준은 직접 입력 받아야했다. Scanner와 sysout을 쓰다가 속도가 너무 느리게 나와서 BufferedReader/Writer에 대해 알아보려고 한다. 목차 1. BufferedReader 2. BufferedWriter 3. 주요 메소드 4. 예제 1. BufferedReader 문자 입력 스트림에서 텍스트를 효율적으로 읽을 수 있도록 문자를 버퍼링 엔터를 통해서만 입력받을 수 있어 ' ' 공백을 이용한 입력받기를 원한다면 StringTokenizer와 함께 사용 2. BufferedWriter System.out.println()을 대신해 사용하곤 한다. 3. 주요 메소드 메소드명 기능 BufferedReader(Reader rd.. 2021. 10. 4. 최적화 문제 - 완전 탐색, 동적 프로그래밍, 탐욕적 방법 목차 1. 최적화 문제 2. 완전 탐색 3. 동적 프로그래밍 3-1. 행렬 경로 3-2. 최장 공통 부분순서; LCS 3-3. 최장 증가 부분수열; LIS 4. 탐욕적 방법 4-1. 연속 배낭문제 4-2. 스케줄 짜기 문제 시작하기 앞서.. 해당 포스팅은 최적화 문제를 해결하는 방법 중, '완전 탐색, 동적 프로그래밍, 탐욕적 방법'에 대해 다룬다. 각 유형에 해당하는 몇 가지 문제를 예제로 보이며 언어는 Java를 이용한다. 대학생 때 공부한 것을 정리하는 차원에서 포스팅 하는거라 입문자에게는 어려운 내용일 수 있다😅 최적화 문제; Optimization problem 문제에 대한 하나 이상의 후보 해답이 존재하고, 각 후보 해답은 최적임을 판단할 근거가 되는 값을 가질 때, 이 들 중 최적값을 구하너.. 2021. 10. 3. [Oracle] SQL문으로 주말 구하기 🐱🐉 개요 날짜가 주어지면 이를 휴일인지 아닌지 구분해야 하는 문제를 겪었다. 공휴일은 보통 DB에 테이블을 따로 만들어서 관리하지만 주말은 굳이 그럴 필요 없이 SQL문으로 해결 가능하다. 🐱👤 주말 구하기 포인트는 주어진 날짜의 '요일'을 구하는 것이다. 해당 날짜의 요일을 구한 뒤, 토요일과 일요일인 경우만 조회하면 주말을 조회할 수 있다. Step 1 SELECT TO_CHAR(SYSDATE,'D') FROM DUAL; Step 1-1 : 날짜가 문자열 형태로 주어지는 경우 SELECT TO_CHAR(TO_DATE(:SEARCH_DATE),'D') FROM DUAL; Step 2 step 1의 쿼리문을 실행시키면 일요일부터 토요일까지 1 ... 7의 결과를 구할 수 있다. 이제 IN을 이용해 .. 2021. 8. 30. [Jackson] JsonNode, ObjectNode, ArrayNode 차이 🐱🐉 개요 이번에 개발하면서 JsonNode, ObjectNode, ArrayNode을 정말 많이 썼는데 정리용으로 글을 작성한다. 먼저 Json에 대해 잘 모르면 아래 글부터 읽어보길 바란다. https://yeonyeon.tistory.com/48?category=925909 [Json] Json의 개념과 형식 개요 JsonNode와 ObjectNode의 차이점을 찾다가 아예 json에 대해 정리하게 되었다. 목차는 다음과 같다. Json의 개념 Java에서 Json 사용하기 - Jackson JsonObject와 JsonArray JsonNode와 ObjectNode Json 관련.. yeonyeon.tistory.com 🐱👤 JsonNode, ObjectNode, ArrayNode JsonNo.. 2021. 8. 24. [Spring] HTTP 응답 📖 개요 서버에서 응답 데이터를 만드는 방법은 크게 3가지다. 정적 리소스 (ex: 정적 html, css, js, ...) 뷰 템플릿 (ex: 동적 html) HTTP 메시지 📕 1. 정적 리소스 정적 리소스는 해당 파일을 변경 없이 그대로 서비스하는 것이다. src/main/resources는 리소스를 보관하는 곳이고, 클래스패스의 시작 경로다. 스프링 부트는 클래스 패스의 다음 디렉토리에 있는 정적 리소스를 제공한다. /static, /public, /resources, /META-INF/resources 📒 2. 뷰 템플릿 뷰 템플릿을 거쳐 html이 생성되고, 뷰가 응답을 만들어 전달한다. 일반적으로 html을 동적으로 생성하는 용도로 사용된다. 스프링 부트의 기본 뷰 템플릿 경로는 아래와 같다.. 2021. 8. 11. [Spring] http 요청 데이터 조회 📖 개요 클라이언트에서 서버로 요청 데이터를 전달하는 경우는 크게 3가지가 있다. GET - 쿼리 파라미터 (ex: ~~/url?username=yeonLog) POST - html form 태그 HTTP 메시지 바디에 데이터 직접 담기 (ex: json, xml, text, ...) 위 3가지 방법을 통해 요청 데이터를 실제로 조회해보자. 📕 1. GET - 쿼리 파라미터 url 뒤에 파라미터를 직접 넣어주는 방식 RequestParamController.java @Slf4j @Controller public class RequestParamController { @RequestMapping("/request-param-v1") public void requestParamV1(HttpServletReq.. 2021. 8. 9. [Oracle] ORA-01476: 제수가 0 입니다. 📌 ORA-01476: 제수가 0 입니다. 에러 ❓ 제수란? 나눗셈에서 어떤 수를 나누는 수 ex: '12 나누기 6은 2' 에서 제수는 6 💡 원인 발견 수학에서 어떤 수를 0으로 나누는 것은 불가능하다. SELECT SUM(컬럼1) / COUNT(컬럼2) 식으로 되어있다고 가정할때, COUNT(컬럼2) 값이 0일 경우 위와 같은 에러가 발생한다. 🎉 해결 방법 NVL(), NULLIF(), DECODE()와 같은 함수를 사용해 0일 경우를 다르게 처리하면 된다. 몇 가지 예시를 살펴보자. a는 10, b는 0일 경우에 a/b 결과를 구하는 SQL문이다. 10을 0으로 나누게 되므로 제수가 0이라는 에러가 발생할 것이다. SELECT a/b FROM (SELECT 10 AS a, 2 AS b FROM .. 2021. 8. 9. [Mybatis] ResultMap 이용하기 📔 개요 현재 진행중인 프로젝트에서는 mssql, Oracle 등 다양한 종류의 database를 사용하고 있다. mssql에서 데이터 타입이 'ntext'인 컬럼을 조회하는 SQL문을 실행했는데 HashMap에 매핑되지 않는 현상이 발생했다. 원인 파악에 도움을 받았는데 Mybatis 설정 중에 varchar로 받아내게 하는 부분이 존재했고, ntext형식의 데이터를 varchar 형식으로 매핑하려니 문제가 생긴 것이다. 이를 어떻게 해결할까 고민하다가 resultMap을 이용하기로 했다. 📚 ResultMap이란? 복잡한 결과 매핑을 간편하게 만들어주기 위해 만들어진 태그다. 📕 예제 1 일반적인 Mybatis의 매핑 구문은 다음과 같다. select id, username, hashedPasswor.. 2021. 8. 2. [Oracle] 인덱스에서 누락된 IN 또는 OUT 매개변수:: 📌 인덱스에서 누락된 IN 또는 OUT 매개변수:: 5 에러 ❓ 원인 필요한 매개변수가 존재하지 않기 때문 에러명 :: 숫자 2021. 8. 2. 이전 1 ··· 13 14 15 16 17 18 19 ··· 26 다음 반응형