Failure Sharing

Bootup your energy with sharing failure.

Java

Java8 Gold : FileIO

BufferedReader br1 = null; try (BufferedReader br2 = new BufferedReader(new FileReader("src/sample.txt"))) { br2.lines().forEach(line -> System.out.println(line)); br1 = br2; // Resource leak: 'br1' is never closedJava(536871799) } // try…

Customized Functional Interface

Definition has only one abstract method 다른 메소드는 많이 있어도 상관 없다. @FunctionalInterface // 이걸 써주면 메소드를 실수로 2개 쓰거나 했을 때 미리 실수를 알려준다. interface void doSomething(Function<Integer, String> f) // when calls it (ASIS) doSome</integer,>…

Customized Functional Interface

FunctionalInterface which is just adding values github.com Compiler infer the type of parameter via my input 함수형 인터페이스의 목적 : '->'를 이용해 처리를 간소화하기 위한 것이구나. github.com

Mainly used Functional Interface on Java 8

Function, The Transformer 무조건 입력값과 출력값이 있어야 한다. github.com Consumer, The Spartan, Give Them Nothing but Take from Them Everything 말 그대로 무언가를 소비한다. ex. print out without any return. @FunctionalInterface public in…

First Class Function until Java 7

Impossible on Java メソッドをパラメータとして入れる。 public String getName() { ~~ } findByName(getName()) // impossible Return as function return getName; // impossible Javaのメソッドでは、上のことに対応していない。 他言語のfunctionに該当…

Rerun Failing Tests

with plugin Just add '-Dsurefire.rerunFailingTestsCount=2' maven.apache.org with code import org.junit.rules.TestRule; import org.junit.runner.Description; import org.junit.runners.model.Statement; public class RetryRule implements TestRul…

Nullチェック

お、すごい。 C#ではこんな簡単にいけるんや。 Person person = null; var name = "default name"; var TempName = person?.Name ?? name; // ここがポイント。 Console.WriteLine($" person name={TempName}"); 出力 default name Javaだったら if (person …

Java Performanceのモニタリングツール(JMX)

Background 最近会社で、Javaアプリケーション実装を担当しています。dbとのコネクションはなく、webにリクエストを投げる感じのもので、 大量のデータを処理するところも特にないですが、どうしても気になって、性能測定をしてみようと思いました。 JMX(Jav…

Java Microbenchmark Harness (JMH)のインストール + Eclipseインポート

前提 JMHは、Mercurialリポジトリを使うため、事前にそれをインストールする必要があります。 ソースコードダウンロード Mercurial SCM 上記のURLから、自分のOSに合うものをダウンロードします。 Download JMH hg clone http://hg.openjdk.java.net/code-to…

String vs StringBuilder vs StringBuffer

String 短い文字列の結合の時のみ使用 StringBuilder Threadと関係ない時のみ使用 StringBuffer ThreadSafeが必要な時使用 : static文字列を変更したり、singletoneで宣言されたクラスに宣言された文字列の場合使用

Javaで、Excelのシートをインポートする。

必要なライブラリ poi-3.16.jar mvnrepository.comからダウンロードできる。 File Code Util class package demo.utilities; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; imp…