웹 개발
-
[WebFlux] Learn how to create Flux instances 해답 코드 - techio웹 개발/WebFlux 2019. 10. 21. 00:14
techio reactor Flux 학습 사이트 techio에서 배울 수 있는 Reactor 학습의 success 코드 동기 방식의 spring mvc 방식 개발만 하다 비동기 방식의 webflux로 개발하려니 개념적인 부분부터 이해가 어렵드아... 개인적으로 reactor 메인 레퍼런스 사이트의 Chapter 4까지는 읽어보고 시작하면 좋을 것 같다. Reactor 3 Main reference site operator 참고 사이트 Flux reference site 해답 코드 Empty flux // TODO Return an empty Flux Flux emptyFlux() { return Flux.empty(); } Flux from values // TODO Return a Flux that c..
-
[Programming] localhost에 도메인 이름을 붙일 수 있다고?웹 개발/웹&프로그래밍 2019. 10. 3. 16:35
쿠키 문제로 .kakao.com 도메인을 사용하고 싶었는데 localhost에 도메인이름을 붙일 수 있다! 1. 터미널에서 아래의 명령어를 입력한다. $ cat /etc/hosts 2. 그럼 이런 화면이 나온다. 3. vi로 빨간 박스의 내용을 수정해준다. (난 권한이 없어 sudo로 수정) $ sudo vi /etc/hosts 4. 내가 정하고 싶은 도메인 이름을 기입해준다. 나의 경우는 localhost를 zorba.local.kakao.com으로 지정하고 싶다. 5. 끝 - zorba.local.kakao.com으로 입력하면 localhost로 띄운 서버와 같은 내용이 나올 것이다~ localhost에 도메인 이름을 붙일 수 있다는 걸 알게 됐는데, 왜 이제까지 몰랐을까 생각해보니 이제까진 '쿠키'..
-
[Programming] lazy가 뭣이여?(lazy, lazy loading, lazy initialization)웹 개발/웹&프로그래밍 2019. 9. 29. 15:56
lazy라는 개념에 대해 정리해두면 좋을 것 같음. 내가 이해한 'lazy'의 개념: 프로그래밍에서 lazy라는 개념은 필요할 때, 바로 실행하지 않고 미루다가 필요한 순간 그때 어떠한 행위를 하겠다는 의미로 생각된다. geeksforgeeks에서 설명하는 lazy loading이란? on-demand loading으로도 불린다. 여기서 on-demand란 '요구가 있을 때는 언제든지'라는 의미이다. 온라인 콘텐츠(웹앱이나 웹사이트)의 기술 최적화이다. 전체 웹페이지를 로딩하는 것이 아니라 유저가 필요할 때까지 미루고 남겨두었다가 원하는 부분에 대해서 요구하는 순간에 로딩하는 것이다. 대표적인 예로 무한 스크롤이 있다. 웹 페이지를 유저가 내릴 때 로딩된다. lazy initialization 의미 객체..
-
[Spring] 페이징처리를 위해 써먹는 Paging 객체 만들기 및 활용웹 개발/Spring Framework 2019. 5. 18. 18:12
회사 내에서 페이징 객체를 만들어야겠다고 생각한 계기는 특정 고객사에서 특정 메뉴를 주로 사용하는데 이 메뉴가 페이징 처리가 안되어있어 너무 느리다는 불만사항을 자주 들었다. 그 이외 UI 라이브러리 문제도 있었어서(고객사는 이 문제에 대한 불만이 더 많았다.) 새로 회사에서 사용하는 라이브러리로 바꿀 겸 이 메뉴에 대한 페이징 처리를 하기로 마음 먹었다. 기존에는 페이징 처리를 메서드마다 페이지 인덱스와 페이지 사이즈를 계산하고 Map에 담아 return 방식으로 페이징 처리를 하고 있었는데, 이 부분 때문에.. 페이징 객체를 만들자!!! 먼저 내가 구성한 건, 페이징 처리를 위한 변수 정하기. 내가 생각한 리스트는 아래와 같다. pageIndex : 현재 이 페이지가 몇번째 페이지냐 pageSize ..
-
[Spring] war에 test class가 포함된다?(war에서 test class 빼는 법)웹 개발/Spring Framework 2019. 5. 8. 23:14
war를 묶을 때(packaging) test class가 포함되어 컴파일 된다면? 다른 신입분의 war를 받아서 풀어볼 일이 있었는데 컴파일된 테스트 클래스가 포함되어 있었다. 어 왜? 테스트 클래스가 어떻게 포함되어 있지? 난 이제까지 war를 묶으면 자동으로 테스트 클래스가 빠지는 줄 알았다. 실 운영 서버에는 컴파일된 테스트 클래스는 필요없으니까 말이다. war를 묶을 때 테스트 클래스를 포함할 수도, 제외할 수 있다는 걸 이번에 처음 알았다.(그외에도 멀티 프로젝트 또는 다른 디렉토리를 포함하는) 이렇게 어쩌다보니 하나 배웠다. 컴파일된 테스트 클래스가 war에 포함되더라도 그 테스트 클래스를 읽을 일이 없으니 괜찮을 수도 있지만 왠지 모를 찝찝함 + 굳이 필요없는 파일 이 들어감 때문에 해결방..
-
티스토리 에디터 마크다운에 코드 하이라이트 적용하기웹 개발/웹&프로그래밍 2019. 4. 6. 17:44
이번 티스토리 에디터 업데이트로 티스토리에서 바로 마크다운을 작성하게 됐는데, 코드가 진한 초록색으로만 나와서.. 이유를 찾아보니 유저의 자유로운 선택 을 위해 따로 적용하진 않았다고 한다. 출처 : 티스토리 공식 사이트 그래서 코드 하이라이트를 어떻게 적용하느냐. 이 포스팅에서 사람들이 많이 사용하는 Highlight.js로 코드 하이라이트 적용하는 법을 소개하려한다. 이 곳을 들어가면 Hightligt.js를 어떻게 적용하는지 안내가 되어있는데 티스토리 마크다운에 코드 블럭만 어떻게 적용하는지만 소개해보겠다. 아래의 코드를 html에 붙이라고 하는데, 스킨 에 계속 적용해서 쓰기 위해 cdn방식으로 적용해보겠다. 먼저 관리자 창으로 들어가서 스킨편집 창에서 아래처럼 html의 사이에 코드를 붙여준다...
-
[Spring Boot, Gradle] gradle dependency 전체 삭제하는 법(gradle build 에러 해결 방법)웹 개발/Spring Framework 2019. 3. 8. 21:47
먼저 gradle 폴더가 어디있는지 보자. 1. 터미널로 접속하고 아래 경로와 명령어를 순서대로 입력해본다. cd $Homels -al그리고 .gradle 폴더가 있는지 확인해본다. 2. .gradle 폴더로 이동하고 caches 폴더가 있는지 본다. 그리고 찾았다면 아래의 명령어 입력 cd .gradlerm -rf caches그럼 caches 폴더와 하위 파일이 삭제된다. 3. 새로운 dependency가 들어올 수 있도록 새로운 폴더를 만든다. mkdir caches 4. 인텔리J를 켜서 Gradle refresh를 해주면 새로 dependency를 다운받는다.