ウィリアムのいたずらの、まちあるき、たべあるき

ウィリアムのいたずらが、街歩き、食べ物、音楽等の個人的見解を主に書くブログです(たま~にコンピューター関係も)

Web2.0のとき、ロングテールとか、盛んに言っていたのに・・・

2008-12-15 18:25:59 | Weblog

 Web2.0のとき、アマゾンの成功は、ロングテールであり、
普通の本屋さんより、品揃えが多く出来る!
 ということを、盛んに言っていたのに、

 そー言う人たちが、今回の、ネット販売で来年6月から薬が買えなくなる
問題で発言しないのはなぜだろう?
 ケンコーコムとかは、取扱商品数 111,535もあるそうなので、薬局に行くより確実に品物があり、とっても便利(ネット販売を禁止されたら、マイナーな(ロングテールに属する)薬が買えるのかどうか・・・)なのに、

 そーいうことを、昔Web2.0で、ロングテールを盛んに推奨していた人たちが、言わないのは、なぜ??


  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

DIのSpring Frameworkで必要なファイルとExcel自動生成のためのメモ

2008-12-15 16:21:12 | Weblog

 じゃ、ついでにSpringで、必要なファイルと、それをExcelで自動生成する場合について




■Springで必要なファイル

 Springは、こんなかんじ

 で呼び出しプログラムから、クラスを利用する形になる。
 なので、必要なファイルは、こんなかんじ

(1)Beanクラス
   属性となる値の宣言と、それらのsetter,getter、
   書きたければ、その他メソッドあり

(2)Bean定義ファイル
   IDと、属性をXMLで




■Excelで自動生成するとすると・・・
 1シート1Beanとして、
   IDとクラスパスとかを入れてもらい、
   下に表の部分を作って、1レコード1属性として、

 BeanクラスのソースとBean定義ファイル(XML)を自動生成

 ってかんじですかね。

 ま、自動生成することもないかなあ・・・この程度なら・・(^^;)



  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

SpringとかSeasar2とか、DIの使い道なんだけど。。。

2008-12-15 14:19:18 | Weblog

さっきの本
Eclipse3ではじめるJavaフレームワーク入門
http://www.amazon.co.jp/gp/product/product-description/4798012564

の記述から考えると、DIは、こんなところで、使えそう??



■開発中

 まず、クラス・メソッドの定義をしたら、プログラミングなんだけど、呼ばれるクラスと呼ぶクラス、同時進行で開発している場合、呼ぶ側は、呼ばれるクラスがとりあえず、ダミーでいいからできていてくれないと、結合できない。逆に、ダミーが出来ていてくれれば、それを使ってテストできる。

 ってことで、

・呼ばれる側、呼ぶ側同時開発中の場合、
  (1)開始時に、ダミーモジュールを作成
      ・呼ぶ側はダミーモジュールを利用
  (2)呼ぶ側がモジュール完成したら、ダミーモジュールとすり替えたい

この作業を、円滑に行える。

・さらに、仕様変更があった場合、
  (1)変更時に、ダミーモジュールを作成、登録してしまう
      ・XMLの設定ファイルでモジュールを指定できるので、
       違うクラス名で作成し、登録することが出来る
  (2)変更後、対応したら・・・
      ・XMLの設定ファイルを書き換えるだけで、モジュールを切り替えられる




■テスト中
・結合テスト中は、ビルドしたたびにモジュールのパスをかえ、
 どのモジュールを選ぶかを設定ファイルで切り替える

・致命的なバグがあって、動かない!となったとき、
 設定ファイルを書き換えるだけで、前のバージョンに戻せる
 (バージョン毎にクラスパスは変えておく)
 それも、クラスごとに前のものに戻す指定が出来る。

・ビルドのたびごとにファイルを作って保管しておくので、
 設定ファイルを書き換えて、過去にさかのぼっていくだけで、
 どこからおかしくなったかが追える




ってなところなのかな・・・




  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

O/RマッピングのHibernateで使うファイルをExcelで自動生成するためのメモ

2008-12-15 10:51:40 | Weblog

Excelにデータベースのテーブルを定義すると、
O/RマッピングのHibernateで使うファイルを自動生成して、
そのファイルを(一部コンパイル)配置すれば、使えるようになるマクロプログラム
を考えよう。



■Hibernateのようす


Eclipse3ではじめるJavaフレームワーク入門 (単行本)
http://www.amazon.co.jp/gp/product/product-description/4798012564


によると、必要なファイルは3種類

1.設定情報ファイル→DB情報を設定(DBに1つ)
   →WEB-INF/classesに配置
2.マッピングクラス→テーブルごとのgetter,setterクラス
   →コンパイルしてWEB-INF/classesに配置
3.マッピングファイル→テーブルごとにテーブルとクラスの対応
   →WEB-INF/classesに配置

もちろん、サーブレットで使うなら、そのサーブレットをweb.xmlに定義することになるけど、
それは、Hibernateを使うかどうかには関係ない(サーブレットを使うならweb.xmlの定義がいる)

そして、利用するには、こんなかんじみたい

import org.hibernate.*;
import org.hibernate.cfg.Configuration;

----

Configuration conf = new Configuration().configure();
SessionFactory sf = conf.buildSessionFactory();
Session ses = sf.openSession();

//MyMapping.class=>マッピンググラス
Criteria cr = ses.createCriteria(MyMapping.class);
List list=cr.rist();

for(Object obj:list)
{
MyMapping mm = (MyMapping)obj;

//mm.get項目名で値をとってくる<=このメソッドはマッピングクラスで定義
}

ses.close();

(上記の本のP310から抜粋引用)




■Excelシート構成

 1DB1Excelファイル(ブック)とする

Excelファイル(ブック)内のシート構成
設定情報シート  1シート  DB情報を定義(設定情報ファイルを作成用)
テーブル定義   テーブル分 テーブルのレコードを定義

生成するファイルは、
1.設定情報ファイル
2.マッピングクラスのJavaソース
3.マッピングファイル
4.テーブル定義(Create Table)文

としましょう

 上記のアクセス部分は、別にいいでしょう。
 逆に、テーブル定義は、いりますね。




■ってことは、

 JDBCでアクセスして、共通化するようなプログラム自動生成用の
Excelファイルと共有できますね(実装部分をかえるだけ)

 今回はここまで(って、続くかどうかわかんないけど)


  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする