2008年09月30日

あこがれの渡し船

尾道から渡し船で向島に渡った時に、振り向いて撮りました。写真中央にあるのが渡し船です。スクーターの人が乗っています。渡し賃は100円ぐらいだったかな?大林作品を思い出しながら乗りました。

20080930.jpg
posted by 台北猫々 at 21:44| Comment(0) | TrackBack(0) | 尾道

2008年09月27日

尾道風景

千光寺に至る道、「猫の小路」です。
猫の看板は、招き猫博物館のものです。

20080927.JPG
posted by 台北猫々 at 07:15| Comment(0) | TrackBack(0) | 尾道

2008年09月26日

尾道風景

銀猫堂・・・
何のお店かは、外からは全く分からずでした。

入る勇気はありませんでした。。。"/(;-_-)

20080926.JPG
posted by 台北猫々 at 20:25| Comment(0) | TrackBack(0) | 尾道

2008年09月25日

尾道風景

千光寺まで、徒歩で登っている途中で振り向いて撮りました。尾道らしい風景です。

20080925_1.JPG
posted by 台北猫々 at 19:19| Comment(0) | TrackBack(0) | 尾道

2008年09月24日

尾道風景

千光寺公園の展望台より
手前が尾道、奥が向島です。

20080924_1.JPG
posted by 台北猫々 at 22:17| Comment(0) | TrackBack(0) | 尾道

2008年09月23日

遅い夏休み

を取って、広島の尾道に行ってきました。
大林監督の作品の世界にふれることができて、満足しました。

渡船に自転車で乗って、対岸に行くのを一度やってみたかったのですが、実現しました。\(^ ^)/
posted by 台北猫々 at 23:15| Comment(0) | TrackBack(0) | 日記

2008年09月21日

メイクミラクルの再現?

あまり期待すると、裏切られた時のダメージが大きいことは、この前のオリンピックの野球で学んだので、半歩引き気味ぐらいで見ていたのですが、ついに並びました!
O(≧∇≦)O イエイ!!

7月に13ゲーム差だったのを跳ね返してしまいました。
かつてのメイクミラクルを超える奇跡を見せてくれるのでしょうか?

でも、あまり期待するのはやめとこう。。。

posted by 台北猫々 at 22:23| Comment(0) | TrackBack(0) | 日記

2008年09月20日

今日は久しぶりに

上京しました。東京から離れて数年経ちましたが、年月が過ぎるほどに人ごみが苦手になっていきます。なんか以前は、どのように人ごみの中を歩いていたか分からなくなるものですね猫
posted by 台北猫々 at 23:40| Comment(0) | TrackBack(0) | 日記

2008年09月19日

ことの葉ひらひら その27

「今日舞台に立てなかったんじゃない。立たなかったの。確かにここは舞台裏、華やかなライトもあたってないし。暗い。だけどここからは世界の全て見えるわ。その喜びも悲しみも。人の心の全てが。だから、ここが私の舞台。」

〜北尾美加〜


人生劇場は舞台裏も含めて、それも舞台なのです。どこを居場所にするかは、その人次第猫
posted by 台北猫々 at 20:28| Comment(0) | TrackBack(0) | ことの葉

2008年09月18日

ウロボロス

風呂から出てバスタオルを手に取ったら、その影から「北海道には住めない黒い妖精」が現われました。

早く退治しなければ、見失いたくない、と思うのですが、
いかんせん、今の私は無防備な状態です。こんな状態で戦いを挑んで、もし逆に向かってこられたら返り討ちに合いそうです。

とりあえず、体を拭いてしまおうと思うのですが、「北海道には住めない黒い妖精」が潜んでいたバスタオルで拭くのは、なんか抵抗があります。しかし、早く拭かなければ無防備なままです。

という精神的にウロボロス状態に誘導されてしまいました。
そんな夕べでした。

posted by 台北猫々 at 21:54| Comment(0) | TrackBack(0) | 日記

2008年09月17日

SAStrutsによるWebアプリケーションスーパーサンプル

Struts開発時にとても参考になる「StrutsによるWebアプリケーションスーパーサンプル第2版」(ソフトバンククリエイティブ)のサンプルをSAStrutsで開発したらどうなるか、やってみようと思います。

