android recyclerView를 사용하면서 특정 데이터에서는 background를 다르게 해줘야 하는 상황이 생겼는데 해당 view에 setBackground로 했을때 화면상에 문제가 발생하였다. 문제는 첫번째 아이템을 터치했는데 바로 다음의 아이템에 rippl
안드로이드 앱개발에 매진 중인데 recycler view apapter에서 리스트 변경하고 notifyItemChanged 통해서 화면 갱신을 할 때 깜빡거리는 증상이 있어서 해당 증상을 없애고 싶어졌다.RecyclerView 형식에 itemAnimator의 속성중에
간단하게 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 커넥션도 여러개 물
베스천 서버를 하나 만들었는데 서버의 목록이 나열되고 해당 서버를 선택해서 접속하는 형식을 만들어보고 싶었음. 그래서 알아보던중 dialog라는 툴을 사용하면 linux상에서도 dialog창을 사용할 수 있다고 해서 리서치를 해보았음connect-server.sh
단일의 aws ec2 인스턴스에서 무중단 배포를 해야 하는 상황이 드디어 온것이다. 시행착오를 거치면서 완성한 배포 스크립트를 공유한다. 프로젝트는 spring boot + gradle 기반의 프로젝트이고 nginx 서버를 사용하였다. 어플리케이션 사이드에서 포트 프로