CLOVER🍀

That was when it all began.

Spring

SpringのCache Abstractionで、複数のCacheManagerを合わせるCompositeCacheManagerを使う

SpringのCache Abstractionでは、バックエンドのキャッシュに対するCache Providerがあり、それぞれCacheManagerの 実装を提供していますが、複数のCacheManagerを組み合わせるCompositeCacheManagerというものがあります。Cache / Dealing with caches with…

SpringのCache Abstractionで、 アノテーションに複数のキャッシュを指定した場合の動きを確認する

SpringのCache Abstractionで提供される各種アノテーションでは、使用するキャッシュを複数指定することが できます。Cache / Declarative annotation-based caching複数のキャッシュを設定した時に、どのような動作をするのか確認してみましょう。なんとな…

Spring Boot+JacksonのDate and Time APIでフォーマットを変更する

Jacksonで、LocalDateTimeなどのDate and Time APIのクラスを使ってJSONを作成すると、デフォルトだと ちょっと困ったことになります。前提としてSpring Bootを使っているのですが、まずはpom.xmlに以下のように宣言。 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boo</artifactid></dependency>…

SpringのCache AbstractionでRedisを使ってみる

SpringのCache Abstractionで、Redisを試してみたくなったので、気になるところの確認を含めて ちょっと遊んでみます。Spring BootのAutoConfigure対象で、裏ではSpring Data Redisを使っているみたいです。Caching / RedisSpring Data Redisここでは、簡単…

ローカルキャッシュにCaffeineでも

この記事は、「Java Advent Calendar 2016 - Qiita」の4日目の記事となります。 昨日は、@susumuisさんの「Javaが僕にくれたもの | susumuis Info」でした。 明日は、@fukushiwさんのご担当となります。 ローカルキャッシュ、今ならなにを使うでしょう? Jav…

Infinispan Embedded Mode/Remote(Hot Rod Client) × Spring Cache

Infinispanには、Springとの連携(Spring Cache Provider)がけっこう前からあります。Infinispan 5.0.0.Finalの時点では、すでにあったみたいです。とはいえ、しばらくEmbedded Modeのみだったのですが、8.1.0.FinalでClient/Server(Hot Rod Client)での…

Scala × Spring 4.3でコンストラクタインジェクション

今更ですが、Spring 4.3でコンストラクタインジェクションを使う際に、@Autowiredを付けなくてもよくなったという話をちょっと試しておこうかと。Scalaで。Spring 4.3 DIコンテナ関連の主な変更点pom.xmlは載せますが、長いので最後に。 確認用のコードを用…

Spring Data Hazelcastで遊ぶ

HazelcastによるSpring Data向けのモジュールが、8月末くらいにリリースされているのに気付きました。GitHub - hazelcast/spring-data-hazelcast: Hazelcast Spring Data integration Project http://projects.spring.io/spring-data/現時点のバージョンは、…

InfinispanのDistributed Streams APIを使ってWordCount

最近、こういう記事があるのを見つけました。Red Hat JBoss Data Grid 7 + JBoss BRMSで始めるリアルタイムビッグデータ | RED HAT OPENEYE -レッドハットの情報ポータル Red Hat JBoss Data Grid 7 + JBoss BRMSで始めるリアルタイムビッグデータ | RED HAT…

Spring Data GeodeをとりあえずSpring Boot Starterなしで使う

Apache Geode 1.0.0-incubating.M2がリリースされた時に、Spring Data Geodeの1.0.0.APACHE-GEODE-INCUBATING-M2がリリースされました。Spring Data Geode 1.0.0.APACHE-GEODE-INCUBATING-M2 ReleasedSpring Data Gemfireのバージョンのうち、特にApache Geo…

Spring SessionのInfinispan向けコードを書いてみた

Spring Session 1.1.0で、Hazelcastのサポートが追加されました。Redirecting…Spring Session 1.1.0 Releasedコードは、このあたり。 https://github.com/spring-projects/spring-session/tree/1.2.0.RELEASE/spring-session/src/main/java/org/springframew…

Spring Data GemFire × Apache Geode

Spring Data GemFireとApache Geodeを、組み合わせて使えると聞いて。Spring Data for Pivotal GemFireSpring Data GemFire supports Apache GeodeNew in the 1.7 ReleaseSpring Data GemFire 1.7から、Apache GeodeのEarly Access supportが始まっているそ…

Spring Boot CLI+Groovy+Grapeを使って、簡単にSpring Bootアプリケーションを書く

sdkman(gvmの頃からですが)を使って、Spring Bootをインストールすることができます。 $ sdk install springboot ここでインストールされるspringコマンド(Spring Boot CLIって言ったらいいんでしょうか?)で、簡単にSpring Bootアプリケーションが書け…

Spring BootのCache auto-configuration×JCache(Hazelcast)で遊ぶ

Spring Boot 1.3から、Cacheのauto-configurationが入ったということで。Cache auto-configuration in Spring Boot 1.3遊ぼう遊ぼうと思いつつ試せていなかったので、そろそろトライしてみることに。Caching サポートしているCacheのProviderは、こちら。Sup…

はじめてのSpring AOP

