분류 전체보기 211

[Spring Framework/스프링 프레임워크] Origin 서버가 대상 리소스를 위한 현재의 representation을 찾지 못했거나, 그것이 존재하는지를 밝히려 하지 않습니다. 에러(error)해결방법

"Origin 서버가 대상 리소스를 위한 현재의 representation을 찾지 못했거나, 그것이 존재하는지를 밝히려 하지 않습니다. 현재 사용 중인 서버가 갑자기 404에러를 발생시키면, 혹은 갑자기 아무 이유도 없이 위의 에러를 발생시키면 톰캣 서버의 Web module의 path를 수정해주셔야 합니다. 위와 같이(수정 후 사진입니다) 진행하는 프로젝트를 클릭한 뒤 -> 2. Edit버튼 클릭 -> 3. Path를 /로 바꿔준 다음 -> 4. OK 클릭 혹시 위에 방법도 안된다면 상단 탭에 project -> Clean도 한번 해보시길 추천드려요!

[안드로이드/android] 스레드(Thread) 사용하기

Thread란? 우리는 웹 페이지를 보면서, 앱을 사용하면서 동시에 하나의 기능만을 사용하지 않는다. 동시에 여러 버튼을 눌러 응답을 받을 수 있고, 동시에 다양한 서비스를 받을 수 있다. 이렇게 동시에 다양한 일을 가능하게 해주는 것이 Thread이다. 마치 밥솥에 밥을 올려놓고 식탁에 수저를 놓는 것처럼 하나의 일이 끝날 때까지 기다리지 않는다. Thread의 필요성 안드로이드 프로젝트를 하면서 우리는 우리가 구축한 서버와의 데이터 통신, 오픈 API를 이용해 데이터 통신하는 경우가 있다. 그럴 때마다 서버의 응답이 올 때까지 기다려야 한다면 앱은 사용자에게 다른 서비스를 지원못함은 물론이고 똑같은 화면을 응답이 올 때까지 보여줘야 한다. 그렇게 때문에 Thread를 이용해 서버와의 통신은 백그라운드..

카테고리 없음 2020.07.21

[안드로이드/android] 파파고 API 안드로이드에서 사용하기(papago api)

