목록2016/05 (20)
Hello World
슬랙(Slack)은 팀이나 프로젝트 단위에서 널리 사용되고 있는 대표적인 협업 메시징 서비스다. 통상적인 메신저 서비스들이 갖는 기본적인 메시징 기능에 더하여 자료를 저장하고 검색하는 등 협업에 필요한 여러 기능들을 갖추고 있고, 또한 모바일과 데스크톱 환경을 아우르는 편리하고 다양한 접점을 제공하기 때문에 많은 사용자층을 확보하고 있는 인기있는 서비스이기도 하다. 게다가 슬랙은 사용자나 개발자가 직접 기능을 확장하고 용도를 변경할 수 있는 다양한 통합(integration) 방법들도 제공한다.이 글에서는 슬랙이 제공하는 다양한 확장 방법들을 간단히 소개하고 그 중 하나인 슬래시 명령(slash command)을 만들어 보려 한다. 뒤에서 다시 설명하겠지만, 슬래시 명령을 만들기 위해서는 슬래시 명령을 ..
Jackson은 json을 처리하는 3가지 방법을 제공하는데, 여기서는 간단하게 Data Binding 방법을 소개한다. 1. json 데이터를 java object로 변경하기 * json data{ "name" : { "first" : "Joe", "last" : "Sixpack" }, "gender" : "MALE", "verified" : false, "userImage" : "Rm9vYmFyIQ==" } * User클래스public class User { public enum Gender { MALE, FEMALE }; public static class Name { private String _first, _last; public String getFirst() { return _first; }..
검색어 : how to map value by key jstl 문법이고 뭐고 이럴땐 대략... 대신 중요단어를 적당히 넣어 물어보면 된다. ( 검색 결과중 참고 URL : http://stackoverflow.com/questions/924451/jstl-access-a-map-value-by-key ) 서핑하면 방법 1. 은 여기저기 쉽게 나오는데... 방법 2.는 잘 찾아지지 않아서 전에 코딩할때 찾는다고 시간 좀 걸렸었는데, 오늘은 쉽게 찾음... 방법 1. 콜렉션 요소 하나씩 ${entry.key} ${entry.value} ${entry.key.class} 방법 2. 키값으로 바로 뽑아내기
PrepareStatment(#)와 Statment($)를 정확히 모르고 사용하시는 분들이 있어 정리해봤습니다. - 간혹 Statment를 숫자일때 사용한다.. 라고 생각하시는 분들고 계시고 정확한 의미를 모르는 분들이 계십니다. 정리된 내용 보시기 바랍니다. 1. #의 사용 (PrepareStatment) - #을 사용할 경우 오라클의 PreparedStatment를 사용하게 된다. 예제(name=John) a. mybatis mapper SELECT NAME FROM TEST WHERE NAME=#{name} b. 오라클에서 받은 쿼리 SELECT NAME FROM TEST WHERE NAME = ? 실제 수행 쿼리SELECT NAME FROM TEST WHERE NAME='John' 2. $의 사용..
********************************************************************************************************스프링 MVC 에서 일정 시간 주기적으로 작업하는 스케쥴러를 만들어 본다. 일단 root-context.xml을 수정한다. 위 처럼 변경한다.class는 실제 class파일이 있는 위치 잡아주면 된다. 원래는 이것만 적혀 잇엇을거다. 그리고 나선 public class AlarmTask { private static final Logger logger = LoggerFactory.getLogger(AlarmTask.class); @Scheduled(cron="*/30 * * * * *") public void schedu..
Unit tests, integration tests, and functional tests are all types of automated tests which form essential cornerstones of continuous delivery, a development methodology that allows you to safely ship changes to production in days or hours rather than months or years.Automated tests enhance software stability by catching more errors before software reaches the end user. They provide a safety net ..
장난 삼아 써보던 React를 실무에 적용할까 말까 고민하면서 이것저것 좀 찾아봤다. 찾아보면서 알게 된 의외의 사실은 React의 핵심적인 장점이 성능에 있다는 것이다. React를 Angular랑 비교하면서 단방향이고 UI만 다루기 때문에 심플하다는 이야기를 많이 하지만, 그냥 옛날 방식의 템플릿에 비해 React가 뭐가 더 좋으냐고 물으면 성능 이외의 이유를 대기 어렵다. JSX 문법이 더 낫냐고 하면 그렇지도 않다. 진짜(?) 템플릿 언어들에 비해 JSX 문법이 가독성도 높다고 하기 어렵고 그 외 여러 가지 면에서도 쳐진다.그럼 React가 왜 성능이 좋으냐. 결정적인 이유는 DOM Diff에 있다. 그냥 템플릿 엔진은 state가 바뀌면 전체 엘리먼트를 새로 그려야 하는데 React는 state..
이글은 Todd라는 개발자가 작성한 “Ultimate guide to learning angular js in one day”라는 블로그 글을 번역한 것이다.정말 하루만에 끝낼 순 없지만 -_- 그래도 좋은 시작점이 되리라 생각한다. 다같이 AngularJS에 빠져보자!AngularJS 란?Angular는 자바스크립트로 만든 client 측 MVC/MVVM 프레임워크로 모던 단일 페이지 웹 애플리케이션(혹은 웹사이트) 개발의 정수이다. 그리고 모던 웹을 다루는 새로운 방법이자 HTML5가 가져올 미래를 위한 큰 발판이다. 이 글은 필자가 Angular를 경험해보며 알게 된 것들과 조언, 우수 사례를 바탕으로 작성해본 이름하여 하루만에 끝내는 Angular 강좌다.용어Angular는 새로 등장하는 용어와 ..
크리스 코이어(Chris Coyer)는 최근에 자신의 사이트인 CSS Tricks에 올린 상황별 CSS 중앙정렬 방법을 정리한 글을 통해 CSS를 이용해 뭔가를 가로 및 세로로 중앙정렬하는 방법이 너무나도 많다는 사실을 보여줬습니다. 각 중앙정렬 방법은 모두 저마다 주의할 점이 있지만 그러한 방법들을 조합하면 IE8 및 이후 버전에서도 일관되게 크로스 브라우징을 지원하는 막강한 중앙정렬 기법을 만들어낼 수 있습니다.이제 본격적으로 어떻게 하는지 살펴보겠습니다.블록 만들기응답형 웹사이트를 제작하고 있다면 대부분 요소의 크기를 퍼센트로 지정할 것이며, 여기서는 임의의.container 요소를 만듭니다.123 ...123456.container { width: 70%; height: 70%; margin: 4..
우리는 고객이 무엇에 관심 있어 하고 무엇에 관심 없어하는지, 어떤 것을 보았을 때 클릭해 들어가고 어떤 것을 보았을 때 사이트에서 이탈하는지 궁금해 합니다. 이러한 정보를 얻기 위해 봐야 할 것은 역시 웹서버의 접속 로그입니다.처음에는 매일 생성되는 로그 파일을 일일이 파싱해서 원하는 정보를 DB에 쌓는 방법을 이용했지만, 이러한 방식은 한계가 있었습니다. 저장할 수 있는 데이터의 양에 심각한 제한이 있었고, 따라서 처음에 얻고자 했던 데이터 이상의 것을 새로 추출할 수도 없었습니다.그래서 지금은 웹서버 로그를 하둡(Hadoop) 클러스터에 쌓고 있습니다. Google Analytics 같은 외부 분석툴을 사용하기도 하지만, 아무래도 데이터를 우리 손에 직접 들고 있는 것이 더 유연한 분석을 제공할 수..