SpringでのAOPをやったことがないなと思いまして、Interceptorの書き方を軽く見るとともに、挙動について把握しておこうかと思いまして。Interceptorのかかり方について、気になるのは 可視性 Interceptorを動かすには、拡張されたインスタンス(要は@Autowi…

SpringのSingletonな管理Beanに、自分より短いライフサイクルのBeanをDIしようとすると?

なんとなく結果が見えている気がするんですけど、確認という意味で試してみました的な。SpringのBeanってデフォルトのスコープはSingletonですが、SingletonなBeanに対してそれより短いライフサイクル(例えば、RequestやSession)のものを放り込もうとする…

SpringのRestControllerとBindingResultと

RestControllerとBean Validationでの、ちょっとした動作確認。リクエストをマッピングするこんなクラスと src/main/java/org/littlewings/spring/restvalidate/ParamBean.java package org.littlewings.spring.restvalidate; import javax.validation.const…

Spring BootでWARファイルを作る

そういえば、やったことなかったなぁと思いまして、Spring Bootで実行可能JARファイルではなく、WARファイルを作ってTomcatなどにデプロイするための方法を試してみました。で、試すにあたって、せっかくなので以下のコンセプトでやってみたいと思います。 …

HazelcastCacheManager or JCacheCacheManager

最近、SpringのCache機能とライブラリ側で提供しているCacheManagerの実装を見ていて、ふと気付いたことについて。SpringのCache機能は、CacheManagerの実装が用意されているか、JCacheに対応した製品であればSpringが提供するJCacheCacheManagerを使うこと…

Hibernate SearchとSpringのCache機能で、InfinispanのCacheを共有する

前に1度挫折したネタを、別のアプローチでやってみようということで。以前、Spring BootとHibernate Search、そしてInfinispanを使って、こんなエントリを書きました。Spring Boot×Hibernate Searchで、インデックスを複数Nodeで共有する http://d.hatena.ne…

Spring Boot × Hazelcastで、分散ExecutorService

Hazelcastが持っているSpringとの統合機能を、Spring Bootの上に乗せて遊んでみました。Spring Integration http://docs.hazelcast.org/docs/3.4/manual/html-single/hazelcast-documentation.html#spring-integrationこれ、ドキュメントだけ読んでいるとXML…

Scala×Spring Bootで、Spring Loadedしてみる

Spring Bootで、コンパイル後のクラスの変更を反映するHot Reloadingというものができるという、Spring Loadedを試してみました。Scalaで。 Spring Boot+Spring Loaded 用意したpom.xmlはこのような感じ。

組み込みTomcat(on Spring Boot)でJNDIリソースを扱う

ちょっとやりたいことがありまして、(Spring Bootを使った)組み込みTomcatでJNDIリソースを定義する方法を調べてみました。結果としてやりたいことはできなかったのですが、せっかく調べたのでメモということで。 例題1、DataSourceを定義する まずは容易…

Spring BootとHibernate Searchで遊ぶ

最近、Hibernate Searchの5.0.0.Finalがリリースされました。Hibernate Search http://hibernate.org/search/Hibernate Search 5系から使用するLuceneが4.10系になったので、試してみようと思い、どうせならとSpring Bootを使って遊んでみました。こんなもの…

Spring Boot×Hibernate Searchで、インデックスを複数Nodeで共有する

こちらのエントリの続きです。Spring BootとHibernate Searchで遊ぶ http://d.hatena.ne.jp/Kazuhira/20141223/1419330401ここで作成したアプリケーションで持つLuceneのインデックスを、複数Nodeとして起動したアプリケーションで共有してみます。Luceneの…

Spring BootとHazelcast WMでセッションレプリケーションして遊ぶ

Spring Boot(Springも含めて)にちょっとずつ慣れていこうと思いまして、手近なもので遊んでみようかと。Spring BootがEmbedded Tomcatをデフォルトで使うのですが、ここにHazelcast Web Manager(WM)を適用してセッションレプリケーションしてみます。Web…

Spring BootのDIとCommandLineRunnerの例をScalaで書いてみたよ

先ほど、Spring Bootの小さなサンプル(というか写経)を書きましたが、ついでにDI/ComponentScanも試してみたくなりまして。書籍のCommandLineRunnerの例を、Scalaで書いてみました。まずは、pom.xml。

はじめてのSpring Boot

先日、こちらの書籍を購入しました。はじめてのSpring Boot―「Spring Framework」で簡単Javaアプリ開発 (I・O BOOKS)作者: 槇俊明出版社/メーカー: 工学社発売日: 2014/11/01メディア: 単行本この商品を含むブログ (8件) を見るまだ3分の1程度しか読み終わっ…

Web層との連携Bundleの作成

今度は、前回作成したWeb層と連携するOSGi Bundleを作成してみたいと思います。Web層でSTSを使ったOSGi Bundle Projectの作成で散々な目に遭ったので、今回は最初からMavenを利用します。まずは、Projectの作成。 $ mvn archetype:generate -DgroupId=my.ser…

Spring MVC、最初の一歩

Spring MVCを使ってOSGi Web Bundleを作成してみたいと思います。とりあえず、いろいろ準備が要りますが…用意したコードを列挙。pom.xml <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0…</modelversion></project>