Spring Frameworkのテストは大成功!

卒研のソフトのデータベース層は、Spring Frameworkというフレームワークを使っています。
ずっと、ここの文章を見ていたが、サンプルコード通りで、表示するデータベースクエリの結果は、こんな感じになります:「{name=Bob, id=1}, {name=Mary, id=2}」。
クエリの中身は短くて、簡単な文字列なら、Stringのメソッドで必要な文字列を区切ってやればいいけど、フォーラムやブログのような複雑な長文なら、どうすればいいなのか。コレクションなどを使わないとだめでしょうね。

今 日は、Spring FrameworkのAPIを調べてみたら、実行結果を取得するqueryForList()は、いくつかのオーバーロードのメソッドを用いて、しかも戻 り値がList型と分かった。戻り値はコレクションなら、データテーブルの結果は、列ごと、簡単に分けれるんじゃないか。やってみたら、成功しました。 やっぱり、僕は日本語依存過ぎていましたよね。Spring Frameworkを使うと、そのAPIを調べる常識を忘れてしまった。それじゃ、テスト成功したサンプルコードを貼り付けておきます。


import com.plum.db.*;
import java.util.*;

import org.springframework.jdbc.*;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.datasource.DriverManagerDataSource;

/**
* Spring Framework JDBCTemplate test class for Firebird.
*
*@author Loveapple
*@version 20051211
*/
public class DBSample {
  public static void main(String[] args) {
   final String DBDRIVER = "org.firebirdsql.jdbc.FBDriver";
   final String DBUSER = "データベースの管理ID";
   final String DBPASSWORD = "パスワード";
   final String DBURL = "jdbc:firebirdsql://loveapple.atso-net.jp/データソース";


   DriverManagerDataSource dataSource = new DriverManagerDataSource();

   dataSource.setDriverClassName(DBDRIVER);
   dataSource.setUrl(DBURL);
   dataSource.setUsername(DBUSER);
   dataSource.setPassword(DBPASSWORD);

   JdbcTemplate jt = new JdbcTemplate(dataSource);

   ArrayList list = new ArrayList(jt.queryForList("SELECT ID, TITLE, BODY, PERSIMMION FROM CATEGORY WHERE PERSIMMION <= 0"));
   HashMap hashMap;

   ListIterator it = list.listIterator();
   while(it.hasNext()){

     hashMap = new HashMap((Map)it.next());
     System.out.println(hashMap.get("ID"));
     
     //下は、データを確認するときにテストメッセージを表示
     /*System.out.println(it.next());
     System.out.println(it.next().getClass().toString());*/
   }
  }
}

コメント

このブログの人気の投稿

Linux(UNIX)、MS-DOS、OpenVMS コマンド対応表

ECスペシャリストに生まれ変われ!