본문 바로가기

반응형

java

Java Functional class import java.util.Objects; import java.util.function.Consumer; import java.util.function.Function; import java.util.function.Supplier; public class Functional { private final T value; public Functional(T value) { this.value = value; } public static Functional of(T value) { return new Functional( Objects.requireNonNull(value) ); } public static Functional of(Supplier supplier) { Objects.requireNon.. 더보기
Ubuntu Oracle Java Develop Kit(JDK) 설치 Ubuntu 에는 기본적으로 Open source 진영의 OpenJDK 가 설치되어 있습니다. 이를 사용하여도 무방합니다. 선호도의 차이나, 필요에 의해서 Oracle 사의 JDK 를 설치해야 하는 경우가 있습니다. Ubuntu 는 기본적으로 restrict 제품에 대한 설치를 어느 정도 허용하고 있는 상태인데, 상업적으로 사용해야 하는 몇몇 제품은 기본적으로 설치하기가 쉽지 않습니다. 다만 조금만 설정하면 편리하게 사용할 수 있습니다. 기본적인 개념은 다음과 같습니다. 내가 설치하고 싶은 앱이 특별한 저장소(Repository) 에 저장되어 있고, 나는 저 저장소를 사용하여 apt 명령어를 통하여 설치를 하고 싶은 것 입니다. Oracle 은 자체적으로 JDK 를 다운로드 받을 수 있는 홈페이지는 제공.. 더보기
Azure Web App - Application Settings - 환경 변수에 관하여 Microsoft 의 Cloud Service 인 Azure 를 회사에서 사용하다보니, Web App 을 배포하는 경우가 많습니다. 대부분의 API 프로젝트가 Spring Boot 기반으로 구현하다보니, Database connection string 와 다양한 환경변수값이 개발, 테스트, 운영에서 필요하게 되어 이를 해결하는 방법을 검색해 보았습니다. Microsoft 에서 내용을 한글로 잘 번역해 놓아서 그대로 사용하겠습니다. Application settings (앱 설정)이 섹션에는 시작 시 웹앱이 포드하는 이름/값 쌍이 나와 있습니다. - .NET 앱의 경우, 이 설정은 런타임 시 .NET 구성 AppSettings 으로 주입되어 기존 설정을 재정의합니다. - PHP, Python, Java 및.. 더보기
MySQL Connection 생성시 UTF-8 로 Charset을 지정하는 방법 한글을 DB에 저장하기 위해서는 MySQL에서 한글 저장을 위한 UTF-8 CharSet 으로 DB 구성하기 글을 먼저 읽어보기 바랍니다. DB가 준비된 상태에서 Connection을 Java 앱에서 획득할 때, 유니코드, UTF-8 사용에 대해 알려주어야 합니다. String connectionString = "jdbc:mysql://localhost:3306/test_spring?useUnicode=true&characterEncoding=utf8"; 위에서 빨간색과 같은 부분을 추가하면 됩니다. 끝. 더보기
문자열에서 숫자를 제외하고 모든 문자 삭제, 숫자만 남기기 String 클래스의 replaceAll() 메소드와 정규식을 사용하여 간단히 문자열에서 숫자만 추출할 수 있다. 코드는 다음과 같다. /** * 숫자를 제외한 모든 문자를 제거하고 숫자문자열만 리턴한다. * * @return */ public static String removeCharExceptNumber(String str) { return str.replaceAll("[^0-9]", ""); // 또는 // return str.replaceAll("[^\\d]", ""); // 또는 // return str.replaceAll("\\D", ""); // 모두 사용가능하다. } reference : http://stackoverflow.com/questions/6883579/java-regular-.. 더보기
jar 파일을 윈도우 서비스에 등록하여 자동 실행하기 자바로 안드로이드 통신을 위한 소켓서버를 만들었는데, 자바의 특성상 윈도우 서버를 사용하는 경우 지정된 사용자로 자동로그인이 되어야 시작프로그램에 등록된 중계서버가 정상적으로 작동하였습니다. 가끔! 서버관리자가 이를 잊어버리고 최종 작업에서 지정된 사용자로 로그인을 하지 않으면 중계서버는 무용지물이 되는 것이지요. 이를 방지하기 위해서 윈도우 서비스로 등록하여 로그인을 하지 않더라도 정상적으로 중계서버가 작동하는 것을 목적으로 합니다. 구글링에서 검색되는 수많은 방법중에 저에게 가장 간편하고 잘 동작하는 것을 골랐습니다. 물론 저도 윈도우 2008 R2 서버에서 정상적으로 사용하고 있는 방법입니다. 구현 방법은 간단합니다. 대부분의 자바 프로그램은 jar 파일로 배포를 하게 됩니다. executable .. 더보기
Longitudinal Redundancy Check(LRC) 생성하는 코드 요즘 자바기반에서 시리얼통신을 하는 경우가 많은데요. 이런 경우 CRC 또는 LRC 체크를 위해서 전송하는 전문(대부분 byte[] 를 전송합니다.)의 CRC, LRC 값을 생성하는 메소드를 만들어보았습니다. 기기마다 요구하는 부분이 조금씩 차이가 있으므로 참고하시고 기기에 맞는 LRC를 생성하는 코드는 직접 코딩하여 테스트이후 사용하시기 바랍니다. /** * LRC값을 생성하는 메소드 * 파라메터로 전달되는 data 의 idx 0 에서 부터 * length - 2 의 idx 까지 byte 값을 exclusive or 연산으로 * LRC값을 구하고 length -1 의 index 에 해당 byte 값을 assign 한다. * * 인자로 전달된 byte[] data 는 value of reference 이.. 더보기
ubuntu oracle java 설치하기 4월 17일 기다리고 기다리던 우분투 14.04 LTS 버전이 출시되었습니다. 많이들 사용해 주시구요.. 아직 버그가 좀 있으니 설치는 한두달 이후에 하시면 좋을 듯합니다. 저도 메인 PC는 아직 업데이트 전이고, 노트북은 설치만 해놓은 상태입니다. 자.. 우분투에는 기본적으로 open jdk 를 우분투 소프트웨어 센터를 통하여 설치할 수 있습니다. 하지만 윈도우에서 개발을 하시던분은 좀 생소한 jdk라 꺼려지기도 하고 어지간하면 오라클에서 배포하는 버전을 사용해서 개발했던 사람이라면 비슷한 환경을 구성하고 싶을 겁니다. 그래서 우분투에서 지원하는 ppa 저장소 기능을 이용하여 오라클에서 배포하는 jdk를 설치하는 방법을 소개하겠습니다. 대부분의 작업은 터미널에서 콘솔입력으로 이루어집니다. 1. 저장소를.. 더보기

반응형