본문 바로가기

Programing

(391)
Open Source Lists (오픈소스 목록) 모니터링 pinpoint : https://github.com/naver/pinpoint - 대규모 분산 시스템 추적 플랫폼, Pinpoint (D2)설치 및 실행1 : http://dev2.prompt.co.kr/m/post/332 : http://dev2.prompt.co.kr/m/post/343 : http://dev2.prompt.co.kr/35 컨테이너Docker: https://docs.docker.com/
[Java8] Optional.of 쓸 때 주의할 점... Optional 사용시 NULL이 가능한 값에 아래와 같이 사용하면 제대로 동작하지 않을 수 있다. // Exception e...final Optional message = Optional.of(e.getMessage());MyException exception = new MyException(message.orElse("문제가 있습니다!"), getReturnUrl(gotoUrl)); 원래 의도는 메세지를 가져왔을 때 없으면 기본 메세지를 orElse 를 통해 우아하게(?) 사용하려고 하는 의도일 것이다. 하지만, java.util.Optional#of 의 경우 아래와 같이 시그너쳐가 되어 있다./** * Returns an {@code Optional} with the specified presen..
[Tomcat] 기본 에러 페이지 오버라이드 keyword: tomcat default error page https://stackoverflow.com/questions/7066192/how-to-specify-the-default-error-page-in-web-xml WEB-INF/web.xml 에 에러가 보일때 표시할 페이지를 지정할 수 있다.예) 404 /error-location/404.html WEB-INF/error-location/404.html에 커스텀 페이지를 만들면 된다.
프로그래머의 장점/단점은... 예전에 후배가 보내준 짤방. "프로그래머의 장점은 A라고 말하면 A를 해준다. 프로그래머의 단점은 A라고 말하면 A만 해준다."
을/를, 이/가, 은/는 을 알아서 붙여주면 좋겠다. 포켓몬을 보다 보면 조사가 옵션처럼 붙어서 뭔가 아마추어 처럼 보이는 느낌이 있다.바로 한글의 특성 때문인데 이것을 구현하기 쉬울 거라고 생각했는데 나름 생각할게 더 있었다. 자바 코드/** * 한글코드 값은 아래 주소를 참고한다. * http://jrgraphix.net/r/Unicode/AC00-D7AF * * 로직에 대한 이해는 아래 주소를 참고한다. * http://gun0912.tistory.com/65 * * 속기에 대한 글을 참고하면 좋다. * http://blog.naver.com/blue8943/220227426526 */ @Slf4j public class StringUtils { /** '가'의 한글코드 값(시작) */ private static final int HANGULE_SYL..
Java 8 - get & put -> computeIfAbsent 바꾸기 예제 computeIfAbsent(K key, Function
[Spring] 특정 타입의 객체를 Request 스코프로 받기 방법1.빈에 @Scope 어노테이션을 이용한다.예) 로그인 정보를 어디선가(예. 인터셉터)에서 넣어준다고 할 때 아래와 같이 로그인 정보를 담는 요청 스코프의 빈을 만들 수 있다.@Component @Scope(value = "request", proxyMode = ScopedProxyMode.TARGET_CLASS) public class LoginHolder { private Login login; protected void setLogin(Login login) { this.login = login; } public Login getLogin() { return login; } }실제로 스프링에서는 해당 구현을 ThreadLocal등에 map의 형태로 관리한다.자세한 것은 아래 소스코드 참고.htt..
[Spring] afterCompletion 에서 annotation으로 로그 찍기 특정 컨트롤러 클래스에서만 User-Agent를 찍고 싶었다. 그래서 어노테이션을 만들고.. import java.lang.annotation.*; /** * Indicates that an annotated class or method for logging the User-Agent information. */ @Target({ ElementType.TYPE, ElementType.METHOD }) @Retention(RetentionPolicy.RUNTIME) public @interface UserAgentLogging { }afterCompletion에서 세 번째 파라메터를 통해@Override public void afterCompletion(HttpServletRequest request, H..