タグ

ブックマーク / torazuka.hatenablog.com (7)

  • Webアプリケーションのサービスクラスとは何か - 虎塚

    「JSP、サーブレット、サービス、DAO、DTOといった構成のアプリケーションにおけるサービスクラスとは何か」、という問いに自分なりの答えを出すのが、今日の宿題です。 自分の解答 ※注意: 以下の文章は言い切り形式で書いていますが、間違っているかもしれません。 ちょろっと調べたのですが、サービスについてそのものズバリの単一な定義を見つけることはできませんでした。なので、いくつかの観点から理解することを試みます。 モデル、ビュー、コントローラにおける「サービス」 アプリケーションをモデル、ビュー、コントローラに分けて見たとき、サービスはモデルに属します。モデルには、データベースアクセスを行うクラスと、システム固有の処理を行うクラスがあります。 サービスは、後者のシステム固有の処理を行うクラスに当たります。 なお、データベースアクセスを行うクラスは、データを保持するクラスと、データベースアクセ

    Webアプリケーションのサービスクラスとは何か - 虎塚
  • 解決編: logbackで同一レベルの複数ログを異なる出力先に出す - 虎塚

    前回の「疑問メモ: logbackで同一レベルの複数ログを異なる出力先に出したい」の解決編、「同一レベルのログを用途に応じて出し分ける」話の続きです。 師匠から参考になる情報をいただき、無事実現できました。ありがとうございます。 JaninoEventEvaluator を活用すればよいのですね。 JaninoEventEvaluator を使うには Janino libraryが追加で必要なので、準備します。 http://docs.codehaus.org/display/JANINO/Download から、最新版(日時点では2.6.1)をダウンロードする zipを解凍して、出てきた janino.jar と commons-compiler.jar をビルドパスに通す 設定ファイル(logback.xml)を次のようにします。 <?xml version="1.0" encodi

    解決編: logbackで同一レベルの複数ログを異なる出力先に出す - 虎塚
  • 疑問メモ: logbackで同一レベルの複数ログを異なる出力先に出したい - 虎塚

    (追記) この記事の解決編はこちら。http://d.hatena.ne.jp/torazuka/20120619/logback logback(http://logback.qos.ch/)でやりたいことができなくて困っているので、ちょっと整理します。 logbackは、Javaのロギングライブラリです。次のログレベルがあります。 TRACE DEBUG INFO WARN ERROR 今回やりたいのは、単に、「同一のログレベルだが、意味や用途の異なる複数のログを、それぞれ別の出力先に出す」というもの。 具体的にいうと、出力先は、ファイルとコンソールの2種類です。 作っているのはCUIのプログラムなので、ユーザがコンソールを目にします。ユーザにとって意味のある情報は、ログレベルINFOにまとめてあります。これらは、コンソールに出したいです。 一方、開発のためのDEBUGレベルのログや、

    疑問メモ: logbackで同一レベルの複数ログを異なる出力先に出したい - 虎塚
  • モヒカンから誠意という名のマサカリが飛んできたときのライフ八苦 - 虎塚

    大原則 誠意が飛んできてぶつかっても卑屈になったり謝ったりする必要はない。誤りをただ直して公開すればよい。 そもそも自分自身の"臆病な自尊心と尊大な羞恥心"と当に闘う気がない人は、いつも何か言い訳をして、どんなコードでも決して公開しないものだ。公開していたということは、これから全力でプギャーされる覚悟があったということ。誠意を投げてきた人と同じ側に行こうとしていたのでは? その勇気を持った自分を貶める必要はない。 (ただ最近は自分をモヒカンと勘違いしてるアレな人もたまにいるので、批判を真に受ける前に、その人のコードを見に行くというライフ八苦もありうる。もちろん人の審美眼が問われるけれども) もらった指摘が正当だと感じた場合、あるいは正当かどうか判別できない場合は、黙ってEvernoteを開き、「yyyyMMdd_{アカウント}からのレビュー」とでも名前をつけたノートに指摘事項を放り

    モヒカンから誠意という名のマサカリが飛んできたときのライフ八苦 - 虎塚
  • 複合主キーを避けるべき理由 - 虎塚

    データベース設計の話をしていて、「連番の主キーは業務上意味のないデータだから、テーブルに持たせるのはムダだ。複合主キーにするべき」という意見を聞く機会がありました。 脊髄反射で「ないわー」と思ったものの、理由を上手く説明できなかったので、改めて考えてみました。 その結果、次のような結論に至りました。 単一の連番カラムによる主キーと、複合カラムによる主キーとで迷ったら 実装をシンプルにし、業務変更の影響範囲を小さくするために、複合主キーを避ける というわけで、調べたことや考えたことをメモしておきます。# 間違っている部分があれば、教えていただけると嬉しいです。 (2011/07/25 追記)複合主キーとサロゲートキーについては、要件やシステムに依存して多様な判断がありうると思います。にもかかわらず、「避けるべき」というタイトルにしたのは極端でした。申し訳ありません。ご指摘下さった皆さん、あり

    複合主キーを避けるべき理由 - 虎塚
  • KVM用分散ストレージ・Sheepdog - 虎塚

    今さら知ったのでメモ。 Sheepdog is a distributed storage system for KVM. http://www.osrg.net/sheepdog/ Eucalyptus日語情報のwikiに、とっくに概要がありました。(さすが〜) Sheepdog/概要 - Eucalyptus linux4u.jp Wiki Sheepdogは、KVM専用で、動作させるにはマシンが3台から必要だそうです。実装はC。 TODO listにlibvirtサポートが入っていたので、期待かも。 外国のプロダクトかと思ったら、日の方が作られているんですね。

    KVM用分散ストレージ・Sheepdog - 虎塚
  • 世話焼き系IDE:eclipseたん - 虎塚

    経緯(どうしてこうなった) 昨日GAEたんを描いた後、寝て起きたら、id:kompiroさんから素敵なリクエストがきていたですよ。 torazuka ラクガキした。GAEたん。 http://bit.ly/7R3bnT 5:17 AM Jan 1st kompiro MDDが素敵! QT@torazuka ラクガキした。GAEたん。 http://bit.ly/7R3bnT 5:39 AM Jan 1st kompiro @torazuka eclipseたんがほしいです。 5:39 AM Jan 1st torazuka eclipseたん(via @kompiro)は、たぶんとても気がきく娘さん。怒ると赤くなるにちまいない 9:49 AM Jan 1st kompiro すばらすぃ。 QT @torazuka eclipseたん(via @kompiro)は、たぶんとても気がきく娘さん

    世話焼き系IDE:eclipseたん - 虎塚
  • 1