ということで、コードなにがしに投稿し始めましたが、これは相当パワーが必要であることがすぐにわかりました。。。

posted by 台北猫々 at 21:50| Comment(2) | TrackBack(1) | 技術メモ(SAStruts)

2008年09月16日

正規表現で、渡された文字列に非ASCII文字があるか?のチェック(Java編)


/**
* 文字列にASCII文字でない文字が存在するか?
* 参考:
* http://www.unicode.org/charts/PDF/U0000.pdf
*/

private static final String P_NOT_ASCII = ".*[^\\u0020-\\u007E].*";


/**
* 半角ASCIIでない文字があるか
* @param str チェック対象文字列
* @return 半角ASCIIでない文字がある:true ない:false
*/

public static boolean existNotAscii(String str) {
return str.matches(P_NOT_ASCII);
}

posted by 台北猫々 at 21:51| Comment(0) | TrackBack(0) | 技術メモ(Java)

2008年09月14日

複数Employee一括登録フォームのバリデーション(SAStruts+S2JDBC)

コードなにがしに、「複数Employee一括登録フォームのバリデーション」を追加しました。

概要はこんな感じなのですが、
blk_add_vali_1.jpg

具体的には、以下のような複数レコードの一括登録機能で、入力値エラーが複数のレコードにある場合に、
blk_add_vali_2.jpg

↓のようにそれぞれのテキストボックスを色つきにします。
blk_add_vali_3.jpg
posted by 台北猫々 at 20:39| Comment(0) | TrackBack(0) | 技術メモ(SAStruts)

2008年09月13日

今日は健康診断に行ってきました。

が、8時40分の受付開始時刻に行って、終了したのは12時ぐらい。。。実際に検診していた時間は10分くらいでしょうか?

