タグ

FrameworkとDBに関するp_chopinのブックマーク (10)

  • DBIx::Class + Catalyst::View::JSON - ヒルズで働く@robarioの技ログ

    InflateColumnを使っているときに問題があったため、修正版を新しいエントリに起こしました。 修正版:DBIx::Class + Catalyst::View::JSON(2) - ヒルズで働く@robarioの技ログ 昔書いたメモが出てきたので転載。 DBIC::ResultSet#findやDBIC::ResultSet#searchしたものをそのままJSONにしたいじゃないですか。 でもCatalyst::View::JSONにそのまま渡すとCatalystが落ちるんですよ。 なので適当に展開してくれるサブルーチンを作って使っています。 Catalyst::View::JSON以外でも使うので、アプリケーションクラスに置いています。 ### lib/MyApp.pm sub expand_dbic { my ( $c, $obj ) = @_; if ( !Scalar::U

    DBIx::Class + Catalyst::View::JSON - ヒルズで働く@robarioの技ログ
  • たけまる / Google App Engine のデータストアは Bigtable をどのように使っているのか

    _ Google App Engine のデータストアは Bigtable をどのように使っているのか [gae][bigtable] Google App Engine (GAE) が発表されてから2週間ほど経ちます.GFS や Bigtable という名前だけはよく耳にするようになりましたが,Bigtable と GAE のギャップについては話題になっていないように思います. Bigtable は multi dimensional sorted table と言われるように, primary key (row key) でソートされたテーブルでしかありません.つま り,GAE のデータストアが提供するような多様な検索機能は持たないわけ です.というわけで,GAE のデータストアを実現するために,Bigtable がどのように使われているのかを考えてみました. # この件について,もし

  • DBIC::Schema::Loaderのカスタマイズと言うネタでプレゼンするはずだった件 - 日向夏特殊応援部隊

    話してないけど、資料はあるので公開しまっする。 Customization of DBIC::Schema::Loader 概要 開発中にスキーマに変更が発生して、make_schema_at()を何度も叩く際に困ることと、Schema::Loaderで比較的意図した通りにSchema, Tableクラスを生成する為に、こんな風にするといいおって内容です。 せっかちな人向け こんな感じ。 内容の解説はプレゼン資料を見てくだしあ。 #!/usr/bin/perl use strict; use warnings; use FindBin; use File::Spec; use lib ( File::Spec->catfile( $FindBin::Bin, qw/.. lib/ ), File::Spec->catfile( $FindBin::Bin, qw/.. schema/ )

    DBIC::Schema::Loaderのカスタマイズと言うネタでプレゼンするはずだった件 - 日向夏特殊応援部隊
  • Yahooやmixi、はてなのように、 ・ユーザー数が1000万人を超え(超えそう)る。…

    Yahooやmixi、はてなのように、 ・ユーザー数が1000万人を超え(超えそう)る。 ・アクセスが膨大 なサービスの場合、そのシステムはどのような構成となっているのでしょうか?Oracle+Java? 実際の構成や、使用ライブラリ、開発の勘所、FPなど、詳細がわかれば、教えてください。 一般的な話よりも、実際のところが知りたいです。

    p_chopin
    p_chopin 2006/01/25
    必読.はてなのシステム自動アップデートの方法も合わせて,早く知識にすること>自分
  • HIBERNATE覚書き [それはBooks]

    Hibernate は O/R マッピングツールと呼ばれる、リレーショナルデータベースとオブジェクトモデルとの間を埋めるフレームワークです。 リレーショナルデータベースとオブジェクトモデルとのミスマッチには、下記のようなものがあります。オブジェクトの粒度に関する問題サブタイプ(継承)に関する問題オブジェクトの同一性(識別子)に関する問題オブジェクト同士の関連に関する問題オブジェクトの検索に関する問題 Hibernateは、このようなミスマッチを解決する方法を提供します。 リレーショナルシステムにおけるテーブル形式のデータ表現は、オブジェクト指向のJavaアプリケーションで使用されているオブジェクトのネットワークとは根的に異なっている。この違いが、いわゆるオブジェクト/リレーショナルパラダイムのミスマッチだ。『Hibernate イン アクション』はじめに より Hibernateのアーキ

    p_chopin
    p_chopin 2006/01/23
    Hibernate本を中心としたまとめ.
  • c3p0-v0.10.0 - JDBC3 Connection and Statement Pooling - Documentation

    by Steve Waldman <swaldman@mchange.com> © 2024 Machinery For Change, LLC This software is made available for use, modification, and redistribution, under the terms of the Lesser GNU Public License, v.2.1 (LGPL) or the Eclipse Public License, v.1.0 (EPL), at your option. You should have received copies of both licenses with this distribution. You may also opt to license this software under a more r

    p_chopin
    p_chopin 2005/12/12
    C3P0のマニュアル
  • Hibernate Community • View topic - APPARENT DEADLOCK!!

    p_chopin
    p_chopin 2005/12/02
    c3p0使ってて「APPARENT DEADLOCK!!」が出るなら,c3p0を最新版にし,hibernate.c3p0.max_statementsを「0」にするでOK?
  • hibernateで行ロック | スパムとか

    hibernateで行ロックを行う方法のメモ やりたいこと:更新対象のレコードをロックして、更新する。 すぐに思いつくのが、Session#lock(Object, LockMode)。 Objectはhibernateのマッピングオブジェクトな訳だけれど、Sessionに存在しない(newされたオブジェクト)を使用すると、org.hibernate.TransientObjectExceptionが発生する。 DAO#get(key, session)で取得したオブジェクトを使用すると、次のようなSQLが投げられる。 select PK from TABLE where PK =? for update getしてからlockをするまでの間に、別トランザクションで直にレコードを更新をすることができるので、ロックのかけ方がおかしい(もう一度getすれば良さそうだが)。 で、ses

    p_chopin
    p_chopin 2005/11/29
    session.get(マッピングクラス.class, pk, LockMode.UPGRADE)で「SELECT 〜 for update」
  • Struts による五目並べ対戦システム(Hibernate,SOAP,AXIS版)~Hibernate裏口入門!(1)

    「裏口入門!」と名付けるからには、要するに既存のデータベースからデータ定義を引きずり出して、それを元に Java コードを自動生成してやろう、というタクラミなのである。このためのツールが Middlegen であり、具体的なデータベース(やったのは MySQL)から、すでに作成されている gomoku.player(五目並べのユーザ情報)の定義を引き出して、これを Hibernate で使う DAO まで作ってやろう、ということなのである。 Hibernate は Torque と同じようないわゆる「O/Rマッピングツール」である。つまり、データベースの各行が具体的なインスタンスとなるようなクラスを作り、JavaBean のセッタを呼べば「透過的に」データベースにデータが格納され...というようなことを実現するライブラリである。Torque とどう違うか、というと、まあこんなあたりだ。 T

    p_chopin
    p_chopin 2005/10/24
    middgenで生成しようとすると,java.lang.ClassNotFoundException: middlegen.DontCloseLog4JLogSystemが発生.なぜ??
  • Life with Cygwin

    沖ソフトウェア株式会社は、沖通信システム株式会社および株式会社沖インフォテックと平成22年10月1日をもって合併いたしました。新会社名は、株式会社OKIソフトウェアとなります。3社が行っております事業は新会社にて従来通り継続いたします。

    p_chopin
    p_chopin 2005/10/19
    シンプルな使い方の説明
  • 1