본문 바로가기
728x90

Web75

[Java] 람다식과 함수형 인터페이스의 개념 [Java] 람다식과 함수형 인터페이스의 개념 스프링 독서 스터디의 부록으로 java 8부터 등장한 람다식과 함수형 인터페이스 내용을 보면서 정리한 내용이다. 이 두 가지를 왜 알고 있어야 하는지, 어디에, 어떻게 쓸 수 있는지를 알아보고자 한다. 1. 함수형 인터페이스, 람다식의 등장 이유 람다식을 알아보기 전에 먼저 함수형 인터페이스가 왜 나오게 되었는지를 알아보자. 1) 옛날보다 많은 기술의 발전 세상이 발전해 나가면서 싱글 코어 CPU만 쓰다가 멀티 코어 CPU를 쓰기 시작했다. 컴퓨터의 하드웨어가 많이 발전하였다. 그리고 사람들이 일상에서 활용하는 IT 기술이 발전하면서 의미 있는 데이터들이 생산되기도 했는데, 이에 따라 다량의 데이터를 처리하는 프로그램이 필요했다. 이 두 가지 흐름이 1950.. 2022. 9. 22.
카카오맵 GPS 마커 중복 생성 해결방법 카카오맵 GPS 마커 중복 생성 해결방법 이전에 포스팅한 대로 GPS 버튼을 만들면, 마커는 정상적으로 작동하지만, 새로 고침 했을 때, 꺼지지 않고 계속 생성되어 있는 부분이 마음에 걸렸고, 마커가 있을 때 버튼을 클릭하면 중복 생성되는 문제가 있었다. 이에 새로고침을 하면 GPS 마커가 사라지고 GPS 마커가 있는 상태에서 GPS 버튼을 누르면 더이상 마커가 생성되지 않게 만들어야 했다. 그래서 마커가 있을 때는 어떤 변수에 값을 1을 저장하고, 없을 때는 0을 저장하여서 로직을 다르게 구현하면 되겠다는 발상을 하였다. 처음에는 자바스크립트 코드 내부에 값을 저장해보려고 했지만, 전혀 값이 저장되지 않았다. // 2. 위치 수집, GPS 마커 표시 기능(GeoLocation) // 1) gpsButt.. 2022. 9. 20.
카카오맵 API GPS 버튼 커스텀하기(Javascript) 카카오맵 API GPS 버튼 커스텀하기(Javascript) 카카오맵 API를 활용해서 웹 페이지를 만들면, 현재 위치 기능을 geolocation 객체를 활용해서 받아올 수는 있지만, 우리가 흔히 사용하는 스마트폰 카카오맵에서 활용하는 버튼 기능을 제공하지 않는다는 것에서 막힐 때가 있다. https://apis.map.kakao.com/web/sample/geolocationMarker/ 기본 공식문서를 보고 geolocation을 적용하면, 페이지에 접속했을 때 자동으로 현재위치로 이동되는 것을 쉽게 구현할 수는 있다. 그러나, 내가 원할 때, geolocation을 불러오고 싶다면, gps버튼을 커스텀해야 한다. GPS 버튼을 이제 만들어보자! 1. button의 형태를 먼저 만들어준다.(HTML.. 2022. 9. 19.
[HTML/CSS] 브라우저 창 조절 시 스크롤바 떨림 현상 해결 [HTML/CSS] 브라우저 창 조절 시 스크롤바 떨림 현상 해결 초기 페이지를 만들다가 스크롤을 축소시키면 위와 같은 현상이 일어났다. 일정크기 이하가 되면 페이지 안에서 드래그를 하거나, 페이지 창을 줄이면 스크롤바가 나타났다가 없어졌다가 하면서 떨리는 것 같은 현상이 일어났다. 무엇이 문제일까 생각하다가, GPS 버튼을 새로만들고 생긴 현상인 것을 알았고, GPS 버튼을 살짝 이동시켜보았다. gps 버튼이 축소되면서 스크롤에 걸릴 때 이와같은 현상이 일어난 것이었다. gps버튼의 css left 속성의 값을 %로 주고 있어서 위치가 바뀔 때 마다 변경이 되었다. 그러나 이는 완벽한 해결방법은 아니다. 현재 html 태그 안에서 gps버튼의 위치는 파란색 컨텐츠 안에 속해있다. 그래서 파란색 컨텐츠 .. 2022. 9. 18.
[Javascript] 로컬 스토리지 사용 방법 [Javascript] 로컬 스토리지 사용 방법 1. 로컬 스토리지란? 자바 스크립트 메서드나 변수를 사용할 때, 새로 고침을 해도 그 값을 계속 저장해놓고 사용하고 싶을 때가 있다. 예를 들면, 카카오맵을 웹에서 사용하면, 드래그를 하면서 지도를 이동시키는데, 한 번 이동했던 장소를 새로고침 하거나 다른 페이지를 갔다 와도 원래 보았던 위치를 계속 보고 싶을 때를 들 수 있겠다. 자바스크립트는 브라우저를 새로고침 할 때마다 계속 새롭게 불러와지고, 변수도 초기화될 수밖에 없다. 그렇기 때문에 어딘가에 변수를 저장하고 싶다면, 로컬 스토리지를 활용하면 된다. 나는 지금 현재 프로젝트에서 로컬 스토리지를 활용하여 경도, 위도 값을 로컬 스토리지에 저장하고, 창을 닫으면 그 값을 지우는 방법으로 브라우저에게.. 2022. 9. 6.
[Web] 8080 포트 중복 연결 에러 해결 방법 [Web] 8080 포트 중복 연결 에러 해결 방법 Web server failed to start. Port 8080 was already in use. 거창한 에러는 아니다. 기존에 사용하던 포트가 사용 중이기 때문에 일어나는 에러이다. 터미널을 켜고 몇 가지의 명령어만 쳐주면 해결된다. 기존 프로젝트의 프로세스가 사용하는 포트가 사용중이기 때문에 뜬다. 프로젝트 실행을 해도 계속 실행이 유지가 안 되고 꺼질 것이다. 1. 일단 포트를 쓰고 있는 프로세스를 확인해본다. sudo lsof -i :8080 이 명령어를 치면 특정 포트를 사용하는 프로세스의 PID를 알 수있다. sudo : Super User Do의 약어 lsof : list open files의 약어 -i : TCP 네트워크로 열린 파일.. 2022. 9. 4.
728x90