ひがやすを技術ブログ

電通国際情報サービスのプログラマ

2004-08-01から1ヶ月間の記事一覧

開発開始

FlexのAMFGatewayは、もちろんS2を認識しない。 S2OpenAMFはS2を認識するが、AS2とJavaのクラスの相互変換ができない。 『助けてくださぁぁぁぁぁい!!!!!』 Javaからデータを読み込むサンプルだと、S2OpenAMFで問題ないので、今は、S2OpenAMFを使ってい…

ソフトウェアパターン勉強会

etc

DIコンテナとデザインパターンというお題目で話す予定(9/17)です。詳しくは、大田さんからアナウンスがあると思います。羽生田さんと競演らしい。 『時間をくださぁぁぁぁぁい!!!!!』

層をまたがるデータのやり取り

プレゼンテーション層と業務ロジック層のデータのやり取りは、EntityやDTOを使います。DTOを使うのは主に次のような場合です。 検索条件の入力データなど、永続化されないデータ。 関連のない複数のエンティティのやり取り。 1の場合、文字列、数値、日付な…

プラグインの認識

以前から、どうも一部プラグインを認識してくれていなかった問題が、 ここ(http://hp.vector.co.jp/authors/VA000137/nobody.html)の参照にてやっと解決!! これでやっと kijimuna が動きました。 私の環境では、configuration\org.eclipse.osgi\.bundled…

山田優を語る会の感想

etc

ないないのやつ最高。 だって、あんた、曙出てないですから。残念!!! 見てない人にはなぞめき系ですね。すみません。

山田優を語る会のねた

etc

石原さとみ、大河「義経」で静御前。あの年代では、トップにおどりでそう。上戸彩失速か。 酒井彩名、デビルマンのヒロイン。 スクールウォーズ映画化。SAYAKA出演。どうでもいいけど。 香里奈。ナースマンに出演。香里奈が一発で変換できることに少し驚く。…

1:Nマッピング, join句

次のバージョンの話ではないのですが、1:Nマッピングを追加します。lazy-loadingではなく、一回のフェッチで取得します。lazy-loadingしたければ、個別にDaoを呼び出せば良いと考えています。 public class Department { public static final String employe…

Singletonの怖さ

Singletonはテストと相性が悪い。なぜなら、テストメソッド間で状態を維持してしまうからだ。このようにいってきた私自身が、Singletonにはまってしまいました。 無念だ。心より恥じる。 S2Daoのテストをしているときに、ロールバックが効かない場合がありま…

いまそこにある下半身危機

etc

今年は三十路突入な節目だったのですが、一昨年辺りから一足早く、そいつはやってきました。中年の危機、そうビール腹というやつです。 あの手のサプリメントは、結局気のせいです。残念!!! サプリメント大好きだった私が言うのでたぶん間違いない。効果…

ThreadLocalを使いたい場合

コンポーネントから、HttpServletRequestなどにアクセスしたい場合もあるでしょう。そのような場合は、ThreadLocalを使って管理するのが一般的です。 しかし、このような管理クラスを作る場合に、シングルトンやstatic変数を使ってはいけません。グローバル…

キーワード

はてなを利用のみなさまに、できれば、ということでのお願いなのですが、Seasar関係の話題の場合は、SeasarもしくはSeasar2、くーす関係の話題の場合は、くーすと記述してもらえると、はてなのキーワードから私が追っかけることができるので、何かあればフォ…

画面遷移図

以前、画面遷移図にレイアウト情報を貼り付けると、ユーザの興味がレイアウトにいってしまい、画面遷移そのもののレビューができないということを書いたのですが、実際に試すと、画面遷移のレビューは、問題なく終わるのですが、結局、画面遷移そのものは理…

S2AMF

FlexでJavaBeansとデータをやり取りする場合は、つぎのように_remoteClassプロパティでJavaのクラス名を指定します。このとき、Flexの完全限定クラス名とJava側の完全限定クラス名をあわせる必要があります。 class examples.flex.Employee { var _remoteCla…

くーすに関与していただいた人

くーす本の巻末にくーすをまとめるときに、関与していただいた方のハンドル名をクレジットしたいと思ってます。 トライアルでさまざなな意見交換をさせていただいたid:marrowさん。 Wikiにまとめていただいたid:tpircsさん。 よろしいでしょうか。

プレゼン

今日は、某大手旅行会社のダウンサイジング案件のプレゼン。 Flex + S2のリッチクライアントソリューションです。 出てくる人たちは、技術にあまり精通していない偉い人たちなので、 アピールのポイントを間違えないようにしなければなりません。 10:30開始…

QUERYアノテーション

CRITERIAアノテーションは、QUERYアノテーションという言い方に変わります。ORDER BYもQUERYアノテーションに記述することができます。そのため、ORDERアノテーションがサポート外になるので、注意してください。

分散システム

システムをWeb層(WebServer、 ServletContainer)、中間層(業務ロジック層、データアクセス層)、リソース層(データベース)に分けて考えます。 中間層をWeb層から切り離しておけば、中間層の負荷がふえたとき、クラスタリングなどで負荷分散することにより、ス…

OracleでSELECT文を自動生成したときのバグ

s2dao1.0.4を入れてみる。 すると、selectのsql自動更新処理のとこで例外発生。 一個前のバージョンと比較してみると、 org.seasar.dao.dbms.Oracleの48行目のwhereBuf.setLength(whereBuf.length() - 5); がループの外にでている。 この箇所を修正したら正…

WEB+DB Press vol22

etc

id:dotたんの記事を探してみる。 dotたん、dotたん、dotたん... みつからない。 そういえば、本名聞いたことなかった。orz 追記:そういえば、財前オフのときに名刺もらったんだった。 はい、どの記事か分かりました。

新機能

:変数とか$変数とかは、ややこしいかなと思い始めてきました。 JDBC標準の?だけでも良いかも、するとCriteriaアノテーションを使うときは、ARGSアノテーションが不要になります。 public static final String getEmployees_CRITERIA = "BETWEEN sal ? AND ?"…

Criteriaアノテーション2

LIKEなどで%等を使いたい場合には、:変数名(バインド変数)ではなく、 $変数名を使って、文字列としてCriteriaに埋め込みます。 public static String getEmployee_ARGS = "ename"; public static String getEmployee_CRITERIA = "BETWEEN ename LIKE '%$enam…

Criteriaアノテーション

定型的なSQL文とちょっとだけ違う場合に、SQL文全体を記述するのは面倒です。そのようなときに役に立つのが、Criteriaアノテーションです。 例えば、引数で指定した上限と下限の間の給料をもらっている従業員の一覧を取得する場合、次のようにします。 publi…

:変数名と$変数名の違い

:変数名は、バインド変数になります。 例えば、ename = :enameと記述すると、 SQLは、ename = ?になります。 $変数名は、SQLに直接文字列を埋め込みます。 例えば、ename LIKE '%$ename%'、enameの値がhogeだった場合、 SQLは、ename LIKE '%hoge%'になりま…

モデリングの幻想

モデリングの本の中で、本質的なモデルを抽出すると 仕様変更や機能追加に強くなります。 本質的なモデルはドメインを超えて再利用できます。 なんてことが書いてあるのをよく見かけます。 そこで私は疑問に思うのです。 これが本質的なモデルってどうして分…

デザインパターン

くーす本の中で、DIContainerあるいはAOPの出現によって、 GoFのデザインパターンがどのように実現されるのか、 あるいはなくなるのか、まとめたいと思います。

DIとStrategyパターン

Strategyパターンは、アルゴリズムをカプセル化し、 交換可能にするものですが、それをDIを使って実現するには、 どうしたら良いのでしょうか。 Strategyが静的なものなら、普通にDIするだけです。 問題は、Strategyがデータに応じて動的に変わる場合です。 …

Dependency Injectionパターン

Dependency Injectionパターンとは、 コンポーネント同士は、インターフェースを通じてのみ会話するようにする。 実装クラスに依存してはいけない。 コンポーネントの生成や、依存関係の解決は、コンテナがおこなう。 依存関係の解決とは、setterメソッドや…

はぶ+デブPress

etc

『はぶ+DB Press Vol.22』 いや、それだけ。

くーす本

企画が通ったので、正式に書き始めます。 たぶん、これまでにはないスタイルになると思います。 単にくーすの話をして終わりではありません。 どういう思考パターンで分析するのか、 設計書を書くときにどのインプットデータに基づいて記述するのか、 そう、…

S2.0.16 S2Dao1.0.4リリース

S2.0.16 修正点 S2UnitでTimestampとDateの比較に失敗するのを修正しました。 S2Dao1.0.4 リリースメモ バッチ更新をサポートしました。 修正点 Oracleで複数の外部結合があったときの不具合を修正しました。 N:1マッピングで、N側の外部キーはなくても処理…