2017-11-01から1ヶ月間の記事一覧

日付のStream生成 Java9 で追加がある。

Java8 までは、過去書いたように、、、 LocalDate の Stream 生成 - Oboe吹きプログラマの黙示録 Stream で LocalDateリストを生成 - Oboe吹きプログラマの黙示録 Java で横長カレンダーを書くための処理 - Oboe吹きプログラマの黙示録 のように、LocalDate …

Python入門のリンク

Python を初歩から学ぶのに良さそうなサイトを見つけました。 http://www.python-izm.com/

java9 で追加された Objects.requireNonNullElse / requireNonNullElseGet

NULL でない時の値の取得などは、Java8 で追加された Optional で充分事足りるのにと思うのだが、 Java9 で java.util.Objects には、requireNonNullElse / requireNonNullElseGet が追加されてる。 public static <T> T requireNonNullElse<200b>(T obj, T de</t>…

スライドしてループする jQuery で

メモ。 スライドしてループするデザインの作り方を紹介しているのを見つけたのでリンクのメモです。 jQueryで中央が拡大表示されたカルーセルパネルUIを実装する方法 | BlackFlag

Throwable な Function から、Optional<LocalDate>を生成することでコードを短く

先日、Optional の filter を連結して使う - Oboe吹きプログラマの黙示録 で書いた例は、 DateFormat の日付の妥当性チェック setLenient(true=厳しくない)を行い、これが返却値なしの void メソッドであることから どうしてもあのようになってしまってい…

StatelessChecker を使う。

Serializable And Throwable Consumer - Oboe吹きプログラマの黙示録 を書いたので、忘れないように本当にステートレス Page として作ったのかチェックするのに 有効な方法を書いておく。Page クラスに、StatelessComponent アノテーションを付与して WebApp…

Serializable And Throwable Consumer

Wicket フォームイベント捕捉した時の処理は、シリアライズ化した関数型インターフェース github.com これのおかげで、Wicket 8から、AjaxFormSubmitBehavior の onSubmit でラムダ式を書けるようになった。 しかし、ラムダ式の中で例外捕捉の try~catchブ…

Wicket stateless なページ

Wicket の基本は、ステートフルである。それでもステートレスのページが必要なケースも要件によっては発生するのが Webアプリ開発の世界。Form → StatelessForm Link → StatelessLink か、 BookmarkablePageLink に置き換えるで済ませられれば良いが、Page …

ZIP 圧縮と展開

先日、tar and gzip 圧縮・展開を書いたので、ZIP圧縮・展開です。これは Apache commons-compress を必要とすることなく 標準ライブラリと、Throwable な Consumerがあれば綺麗に書けます。→ ラムダ式の例外処理を綺麗にする - Oboe吹きプログラマの黙示録…

Java9 module-info 未対応 JAR の Maven 解決方法

先日、初めてJava9 Jigsaw に触れて四苦八苦したが、、、 Java9 Jigsaw モジュール参照側は結局すべてモジュールを引っ張れないとならない?! - Oboe吹きプログラマの黙示録 Java9 Jigsaw モジュール使用プログラムの実行 - Oboe吹きプログラマの黙示録 Jav…

QRコード生成&読込で良く使われてるもの。

Javaでなくても、C++ 、C# でも Zxing を使えば QRコード生成&読込は、事足りる。github.com 変なものを見つけた。JavaScript で QRコードをデコードするもの。。。 GitHub - colkito/qrcode-decoder-js: Javascript QR code decoderどうして JavaScript で…

tar and gzip 圧縮・展開を補強

Tar GZIP 圧縮を先日書いた oboe2uran.hatenablog.comこれに、圧縮する時に対象を制限したり展開せずにエントリを抽出するものを追加した。 長いけど以下のとおり。ただし、→ FileCollection - Oboe吹きプログラマの黙示録 が必要 import java.io.BufferedIn…

Webページ入力フィールド制限、ToolTip

今まで過去から何度も書いたものをまとめる。 過去。。。 入力フィールドでよく使いそうな jQuery 処理のメモ - Oboe吹きプログラマの黙示録 input タグ type="number" のスピンボタンを非表示 - Oboe吹きプログラマの黙示録 chromeで0以上の整数入力に限定…

Java9 の HttpClient を試す

Java9 HttpClient インキュベーターなので、この先どうなるか判らないが、 Apatch HTTPClient を使わなくて済むようになるのか? とりあえず試してみる。 モジュール使用宣言を用意する必要があり、module-info..java を次のように用意する。 module sample{…

Java9 でまとめる方向が見えてきた非同期ストリーム

community.oracle.com 有志が日本語に訳してくれて助かります。 https://orablogs-jp.blogspot.jp/2016/10/reactive-programming-with-jdk-9-flow-api.html

Java9 Jigsaw モジュール参照側は結局すべてモジュールを引っ張れないとならない?!

Java9 Jigsaw モジュール使用プログラムの実行 - Oboe吹きプログラマの黙示録 に書いたが、Elipse Maven で、WTP 書いてコンパイルができないのは、 依存する JAR が export を宣言した module-info を用意したJAR を使ってないからだ。 でも、開発するWebア…

マップの比較、MapDiff

1年近く前に、リストの比較を書いた。 リストの比較、ListDiff - Oboe吹きプログラマの黙示録それなら2つのマップの比較も普遍的なものが書けるであろう。 import java.util.Map; import java.util.function.BiFunction; import java.util.function.Consum…

Java9 Jigsaw モジュール使用プログラムの実行

モジュール参照のJavaプログラムを実行するにはモジュール exportしている JARの置かれたパスを指定して 読み込めるように指定オプションと参照側のクラスを指定しないとならない。 java -m {モジュール検索先PATH} -p {実行するモジュール名}/クラス名{モジ…

Java9 待望の Optionalのメソッド

(1)Java8 まで、Optional の、肯定と否定を、以前書いたように実行していたが、 Optional のifPresent の否定形 - Oboe吹きプログラマの黙示録ifPresentOrElse で書けるようになった。さほど文が短くなるわけではないけど、型を書かなくてもいい。 Option…

Java9 Jigsaw と Maven

Java9 も一般公開リリースされて日数も経ったが、まだ仕事の現場で使用されたというのは聞こえてこない。 Jigsaw モジュール定義で公開したいものだけを module-info.java に書いて、参照側でモジュール定義名を参照限定する機能、 ソース管理と伴に隠蔽化し…