久しぶりに病院に行きましたが、ものすごい待ち時間なんですね。たまにならいいですが、通院するようなことになると相当大変なことになりますね。(^^;
posted by 台北猫々 at 18:09| Comment(0) | TrackBack(0) | 日記

2008年09月12日

今更ですが、Google Chrom

GoogleのChromの評判をあちらこちらで見てみると、速いという感想もあり、特に体感できるような速度の変化は無いという感想もありですね(さすがに遅いというのはないようですが)。

私的には体感で(遅)IE6<IE7<FireFox3<Opera9.52<Chrom(速)なのですが、見るサイトにもよるのでしょうね。

Chromの起動や表示の軽妙な感じは結構気に入っています。仕事中に色々調べものをするのは、Chromが便利良いですね。検索ワード入力フォームが、アドレス入力フォーム(というのかな?)と一体化になっているのが使いやすいです。入力フォーム幅の広いことが、検索しやすい印象を与えているのかもしれません。

ただ、現在開発中のWebサイトのページがChromでだけ崩れてしまうことは、ちょっと勘弁して欲しいと思う今日このごろです。
(+o+)
まあβ版だからしょうがないかなと、自分を納得させています。
(^^;
posted by 台北猫々 at 22:37| Comment(0) | TrackBack(0) | 日記

2008年09月11日

ことの葉ひらひら その26

「本来難しいことを簡単に言っても、難しいものは難しいのです」

プログラミングも本来は簡単なものではありません。プログラミングを「簡単」というのは、難しいけれど重要なことを誤魔化しているだけ(分かった気にさせてるだけ)なんでしょうね。

posted by 台北猫々 at 21:01| Comment(0) | TrackBack(0) | ことの葉

2008年09月10日

正規表現で、渡された文字列に非ASCII文字があるか?のチェック(Python編)


#渡された文字列に非ASCII文字があるか?
#Pythonの正規表現を使用して、渡された文字列に非ASCII文字があるかチェックします。(UTF-8向け)
#Python 正規表現 非ASCII文字 UTF8
regexp = re.compile(r'[^\x20-\x7E]')
result = regexp.search(" abcdefghijklmnopqrstuvwxyz!#$&'()[]@")
if result != None :
print(u"文字列に非ASCII文字が存在する".encode('shift_jis'))
else :
print(u"文字列に非ASCII文字が存在しない".encode('shift_jis'))
#↓
#"文字列にASCII文字でない文字が存在しない"

posted by 台北猫々 at 22:48| Comment(0) | TrackBack(0) | 技術メモ(Python)

2008年09月09日

MySQLからS2JDBC-Genで各種クラスを自動生成しましょう(Eclipse編)

コードなにがしにもアップしていますが、こちらにもアップしちゃいます。Eclipse+Dolteng+S2JDBC-Genは、SAStrutsでの開発を強力にサポートします。


目次


●序
●造
1.DoltengプラグインでEclipseプロジェクト"s2jdbc-gen-examples"を作成します。
2.MySQL Connector/J (JDBCドライバ)を配置
3.S2JDBC用のDICONファイルを作成
 s2jdbc.dicon
 jdbc.dicon
4.S2JDBC-Gen実行
●考
●おまけ的




今回はDolteng+S2JDBC-Genで、各種クラス(Entity, Service, Condition, Test)ソースの自動生成を試してみます。

ここでは、EclipseのAnt機能を使用します。

データベースはMySQLのインストール後の設定で構築したMySQL環境を使用します。

エンティティクラスの生成も併せて参考にして下さい。

前提:Doltengプラグインは、バージョン0.32.0以上であること。当バージョン未満では、S2JDBC-Gen関係のファイルが生成されません。




1.DoltengプラグインでEclipseプロジェクト"s2jdbc-gen-examples"を作成します。


設定項目を以下のようにして作成しましょう。
gen_eclipse1_1.jpg

この時点で、S2JDBC-GenおよびS2JDBC-Genが使用するJarファイルが"s2jdbc-gen-examples\lib"フォルダにコピーされ、また、S2JDBC-Gen用のAntビルドファイルが"s2jdbc-gen-examples\s2jdbc-gen-build.xml"としてコピーされます。

2.MySQL Connector/J (JDBCドライバ)を配置


S2JDBC-GenがEntityクラスを自動生成する際には、MySQLデータベースに接続してカタログ情報を取得します。なので、実行時にはJDBCドライバが必要になります。

環境・必要なモジュール準備でダウンロードした"mysql-connector-java-5.1.6-bin.jar"を
"s2jdbc-gen-examples\src\main\webapp\WEB-INF\lib"フォルダにコピーします。


チェック!1.、2.を行うと以下のようなフォルダ/ファイル配置になります。
gen_eclipse1_2.jpg

3.S2JDBC用のDICONファイルを作成


"s2jdbc-gen-examples\src\main\resources\s2jdbc.dicon"を以下の内容に変更します。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE components PUBLIC "-//SEASAR//DTD S2Container 2.4//EN"

"http://www.seasar.org/dtd/components24.dtd">
<components>
<include path="jdbc.dicon"/>
<include path="s2jdbc-internal.dicon"/>
<component name="jdbcManager" class="org.seasar.extension.jdbc.manager.JdbcManagerImpl">

<property name="maxRows">0</property>
<property name="fetchSize">0</property>
<property name="queryTimeout">0</property>

<property name="dialect">mysqlDialect</property>
</component>
</components>


"s2jdbc-gen-examples\src\main\resources\jdbc.dicon"を以下の内容に変更します。

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE components PUBLIC "-//SEASAR//DTD S2Container 2.4//EN"
"http://www.seasar.org/dtd/components24.dtd">
<components namespace="jdbc">
<include path="jta.dicon"/>
<component name="xaDataSource"

class="org.seasar.extension.dbcp.impl.XADataSourceImpl">
<property name="driverClassName">
"com.mysql.jdbc.Driver"
</property>
<property name="URL">

"jdbc:mysql://localhost:3306/sastruts"
</property>
<property name="user">"sastruts"</property>
<property name="password">"sastruts"</property>

</component>

<component name="connectionPool"
class="org.seasar.extension.dbcp.impl.ConnectionPoolImpl">
<property name="timeout">600</property>

<property name="maxPoolSize">10</property>
<property name="allowLocalTx">true</property>
<destroyMethod name="close"/>

</component>



<component name="DataSource"
class="org.seasar.extension.dbcp.impl.DataSourceImpl"
/>
</components>



4.S2JDBC-Gen実行


S2JDBC-Genマニュアル:Antタスクの実行を参考にして以下のように作業を進めます。

"s2jdbc-gen-examples\s2jdbc-gen-build.xml"ファイルをEclipseのAntエディタで開き、Eclipseメニューから「Run」-「外部ツール」-「外部ツールダイアログを開く」を選択します。外部ツールダイアログが開きます。

gen_eclipse1_3.jpg

左側のメニューにある「Antビルド」という項目をダブルクリックすると、s2jdbc-gen-build.xmlに対する起動設定が新規作成されます。その後、引数に"gen-entity"を指定します。


※できない場合は、手動で新規作成しましょう。

gen_eclipse1_4.jpg

実行ボタンをクリックしましょう。ずらずらとコンソールに生成処理のログを出力されます。最終的に、

〜〜〜〜
[gen-service] DEBUG 2008-09-09 18:48:06,875 [main] S2Containerを作成しました。path=jdbc.dicon
[gen-service] DEBUG 2008-09-09 18:48:06,875 [main] S2Containerを作成します。path=s2jdbc-internal.dicon
[gen-service] DEBUG 2008-09-09 18:48:06,875 [main] S2Containerを作成します。path=convention.dicon
[gen-service] DEBUG 2008-09-09 18:48:06,890 [main] S2Containerを作成しました。path=convention.dicon
[gen-service] DEBUG 2008-09-09 18:48:06,890 [main] S2Containerを作成しました。path=s2jdbc-internal.dicon
[gen-service] DEBUG 2008-09-09 18:48:06,921 [main] S2Containerを作成しました。path=s2jdbc.dicon
[gen-service] INFO 2008-09-09 18:48:07,031 [main] Running on [ENV]ut, [DEPLOY MODE]Warm Deploy
[gen-service] DEBUG 2008-09-09 18:48:07,125 [main] コマンド(org.seasar.extension.jdbc.gen.internal.command.GenerateServiceCommand)を実行しました。
BUILD SUCCESSFUL
Total time: 7 seconds

と表示されればOKです。

生成したファイルは、Eclipseのパッケージエクスプローラービューにすぐに表示されませんので、パッケージエクスプローラービュー中のプロジェクトフォルダを左クリックしてF5キー(更新)を押し、ファイルシステムと同期させましょう。そうすると、パッケージエクスプローラービューに生成したファイルが表示されます。

以下のように各種クラス(Entity, Service, Condition, Test)のソースが生成されます。
gen_eclipse1_5.jpg


う〜ん。これはハイパー簡単ですね。さらにDoltengでここでの手順を自動的に出来てしまうと、なお良いというのは贅沢でしょうか?

おまけ的


今回、初めてAntツールを使っているわけなのですが、こんな便利なコマンドがあるのですね。ビルドファイル内に記述すると、環境変数のリストがコンソールに表示されます。
<echoproperties/>

posted by 台北猫々 at 19:11| Comment(0) | TrackBack(0) | 技術メモ(SAStruts)

2008年09月08日

渡された文字列に非ASCII文字があるか?(Perl編)


#渡された文字列に非ASCII文字があるか?
#Perlの正規表現を使用して、渡された文字列に非ASCII文字があるかチェックします。(UTF-8向け)
#Perl 正規表現 非ASCII文字 UTF8
$str = " abcdefghijklmnopqrstuvwxyz!#$&'()[]@";
if ( $str =~ /[^\x20-\x7E]/ ) {
print encode('shift-jis', decode('utf-8', "文字列にASCII文字でない文字が存在する\n"));
} else {
print encode('shift-jis', decode('utf-8', "文字列にASCII文字でない文字が存在しない\n"));
}
#↓
#"文字列にASCII文字でない文字が存在しない"

posted by 台北猫々 at 23:13| Comment(0) | TrackBack(0) | 技術メモ(Perl)

2008年09月07日

後光

雨上がりの午後でした。
IMG_0475.JPG
posted by 台北猫々 at 21:02| Comment(0) | TrackBack(0) | 今日フォト