취업준비를 하면서 코딩테스트 공부를 하고있다.백준 1018문제이다. 체스판 다시 칠하기 문제인데 체스판은 8 \* 8로 자를 수 있고 체스판은 검은색, 흰색 두가지로 칠해져 있는데 무작위로 칠해져있다. 이 것을 올바른 체스판(검은색, 흰색이 서로 인접하지 않고 엇갈리는
오랜만에 aws 서버를 접속해봤는데 용량이 꽉차 있었다.불길해서 이곳저곳 뒤지다가 mysql에 binlog가 쌓이면서 용량이 금방 늘어났던게 생각나서 /var/lib/mysql 폴더에 들어가서 확인해보니 binlog.xxxx 파일이 엄청나게 많았다. mysql에서 설정
오랜만에 들어가보아야하는 mysql 서버가 있었는데 패스워드를 분실하여 접속이 안됨 ㅠㅠ mysql version은 mysql Ver 8.0.27 for Linux on x86_64 (MySQL Community Server - GPL)/etc/mysql/mysql.
인터넷 관련 권한을 사용하겠다고 매니페스트에 설정해두어야 한다.AndroidManifest.xmlactivity_main.xmlMainActivityhttps://developer.android.com/training/basics/network-ops/read
간단하게 build.gradle dependencies 쪽 코드 공유로 마치고자 한다.
회사일과 별도로 출시하여 운영중인 안드로이드 앱에 광고를 테스트 해야 하는데 그러기 위해서는 현재 device id를 테스트 디바이스로 설정해야 했다.logcat에서 RequestConfiguration.Builder를 필터로 걸면 나의 device id를 획득할 수
아주 간단한 팁을 발견해서 가볍게 적어보고자한다. 보통 리눅스 시스템에서 프로세스를 확인할때 ps -ef | grep java 같은 명령어를 주로 쓸것이다.그런데 이때 하나 불편한게 grep도 하나의 실행 프로세스로 보고 grep까지 프로세스 목록에 함께 노출되어서
스프링 어플리케이션을 개발하면서 보통은 jpa로 개발을 진행하고 있다.그러나 어떤 경우에는 native 쿼리를 활용하여 퍼포먼스를 끌어 올리거나 조금 더 DB와 근접한 쿼리를 사용하고 싶을 때가 있었다.간단한 쿼리의 경우 NamedJdbcTemplate을 써도 괜찮을
파일 업로드가 필요할때 @RequestPart('image') MultipartFile file이런 식으로 어노테이션을 사용하거나 해서 파일업로드를 구현했었는데 더 저수준으로도 작성해보고 싶은 생각이들었다.코드요청설명Part image = request.getPart(
간단하게 사용해 보았다.LocaleResolver가 분석한 요청의 Locale관련 정보locale, timeZone, zoneId정보를 출력하는 컨트롤러를 작성하고 요청을 날려보았다.정상적으로 현재 locale정보를 분석해주는걸 확인할 수 있다.
@RequestMapping 어노테이션 커스텀 어노테이션 만들 수 있음실무에서 쓸만한지는 잘 모르겠다 ㅎㅎ
GET 요청과 동일하지만 응답 본문을 받아오지 않고 응답 헤더만 받아옴body를 제외한 status와 content-type, content-length, Date 정보를 응답하는 것을 확인 할 수 있음사용할 수 있는 HTTP Method 제공Allow에 보면 GET,
header에 "From"이라는 값이 존재하는 경우에만 매핑된다.headers 속성에 !을 붙여준다. 예를 들어 "!From"이라는 값을 넣으면 header에 From값이 없는 경우에만 매핑된다.Authorzation 헤더에 Basic QWxhZGRpbjpvcGVuIH
Content-Type 헤더로 필터링 된다content-type이 안 맞는 경우 415 unsupported media type http status code응답accept 헤더가 불일치하는 경우 406 not acceptable http status code 응답
/books/12 (o)/books/123 (x)/books/1 (x)books/1 (o)books/1/likes (x)books/1 (o)books/1/likes (o)/books/who-moved-my-cheese (o)/books/1 (x)
사연 사내 프로젝트를 개발도중에 모바일에서 height를 100vh로 설정해서 화면을 구성하는 작업이 있었는데, ios safari에서만 화면 구성이 이상하게 되고 있었는데 확인해보니 safari 하단의 주소영역을 100vh에서 포함하고 있어서 화면이 제대로 구성되지
앞선 포스팅에서는 didMount라는 state값을 선언해서 중복 호출을 막는 방법을 제시했는데 실제 axios를 사용해서 작성하다 보니 unmount가 될 때 axios 호출을 취소하는 방법을 사용하는 것이 더 좋은 방법처럼 보여서 시도해 보았다.axios에 abor
사연 react로 개인 프로젝트를 하는 와중에 api를 호출하는 부분이 들어갔는데, 컴포넌트가 두 번씩 렌더링 되면서 api도 두번씩 호출되는 상황이 발생하였다 ㅠㅠ 전개 일단 google에 react 18 render twice를 검색했고 관련한 여러가지 블로그 글
서비스 오픈을 앞두고 어플리케이션의 로그들을 조금 더 쉽게 확인할 수 있는 방안이 필요했다. 현재는 베스천 서버를 만들고 서버를 들어가서 log파일을 직접 열어보는 방식이었다. 그래서 우리 서비스의 경우 현재 aws ec2에서 돌아가고 있었기에 cloudwatch를 활
내장 톰캣을 구동시키면서 실행되는 어플리케이션의 경우 포트번호 단위로 프로세스를 죽이고 살리고 하는 것이 어렵지 않았다. 하지만 웹 서비스를 끼지 않고 실행되는 배치가 존재하는 경우 서버안에서 실행되는 어플리케이션의 개수가 지속적으로 늘어나면서 db 커넥션도 여러개 물