[안드로이드 스튜디오에서 파파고 api를 사용해 번역하고 싶은 문장을 번역해 화면에 띄어보는 실습] 실제 안드로이드 프로젝트를 진행하면서 어플에 추가한 기능입니다. 다른 분들이 안드로이드 프로젝트를 진행할 때 도움이 되고자 글을 씁니다. 1. Naver Developers에 애플리케이션 등록 (https://developers.naver.com/apps/#/register)에 들어가셔서 애플리케이션 등록을 해줍니다. 애플리케이션 이름은 간다히 아무거나 입력하셔도 되고, 사용 API는 papago 번역, 환경을 Android로 설정, 앱 패키지 이름은 실제 적용하고 싶은 프로젝트(스튜디오)의 앱 패키지 경로를 써주시면 됩니다. 2. Client ID, Secret 받기. 1번 단계를 거치면 ClientID..

[2020 카카오 인턴십 / 프로그래머스] 보석 쇼핑 for JAVA

https://programmers.co.kr/learn/courses/30/lessons/67258 코딩테스트 연습 - 보석 쇼핑 ["DIA", "RUBY", "RUBY", "DIA", "DIA", "EMERALD", "SAPPHIRE", "DIA"] [3, 7] programmers.co.kr [문제 설명] 개발자 출신으로 세계 최고의 갑부가 된 어피치는 스트레스를 받을 때면 이를 풀기 위해 오프라인 매장에 쇼핑을 하러 가곤 합니다. 어피치는 쇼핑을 할 때면 매장 진열대의 특정 범위의 물건들을 모두 싹쓸이 구매하는 습관이 있습니다. 어느 날 스트레스를 풀기 위해 보석 매장에 쇼핑을 하러 간 어피치는 이전처럼 진열대의 특정 범위의 보석을 모두 구매하되 특별히 아래 목적을 달성하고 싶었습니다. 진열된 모..

[프로그래머스 level_2] 주식가격 for JAVA

https://programmers.co.kr/learn/courses/30/lessons/42584 코딩테스트 연습 - 주식가격 초 단위로 기록된 주식가격이 담긴 배열 prices가 매개변수로 주어질 때, 가격이 떨어지지 않은 기간은 몇 초인지를 return 하도록 solution 함수를 완성하세요. 제한사항 prices의 각 가격은 1 이상 10,00 programmers.co.kr [문제 설명] 초 단위로 기록된 주식 가격이 담긴 배열 prices가 매개변수로 주어질 때, 가격이 떨어지지 않은 기간은 몇 초인지를 return 하도록 solution 함수를 완성하세요. 제한사항 prices의 각 가격은 1 이상 10,000 이하인 자연수입니다. prices의 길이는 2 이상 100,000 이하입니다...

[프로그래머스 level_2] 쇠 막대기 for JAVA

https://programmers.co.kr/learn/courses/30/lessons/42585 코딩테스트 연습 - 쇠막대기 여러 개의 쇠막대기를 레이저로 절단하려고 합니다. 효율적인 작업을 위해서 쇠막대기를 아래에서 위로 겹쳐 놓고, 레이저를 위에서 수직으로 발사하여 쇠막대기들을 자릅니다. 쇠막대기와 레� programmers.co.kr [문제 설명] 여러 개의 쇠막대기를 레이저로 절단하려고 합니다. 효율적인 작업을 위해서 쇠막대기를 아래에서 위로 겹쳐 놓고, 레이저를 위에서 수직으로 발사하여 쇠막대기들을 자릅니다. 쇠막대기와 레이저의 배치는 다음 조건을 만족합니다. - 쇠막대기는 자신보다 긴 쇠막대기 위에만 놓일 수 있습니다. - 쇠막대기를 다른 쇠막대기 위에 놓는 경우 완전히 포함되도록 놓되,..

[2020 카카오 인턴십 / 프로그래머스] 수식 최대화 for JAVA

https://programmers.co.kr/learn/courses/30/lessons/67258 코딩테스트 연습 - 보석 쇼핑 ["DIA", "RUBY", "RUBY", "DIA", "DIA", "EMERALD", "SAPPHIRE", "DIA"] [3, 7] programmers.co.kr [문제 설명] IT 벤처 회사를 운영하고 있는 라이언은 매년 사내 해커톤 대회를 개최하여 우승자에게 상금을 지급하고 있습니다. 이번 대회에서는 우승자에게 지급되는 상금을 이전 대회와는 다르게 다음과 같은 방식으로 결정하려고 합니다. 해커톤 대회에 참가하는 모든 참가자들에게는 숫자들과 3가지의 연산문자(+, -, *) 만으로 이루어진 연산 수식이 전달되며, 참가자의 미션은 전달받은 수식에 포함된 연산자의 우선순위..

[안드로이드/android] 리사이클러뷰(RecyclerView)로 메모장 만들기

리사이클러뷰(RecyclerView)는 "사용자가 관리하는 많은 수의 데이터 집합을 개별 아이템 단위로 구성하여 화면에 출력하는 뷰그룹이며, 제한된 영역 내에서 유연하게 표시할 수 있도록 만들어 주는 위젯"이다. 리사이클러뷰(RecyclerView)는 리스트뷰와 유사한 기능을 가지고 있는데 유연함과 성능이 더해졌다. 구글에서도 리스트UI를 구성할 때 리스트뷰보단 리사이클러뷰를 권고한다. 리사이클러뷰(RecyclerView) 워크플로우 메인액티비티에 리사이클러뷰 추가 아이템 뷰 레이아웃 추가 리사이클러뷰 어댑터 구현 어댑터, 레이아웃 매니저 지정 리사이클러뷰(RecyclerView) 구성요소 *1. 리사이클러뷰 * 사용자 데이터를 리스트 형태로 화면에 표시하는 컨테이너 역할을 수행 2. 어댑터 리사이클러뷰..

[2020 카카오 인턴십 / 프로그래머스] 경주로 건설 for JAVA

https://tech.kakao.com/2020/07/01/2020-internship-test/ 2020 카카오 인턴십 for Tech developers 문제해설 2020년 카카오의 여름 인턴십이 시작 되었습니다.여름 인턴십의 첫번째 관문인 코딩 테스트가 2020년 5월 9일 오후 2시부터 6시까지 진행되었는데요, 온라인으로 진행되었기 때문에 코로나19로부터 tech.kakao.com https://programmers.co.kr/learn/courses/30/lessons/67259 코딩테스트 연습 - 경주로 건설 [[0,0,0,0,0,0,0,1],[0,0,0,0,0,0,0,0],[0,0,0,0,0,1,0,0],[0,0,0,0,1,0,0,0],[0,0,0,1,0,0,0,1],[0,0,1,0,0,0..

[알고리즘/정렬 알고리즘] 병합 정렬(Merge sort) Java, Python

병합 정렬(Merge sort) 알고리즘의 개념 병합 정렬(Merge sort)은 배열을 앞부분과 뒷부분을 나누어 각각 정렬한 다음 병합하는 작업을 반복하여 정렬을 수행하는 알고리즘이다 일반적인 방법으로 구현했을 때 안정 정렬에 속하며, 분할 정복 알고리즘의 하나이다. 병합 정렬(Merge sort) 알고리즘의 세부 과정 정렬되지 않은 배열을 절반으로 잘라 비슷한 크기의 두 부분 배열로 나눈다. 나뉜 배열들을 다시 재귀적으로 병합 정렬을 이용해 정렬한다. 두 부분 배열들을 다시 하나의 정렬된 배열로 합병한다. 병합 정렬(Merge sort) 예제 배열의 요소가 3, 4, 2, 1, 6, 8, 9, 5 순으로 저장돼있고 오름차순을 기준으로 정렬할 때 코드를 확인해보자 [Java 코드] 1 2 3 4 5 6..