いろいろ備忘録日記

主に .NET と Python絡みのメモを公開しています。

java

CSVライブラリ

Javaで利用できるCSVのライブラリです。 Commons CSVに関しては、まだ正式リリースがありませんので、直接SVNからソースを 取得し、ビルドします。 Jakarta Commons CSV http://jakarta.apache.org/commons/sandbox/csv/ Open CSV http://opencsv.sourceforg…

JFrame#addメソッド

Tiger(1.5)になって、少しだけ、でもちょっとうれしい変化がJFrameに起こっています。 JFrameのaddメソッドをコールすると、コンテントペイン(ContentPane)に追加されるように なっています。つまり、今までは、 JFrame f = new JFrame("sample application"…

H2, Derby, GoogleDocs & Spreadsheet

メモメモ。 使ってみようH2 Database Engine http://journal.mycom.co.jp/articles/2006/10/12/h2/ 使ってみようApache Derby http://journal.mycom.co.jp/articles/2006/10/11/derby/ Google Docs & Spreadsheet http://docs.google.com/

タスクトレイ

現状(JDK 1.5(Tiger))では、まだSwingにてタスクトレイを利用することはできません。 利用するには、SysTray for JavaのようにJNIを使って、タスクトレイを操る必要があります。 SysTray for Java http://systray.sourceforge.net/ でも、JDK 6(Mustang)から…

キーボードアクセラレータ

何故かしらないけど、よく忘れるのでメモ。 javadrive.jp http://www.javadrive.jp/tutorial/jmenu/index10.html

javamailでgmailのSMTPサーバーから送信

javamailを使って、gmailのsmtpサーバ(smtp.gmail.com)でメールを 送ろうとしてたのですが、エラーが出て困ってました。 STARTTLSって出てきたからSMTPSなのはわかったけど、javamailでどうやってやるねんって 感じになったので、ネットを散策・・・。コード…

Sorcerer, Execute Query

メモメモ。Sorcererはかなり便利そうですね。 JDK6じゃないと動かないみたいです。 Sorcerer https://sorcerer.dev.java.net/ Execute Query http://executequery.org/

XML関連とAjax関連

気になっているプロダクト。 まだ、全然みれてないです。とりあえずメモメモ。 XStream(シンプルさが売りのXML処理ライブラリ) http://xstream.codehaus.org/ jMaki(作成されているのは日本の方?) https://ajax.dev.java.net/ crispy(XML-RPCなどリモート関…

Google Web Toolkitの記事

メモメモ。 http://japan.internet.com/developer/20060912/26.html

iBatis奮闘記-0020 (ユーティリティクラスの作成)

今回、SqlMapの時と同じようにユーティリティクラスを定義してみます。以下、ソースです。 ここに出てこないソースなどは、以下の記事を参照してみてください。 http://d.hatena.ne.jp/gsf_zero1/20060812/1155483349 [DAO実行用インターフェース] // vim:se…

iBatis奮闘記-0019 (基本的なDAOの作成-2)

実際に、DAOの作成を行います。インターフェースを定義します。 DAOフレームワークを使用する場合の決まりごとですが、定義するインターフェースは、 com.ibatis.dao.client.Daoインターフェース を継承して作成します。このインターフェースはマーカーイン…

iBatis奮闘記-0018 (基本的なDAOの作成-1)

今回、基本的なDAOの作成方法を記述したいと思います。iBatis DAOフレームワークでは、DAOを作成する場合、 インターフェース 実装クラス を作成します。これは、DAOフレームワークに限った事ではなく 通常のクラス設計でも同じことですが。DAOフレームワー…

iBatis奮闘記-0017 (iBatis Data Access Object Frameworkの設定)

iBatis Data Access Objectフレームワークは、DAOに焦点を絞った簡易DIコンテナ みたいな役割をもってます。これを利用するとDAOのインターフェースと実装クラスを 分離し、クラス利用側からは、インターフェースのみで扱えるようになります。 余計な機能が…

iBatis奮闘記-0016 (SqlMap設定ファイル)

現段階までのSqlMap設定ファイルの内容です。[database.properties] driver=org.h2.Driver url=jdbc:h2:tcp://localhost/test; username=sa password= [SqlMapConfig.xml]

JRubyについてのリソース

SunがJRubyの開発者達を雇い、フルタイムでJRubyの開発に従事できるようにしたみたいですね。 http://journal.mycom.co.jp/news/2006/09/11/343.html Javaだけで、Rubyが動くというのは、とても魅力的ですね。 Ruby自体がわかりやすく、使いやすいのでそこに…

iBatis奮闘記-0015 (これまでの記事のドア)

結構数も増えてきたので、ここまでの分のドア記事を作成。 リンク間違ってたら、すみません。m(_ _)m iBatis奮闘記-0001 (インストール) http://d.hatena.ne.jp/gsf_zero1/20060714/1152856791 iBatis奮闘記-0002 (1テーブルのCRUD) http://d.hatena.ne.jp/…

iBatis奮闘記-0014 (結果をXML形式で取得する)

iBatisのクエリー発行方法には、結果をXML形式で取得する方法もあります。 XML形式で取得する際も、普通にselectするのと手順は変わりませんが、 以下の点を守らなければなりません。 resultClass属性に"xml"と指定する xmlResultName属性を追加する。 XML形…

iBatis奮闘記-0013 ($を使用した動的パラメータ)

ibatisには、SQLマッピング設定ファイルにて、以下の2つの値指定ができます。 #を使用した値指定 $を使用した値指定 上記の2つの違いは、#は実行時にエスケープや文字列の場合は' 'で囲んでくれるなどの処理をおこなってくれますが $の方は、指定された値を…

iBatis奮闘記-0012 (selectKeyによる採番)

iBatisでは、insert時にシーケンスなどから採番し、insertしてから、その値を取得する 機能があります。その際に使用するのがselectKey要素です。以下サンプルです。[DDL] -- vim: set ts=4 sw=4 et ws is nowrap ft=sql: CREATE TABLE SAMPLE009_TEST_TABLE…

H2 Database Engine 1.0リリース

H2 Databaseのバージョン1.0がリリースされました。 本家 http://www.h2database.com/html/frame.html リリースニュース http://www.infoq.com/news/h2-released HSQLDBと同じく、つかいやすいので気に入ってます。

XPathについての情報

XPathについての情報をメモメモ。勉強理由は、JXPathを使いたいから。w JXPath http://jakarta.apache.org/commons/jxpath/ http://jakarta.jp/commons/jxpath/ XML Path Language http://www.infoteria.com/jp/contents/xml-data/REC-xpath-19991116-jpn.h…

NRIのオープンソースドキュメント

NRIがオープンソースドキュメントとして、Eclipseの利用ガイドや FindBugs利用ガイドなどをPDFファイルで公開しています。 オブジェクトワークス|オープンソースドキュメント http://works.nri.co.jp/service/documents.html

iBatis奮闘記-0011 (iBatis 2.2.0リリース)

iBatis 2.2.0がリリースされました。ただし、まだBetaリリースとなっています。いくつかの機能追加と修正を行っているみたいです。 内容については、以下の記事が詳しく書かれていらっしゃいます。 Invention Works http://blog.seesaa.jp/tb/22498960 また…

iBatis奮闘記-0010 (結果をMapで受け取る)

iBatisには、クエリの結果をMapで受け取る機能があります。SqlMapClientの以下のメソッドを使用します。 Map queryForMap(statement, parameterClass, keyProperty); 以下サンプルです。[DDL] -- vim:set ts=4 sw=4 et ws is nowrap ft=sql: CREATE TABLE SA…

JPedal

強力PDFライブラリらしいです。とりあえずメモメモ。 http://journal.mycom.co.jp/articles/2006/08/25/jpedal/ 本家 http://www.jpedal.org/

JDK7にクロージャ機能が導入提案

ついに、javaにもクロージャが投入されるかもしれないですね。 http://journal.mycom.co.jp/articles/2006/08/23/java7closuer/ http://blogs.sun.com/ahe/resource/closures.pdf 個人的には、待ってましたの機能です。 javaの主要開発者のJames Gosling氏な…

iBatis奮闘記-0009 (RowHandlerの使用)

iBatisでは、行データをハンドリングするハンドラを 指定することができます。 com.ibatis.sqlmap.event.RowHandler RowHandlerはインターフェースとなっており、 void handleRow(Object obj); というメソッドが一つだけ定義されています。 このメソッドに渡…

SwiXat

Swing XML Authoring Toolの略らしいです。XULがらみでもう一つメモメモ。 xulfacesはWEB系フレームワークですが、こちらは、Swingのフレームワークです。GUIのビュー定義にXULを利用して、JAVAのコードを書かずにアプリを構築することを 目的としているみた…

xulfaces

XULって、ズールって読むんですね。 XUL, JSF, Ajaxを利用して、リッチなUIを構築するフレームワークみたいです。 xulfaces http://xulfaces.sourceforge.net/ XULって、Mozillaシリーズに搭載されているUI言語と 認識しているのですが、これって、IEとかで…

Ajax4jsf

MYCOMにて記事があったのでメモメモ。 http://journal.mycom.co.jp/articles/2006/08/17/ajax4jsf/

Tapestry奮闘記-0027 (OGNLのリソース)

Tapestryでは、ページファイルなどの値指定にOGNLが使用できます。 OGNLでは、単純にobj.getValue()をobj.valueと記述できるだけでなく 値の評価やオブジェクトの生成もできます。[例] Ifコンポーネントのcondition属性に指定するboolean値を Java側でセット…

Tapestry奮闘記-0026 (PropertySelectionコンポーネント)

PropertySelectionコンポーネントもSelect,Optionと同じようにドロップダウンリストを レンダリングします。違いは、こちらは内部でorg.apache.tapestry.form.IPropertySelectionModelを 持ち、それを利用してレンダリングを行います。IPropertySelectionMod…

Tapestry奮闘記-0025 (Select, Optionコンポーネント)

Tapestyにて、コンボボックス(ドロップダウンリスト)を表示するには、 大きく分けて2通りのやり方があります。 Selectコンポーネントを使用 PropertySelection(MultiplePropertySelection)コンポーネントを使用 後、自前でコンポーネントを作成してレンダ…

Click Wiki

たけぞうさんのところで、Click Frameworkの日本語でのwikiが 立ち上がってます。http://amateras.sourceforge.jp/cgi-bin/fswiki/wiki.cgi/click?page=FrontPage

iBatis奮闘記-0008 (ページング機能付きのリストの取得(PaginatedList))

iBatisには、ページング機能付きのリストを取得する機能があります。 com.ibatis.common.util.PaginatedList このインターフェースは、Listインターフェースを継承しており、 Listのメソッドに加え、以下のようなページングのメソッドを提供しています。 get…

iBatis奮闘記-0007 (ユーティリティクラスの作成)

iBatisを使用していると、SqlMapClientを生成している部分などを 毎回記述すると面倒になります。iBatisのドキュメントにはSqlMapClientを生成するUtilクラスを 作成する例が記述されています。 てことで、面倒な初期化処理などを引き受けてくれるユーティリ…

jMatter

ClientJava.comを眺めてたら、記事があったのでとりあえずメモ。 jMatter http://jmatter.org/ 英語がよくわからなかったのですが、フロントがSwingでバックエンドにRDBMSの 2層アプリを作成する際のフレームワークみたいです。(間違えてるかも・・・w)[…

JAG(Java Application Generator)

JAGがいつのまにかバージョン6まであがってました。 ビューにTapestryをサポートするようになってます。 これ、知ってたけど使ったことないんですよね。 Tapestryもサポートしてるみたいだし、一回試してみようかな。ちなみに、このツールはJ2EEアプリを自…

Project Mogwai

今日初めて知りました。 SwingFrameworkというフレームワークやその他Swingに関連する フレームワークなどが公開されています。 Project Mogwai http://mogwai.sourceforge.net/index.html ちなみに、バンドのMogwaiと完全に同じ単語ですので、 Mogwaiでググ…

SwingでJavaに強くなる(@IT)

@ITにて連載中。(現在第3回まで公開されている模様) http://www.atmarkit.co.jp/fjava/rensai3/swing01/swing01.html http://www.atmarkit.co.jp/fjava/rensai3/swing01/swing02_01.html http://www.atmarkit.co.jp/fjava/rensai3/swing01/swing03_01.html

よく参考にしているサイト

Ant詳説 http://homepage1.nifty.com/kuprij/antdoc/toc.html buildファイル作成している時によく参照させてもらってます。 各タスクについての詳しい解説があります。バージョン1.5までの分になってますが、後は本家のドキュメントを 参照すれば済みます…

Tapestry奮闘記-0024 (文字化け対応)

アプリケーション仕様ファイルにて、プロパティ値 org.apache.tapestry.output-encoding org.apache.tapestry.template-encoding をともに、Shift_JISにしていたのですがこれでは、"〜"などが 文字化けしてしまいます。(Tapestry4.x系では、meta要素になりま…

Click奮闘記-0002(Moving Click under Apache Velocity)

there have been some brief discussions about Velocity becomming a top level project (TLP) under Apache and Click becoming a part of this project, as a sub project, much like Velocity Tools. Clickのnews groupの記事を見ていたのですが、こんな…

日本語で情報があるサイト

かなりわかりやすく書かれています。 メモメモ。 http://www.physalis.net/ss/space/Wicket

Click奮闘記-0001(インストール編)

Clickフレームワーク(http://click.sourceforge.net/)は、 シンプルで学習が容易と言われているJava用Webアプリフレームワークです。日本から、たけぞうさん(Naoki Takezoe)がコミッタとして参加されており、 Eclipse用のプラグインも公開されています。ま…

iBatis奮闘記-0006 (バッチ処理)

大量のInsertなどが発行される場合、普通にひとつずつ発行していると 時間がかかってしまいます。そのようなときは、バッチ処理を行い 一括して処理を送信します。iBatisにおいて、バッチ処理を行う場合、 以下のメソッドを使用します。 sqlMap.startBatch()…

Swingweb, Ajax4jsf

とりあえず、メモ。 Swingweb http://swingweb.sourceforge.net/swingweb/ Ajax4jsf https://ajax4jsf.dev.java.net/nonav/ajax/ajax-jsf/ http://www.exadel.com/web/portal/products/a4j

Tapestry奮闘記-0023 (1回目〜22回目まで)

結構、たまってきてので各記事へのドアを作成。 Tapestry奮闘記-0001 http://d.hatena.ne.jp/gsf_zero1/20060613/1150860836 Tapestry奮闘記-0002 http://d.hatena.ne.jp/gsf_zero1/20060619/1150860709 Tapestry4.0でServletContextへのアクセス方法 http:/…

Tapestry奮闘記-0022 (Friendly URLsの設定)

Friendly URLsとは、TapestryのURL表記をフレンドリーなものにする設定のことです。 Tapestryのデフォルトでは、 http://xxxx/xxx/app?page=Home&service=page という風になります。これでは、簡単に推測してアタックできます。 これを http://xxxx/xxx/Home…

Tapestry奮闘記-0021 (リダイレクトフィルターの設定)

Tapestryでは、通常, /app にサーブレットをマッピングしますが、そのままだと、 http://xxxxx/xxx/ とappをつけずにアクセスした際に、エラーになっていまいます。 なので、上記のURLでアクセスされた際にもちゃんと最初のページが 表示されるようにリダイ…