개요 이번 글에서는 Server-Sent Events(SSE)를 이용한 간단한 Maven, Servlet 3 기반의 Java 채팅 웹 애플리케이션을 구현해보고자 한다. Server-Sent Events란 무엇인가? Server-Sent Events(이하 SSE)는 HTTP 스트리밍을 통해 서버에서 클라이언트로 Push Notification을 할 수 있는 기술이다. HTML5 스펙에 명시된 표준 기술로 JavaScript 에서는 EventSource API를 이용하여 제어가 가능하다. Internet Explorer을 제외한 대부분의 브라우저에서 지원한다. 전통적인 웹 애플리케이션이라면 클라이언트의 요청에 대해 서버가 응답하는 방식이지만 SSE를 이용하면 별도의 복잡한 기술이 필요없이 HTTP 프로토콜을..
개요 지난 글에서 Maven, Servlet 3 기반의 Hello, World!를 출력하는 간단한 웹 프로젝트를 만들어봤다. 화면에 구구단을 출력하고 끝낼 것이 아니라면 웹 프로젝트는 데이터베이스와의 연동이 필수이다. 이번 글에서는 지난 글에 이어 데이터베이스 커넥션 풀을 구성하고 데이터베이스에 간단하게 질의한 결과를 화면에 출력하는 예제를 소개하겠다. 기본 프로젝트 구성은 지난 글을 참고한다. pom.xml 라이브러리 의존성 추가 ch.qos.logback logback-classic 1.1.3 com.zaxxer HikariCP-java6 2.3.7 compile com.h2database h2 1.4.187 org.sql2o sql2o 1.5.4 Don't Reinvent The Wheel, Unl..
야! 안경 닦는 거 있어? 야! 안경 닦는 거 있어? 안경 쓰는 사람이 2명 이상 모이면 하루에도 몇 번씩 나오는 말이다. 우리는 보통 안경알을 닦는 용도로 안경닦개(혹은 극세사 융)를 사용한다. 안경이 더러울 때 안경닦개로 안경을 닦으면 깨끗하게 닦인다. 단, 새 것 일때만... 서서히 이물질이 묻기 시작하고 한 번 세탁이라도 하면 온갖 먼지가 달라붙어 오히려 안 닦는 것만 못한 상황이 된다. 그래서 더러워지면 버리고 안경점에서 새 것을 얻어쓰기도 한다. 하지만 이런 흔하디 흔한 안경닦개도 막상 필요할 때 찾으면 없는 법! 더군다나 최근 스마트폰과 카메라가 대중화되면서 안경알 뿐만 아니라 스마트폰의 액정과 카메라의 렌즈까지 매일 관리해줘야 하는 대상이 되었다. 이 쯤 되면 항상 깨끗한 상태의 안경닦개를..
공포의 검은 화면 퇴근 후에도 예측하지 못한 장애가 터지면 이유불문하고 PC 앞에 앉아야 하는 것이 IT인의 숙명이다. 내 경우 사내 보안 정책상 방화벽에서 원격 데스크톱(Remote Desktop)을 이용한 원격 제어만이 허용되는데 문제는 가끔 원격 테스크톱 연결시 검은 화면(Black Screen)이 뜨면서 먹통이 될 때가 있다. 아무리 구글링해봐도 검은 화면 문제를 해결할 수 있는 확실한 방법이 없다. 가장 확실한 해결책은 시스템 재시작인데 문제는 먹통이 된 화면에서 시스템을 재시작할 방법이 없으니 환장할 노릇이다. 이 경우 당황하지 말고 아래와 같이 따라해보자. 원격 데스크톱에서는 Ctrl + Alt + Del을 어떻게 누를까? 검은 화면이라서 화면을 볼 수는 없지만 다행히도 단축키는 작동한다. ..
- Total
- Today
- Yesterday
- Spring MVC 3
- bootstrap
- Eclipse
- 태그를 입력해 주세요.
- 로드바이크
- 평속
- chrome
- kotlin
- Kendo UI
- jstl
- Spring Boot
- java
- JHipster
- 로드 바이크
- DynamoDB
- 구동계
- Docker
- graylog
- 알뜰폰
- MySQL
- spring
- Kendo UI Web Grid
- 자전거
- jsp
- maven
- node.js
- Tomcat
- JavaScript
- jpa
- CentOS
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |