タグ

AOPに関するpoad1010のブックマーク (4)

  • Spring+HibernateEntityManager(宣言的トランザクション編) - Be an Idealistic Realist

    今回は、前回のサンプルを、プログラム的なランザクションから、宣言的なトランザクションに変更してみます。 主な変更点 aspectjweaverの追加。 aspectj の AOP 文法を利用するため、aspectjweaver のライブラリを追加。追加しないと、以下のような例外が出ます。 java.lang.ClassNotFoundException: org.aspectj.weaver.reflect.ReflectionWorld$ReflectionWorldException JpaTransactionManager の使用 JpaTransactionManager を使用すると、JPA トランザクションを 同一 DataSource のJDBC アクセスコードに公開できます。 AOPを用いた宣言的トランザクション設定の追加 指定された Advice に従い、必要な箇所でト

    Spring+HibernateEntityManager(宣言的トランザクション編) - Be an Idealistic Realist
  • BytemanによるJava黒魔術 - nekop's blog

    クリスマスも近いですね。さて、クリスマスといえばどういうわけか黒魔術への需要が一気に高まる時期のようですので、Java Advent Calendar -ja 2010の12月20日はJavaの黒魔術をお送りします。昨日はid:celitanでした。 今日紹介する黒魔術はバイトコードインジェクションツールであるBytemanです。 この前ですね、お仕事で「HTTPレスポンスのヘッダが勝手に想定外のものに書き換わる」という不思議現象の相談を受けたんですね。Servletの中ではsetHeader("Foo", "bar")ってしてるのに、実際のレスポンスは"Foo: hoge"とか返ってる。アプリのJavaソース調べてもそんなことしてなさそうだし、Tomcatのソース見てもsetHeader()呼び出しでは何のログも出さないっぽいのでログを有効にしても原因がわからなさそう。なんだこれはとか思

    BytemanによるJava黒魔術 - nekop's blog
  • Javaで末尾再帰最適化をする。(?) - terazzoの日記

    お題: http://d.hatena.ne.jp/wasabiz/20110118/1295335821 Rubyで末尾再帰最適化をする。 - Homoiconic Days Javaなどの言語では、通常、再帰を使ったプログラムは、呼び出しが深くなるといつかはStack Overflowで実行時エラーになってしまう。それに対して、Schemeなどの関数型言語では、自動で末尾再帰最適化というのをおこなって、Stack Overflowがおこらないようにしているものが多い。(末尾再帰最適化についてはhttp://practical-scheme.net/docs/cont-j.htmlの「末尾再帰と継続」の解説が分かりやすい。) PythonRubyは自動では末尾再帰最適化はおこなっていないが、言語にあるしくみを利用して末尾再帰最適化を後付けすることが出来るらしい。内容をみるとCPS化して

    Javaで末尾再帰最適化をする。(?) - terazzoの日記
  • S2DaoでXMLレスなO/Rマッピングを行う

    はじめに Dao(Data Access Object)とは、業務システム開発でよく利用されるデータベースアクセスパターンです。稿では、このDaoの実装に有効な「S2Dao」というO/Rマッピングツールについて紹介します。 対象読者 Javaにて開発を行っていて、データベースプログラミングやO/Rマッピングに興味をある方を対象としています。 必要な環境 このサンプルはJ2SE Development Kit 5.0 Update 6と、オープンソースデータベース「HSQLDB」のバージョン1.7.3にて動作確認をしています。 S2Daoの最新版は、Seasarファウンデーションのホームページからダウンロードすることができます。なお、稿のサンプルソースには、S2Daoのバージョン1.0.29とS2Daoが必要とするライブラリを同梱しています。 S2Daoの特徴 S2Daoとは、Seasa

    S2DaoでXMLレスなO/Rマッピングを行う
  • 1