executionの記述方法についてまとめました

spring

springのAOP「@Before」や「@After」で、実行対象を指定する「execution」ですが、少々記述方法が特殊で最初はとまどう場面があるかもしれません。

executionは正規表現ににていて、色々な指定方法が可能です。
色々な指定方法が可能であるがゆえに、慣れてきてもド忘れしたり、使い方を間違ってしまうものです。今回は「execution」のフォーマット(指定方法)について解説していきます。
続きを読む

Syntax Highlighterの背景色と行間を変更する

wordpress

技術系ブログでよくみかけるプログラムコードを表現しているプラグイン「Syntax Highlighter」ですが、背景色が1行ずつ交互に色が変わっているのをよくみかけます。
Syntax Highlighterの背景色はデフォルトでは、白一色ですが、背景色を1行ずつ交互に変更する方法を解説します。当ブログでも使用しているプラグインです。備忘録として設定を残しておきます。これから導入を検討の方はぜひ参考にして下さい。
続きを読む

AOP(Aspectj)クラス内でメソッド引数を取得する

spring

AOP(Aspectj)を実現するアノテーションとして「@Before、@After、@AfterThrowing、@Around」があります。それぞれのアノテーションで実現したAOPクラス内で、対象となるメソッドの引数を取得することも可能です。

springでは、「@Before、@After、@AfterThrowing、@Around」を使って、メソッドの前後、例外時に処理を加えることが可能です。
もちろん処理を加えるときに、対象メソッドの引数を取得することも可能です。
今回は、AOPクラス内で「JoinPoint」を使って対象メソッドの引数を取得する方法を解説します。
続きを読む

Aspectjの@Aroundを使ってメソッド前後に処理を入れる

spring

@Aroundを使って、メソッド前後に処理を織り込む(インジェクション)方法を解説します。@Aroundでは、@Before、@Afterとは違って、AOPクラス内で対象のメソッドを実行します。

設定方法は、「@Before、@After」はほぼ同等なので使い方に迷ってしまうことはないと思います。
どのような動作をするのか?というところだけをおさえておけば問題ありません。
続きを読む

Aspectjの@AfterThrowingを使って例外発生時に処理を入れる

spring

前回aspectjのbefore、afterを使ったサンプルソースでは、「@Before、@After」を使って、メソッド前後に処理を織り込む(インジェクション)方法を解説しました。

@AfterThrowingは、メソッド前後に必ず動く、「@Before、@After」と違って、例外発生時のみ動作します。

今回は@AfterThrowingを使って、特定クラスの例外発生時に処理を織り込む(インジェクション)する方法を解説します。
続きを読む

文字列を正規表現で検索する

java

文字列を正規表現で検索するために「java.util.regex」パッケージを使います。
「java.util.regex」パッケージのユーティリティは、正規表現だけではなく、文字列の部分一致検索・完全一致検索も行うことが出来るユーティリティです。
続きを読む

文字列を部分検索・完全一致検索する

java

文字列検索をするために「java.util.regex」パッケージを使います。
「java.util.regex」パッケージのユーティリティは正規表現も使えるので、単純な文字列比較(String.equal)より「java.util.regex」パッケージを使った文字列検索をおすすめします。
続きを読む

Aspectjの@Before、@Afterを使ってメソッド前後にログ出力を入れる

spring

springにはAOPの概念があり、ビジネスロジックの本質とは異なった処理を別クラスに定義して、ビジネスロジックの実行前後などで共通処理として織り込む(インジェクションする)ことが出来ます。

@Before、@Afterは、springで使われる頻度の高いインジェクト方式です。
今回は基本的な@Before、@Afterの使い方を紹介していきます。
続きを読む