본문 바로가기
반응형

Java8

자바로 윤년 체크하기 Why is there a Leap Year? 윤년(閏年, leap year)은 과년(夥年)이라고도 하며, 역법인 태음력이나 태양력에서, 자연의 흐름에 대해서 생길 수 있는 오차를 보정하기 위해 삽입하는 날이나 주, 달이 들어가는 해를 말한다. 삽입하는 달을 정하는 방법을 치윤법(置閏法)이라고 한다. 한국법에서는, "윤년"이란 그레고리력에서 여분의 하루인 2월 29일을 추가하여 1년 동안 날짜의 수가 366일이 되는 해를 말한다(천문법 제2조 제5호). 윤년에는 2월과 8월이 같은 요일로 시작된다. 간단하게 그 해의 달력 2월 29일이 있다면 윤년이고, 2월 28일까지 있다면 평년이다. 즉 365일은 평년, 366일은 윤년이다. 4년마다 한 번씩 돌아온다. 4로 나누어 떨어지는 해는 윤년, 그 밖의 해는.. 2023. 3. 29.
Google Guava EventBus 라이브러리 사용법 Google Guava EventBus 라이브러리 사용법 구글 구아바는 자바용 공통 라이브러리 오픈 소스 집합이다. 구글 개발자들이 개발했다. 아파치 커먼즈 Apache Commons와 목적이 비슷하다. https://github.com/google/guava/wiki GitHub - google/guava: Google core libraries for Java Google core libraries for Java. Contribute to google/guava development by creating an account on GitHub. github.com https://commons.apache.org/ Apache Commons – Apache Commons Welcome to Apache.. 2023. 1. 22.
자바 디자인패턴 스트래티지 자바 디자인패턴 스트래티지 모든 개발자는 유지 보수가 쉽도록 노력해서 코드를 만들어야 합니다. 가능한 읽기 쉽고 재사용 가능한 코드를 생산하는 노력과 실력을 말합니다. 비록 현실은 쉽지 않은 것도 사실입니다. 짧은 프로젝트 기간과 수시로 변경되는 요구사항 때문이죠. 하지만 그렇다 해도 할 수 있다면 디자인 패턴을 이용해 프로그래밍하는 노력을 게을리해서는 안됩니다. 오늘의 포스팅은 디자인패턴 중 스트래티지 패턴 "strategy" 에 대해 알아봅니다. 소프트웨어 개발에 있어서 바뀌지 않는 것과 바뀌는 것을 구분하기 "변화" 애플리케이션을 아무지 잘 디자인해도 시간이 지나면서 점점 성장하고 변화 되어야 합니다. 변화를 유발하는 것은 수없이 많고 당연한 과정입니다. 변화하는 것과 변화하지 않는 것을 구분해야 .. 2022. 12. 23.
네티 Netty 프레임워크 공부 02 양방향 통신 (예제 첨부) 네티 Netty 프레임워크 공부 02 양방향 통신 (예제 첨부) 2022.12.21 - [슬기로운 자바 개발자 생활/모던 자바와 Reactive] - 네티 Netty 프레임워크 공부 01 (예제 첨부) 네티 Netty 프레임워크 공부 01 (예제 첨부) 네티(Netty)란? 네티 홈페이지에서 네티를 아래와 같이 소개하고 있다. 네티는 빠르게 개발가능한 유지보수, 고성능 서버, 클라이언트 비동기 이벤트드리븐 네트워크 애플리케이션 프레임워크다. ecolumbus.tistory.com 저번 포스팅에 이어 두 번째 시간 이번 포트팅에서는 양방형 통신 예제를 만들어 본다. 네티서버 구현 서버는 저번 시간에 작성한 서버 자바 프로그램과 크게 다르지 않다. EchoServer.java EchoServerHandler.. 2022. 12. 21.
자바 개발환경 이클립스 세팅하기 스프링 웹 JDK Maven등 자바 개발환경 이클립스 세팅하기 스프링 웹 JDK Maven등 프로젝트가 끝나고, 컴퓨터 포맷을 하고 새로운 회사에서 또 개발환경 세팅을 하고 반복의 연속. 2022년인데도 Java JDK 1.7을 사용하는 곳도 보인다. 그나마 1.8을 사용하면 다행이다. 꼼꼼하지 못한 탓에 새로운 프로젝트에서 일을 해도 특별히 필요하지 않다면 세팅을 안 하고 일을 시작한다. 일하다가 불편하면 그때서야 하나씩 세팅하곤 하는 게 내 스타일. 가끔 인터넷이 안 되는 곳에서 일하는 경우도 있으므로 오늘 주로 하는 세팅을 남겨본다. 자바 웹 프로그램 통합개발환경 설정 목차 자바 JDK 1.8 환경변수 이클립스 다운로드 이클립스 폰트 및 UTF-8 이클립스 마켓플레이스에서 스프링 STS 설치 이클립스 메이븐 설정 1. 자바 JD.. 2022. 12. 13.
GRPC 자바 세번째 서버와 클라이언트 만들기 저번 포스팅에서 생성된 코드를 갖고 서버와 클라이언트 프로그램을 만들어본다. 이번 포스팅에서 만든 예제를 첨부함. 이클립스에서 작성한 프로젝트. 자바 1.8, 메이븐, 이클립스 1. GreeterGrpc 를 사용해서 서버를 만들 수 있는 서비스를 만든다. 이전 포스팅에서 소스코드가 만들어졌다면 GreeterGrpc.java 를 확인할 수 있다. GreeeterGrpc 클래스를 상속/확장해서 HelloServiceImpl.java를 만든다. 클라이언트가 이름(name) 정보를 보내면, 서버는 name 유저의 주소를 반환하는 시나리오다. 실제 DB는 없다. ^^ package com.grpc.server; import com.grpc.GreeterGrpc; import com.grpc.HelloReply; .. 2022. 12. 5.
반응형