Java

●Safe Rethrown

エラーキャッチ後の再Throwに対してコンパイラが オプティマイズThrowするようになります。 http://www.javac.info/Rethrown.html http://blue64.net/2008/06/proposed-java-7-feature-safe-rethrow/ ■使用例 void test() throws RuntimeException { try { }…

●Multicatch

エラー処理がスマートに記述できるようになります。 http://docs.google.com/Doc?id=ddb3zt39_76dtz7bsg2&hl=en http://www.javac.info/Multicatch.html 複数の例外をバーティカルバー "|" でつないで記述します。■使用例 try { return clazz.newInstance();…

●Type inference

型推論が拡張されます。 当初は"<>"の表記ではなく""の表記が提案されていたようです。■使用例 //このように書くと Map<String, Integer> map =new HashMap<>(); //このように解釈されます。 Map<String, Integer> map =new HashMap<String, Integer>();</string,></string,></string,>

●JSR 308 Annotations on Java Types

2009年2月27日公開の分です。 http://groups.csail.mit.edu/pag/javari/java-annotation-design.pdfまず、クラスファイルのアノテーションの構造体が拡張されます。 同様にローカル変数も構造体拡張がほどこされます。 その他、戻り値の型、変数、クラス、メ…

Java7の言語拡張について調べてみた。

Java7の言語拡張について調べてみました。 Java7に入るだろう拡張

thirdi-validatorを新規リリース!

thirdi-validatorを新規リリースしました。アノテーションベースのJava バリデーションフレームワークです。詳細はここ:http://sourceforge.jp/projects/thirdi/wiki/thirdi-validatorダウンロードはここ:http://sourceforge.jp/projects/thirdi/downloads…

thirdi-validator開発中

アノテーションベースのValidatorを開発しています。JSR303を実装していたのですが、いまいちしっくりこなかったので 一部を変更しています。で、Java7にはいるかどうかもわからないけども 入るのが決まったら合わせる方向で考えています。 とりあえず、あと…

Javaクエリ仕様策定中③

Javaでのデータ検索における仕様を考えているのだがこのような書き方はどうだろう。 誰か意見下さい。現在のところの仕様③:メリット: ・タイプセーフに記述できる。 ・準備するのはEntity Beanのみでよい。 ・ID列を意識しなくてよい。デメリット: ・パブ…

Apache POIで作成した複数ExcelファイルをZIP圧縮する。

Excelファイルを動的に作成してそれを圧縮してみた。Webとかで一括ファイルダウンロードとかの用途があると思う。 ググったらあるかなと思ったけども意外となかった・・・orzで、とりあえず作成。 ソースはこんな感じ、エラー処理適当。 import java.io.Byte…

Clickのカスタムカレンダー

Apache Click 2.0.1リリース! この記事を見てS2Clickのカスタムカレンダー作ってたのを思い出した。こんな感じのやつS2Clickのカスタムカレンダーを作ってみた。 ソースはこんな感じ /* * Copyright 2008- kensir0u. * * Licensed under the Apache License…

Javaクエリの仕様策定中②

Javaでのデータ検索における仕様を考えているのだがこのような書き方はどうだろう。 誰か意見下さい。現在のところの仕様②:メリット: ・タイプセーフに記述できる。 ・準備するのはEntity Beanのみでよい。 ・ID列を意識しなくてよい。デメリット: ・パブ…

グーグルトレンドに見るWebフレームワークの動静

●Webフレームワーク比較 http://www.google.com/trends?q=(rails+tutorial),+(flex+tutorial),+(jsf+tutorial)+|+(javaserver+faces+tutorial)+|+(java+server+faces+tutorial),+(spring+mvc+tutorial)+|+(spring+webflow+tutorial)+|+(spring+web+flow+tuto…

Javaクエリの仕様策定中。

Javaでのデータ検索における仕様を考えているのだがこのような書き方はどうだろう。 誰か意見下さい。現在のところの仕様: こう書くと Expression e = new Expression(); //式マネージャ //検索条件の生成 //できるのは普通のEntity Bean Shop_list s = e.c…

thirdi-ormリリース!

thirdi-ormをリリースしました。シンプルなJava ORマッピングフレームワークです。詳細はここ:http://sourceforge.jp/projects/thirdi/wiki/thirdi-ormダウンロードはここ:http://sourceforge.jp/projects/thirdi/downloads/37701/thirdi-orm.jar

JVMのメモリチューニングについて考えてみた。

JVMのJavaVM Optionでメモリのチューニングができる。 オプション 名称 意味 -Xms ヒープの初期値 コレだけのメモリはJavaが使用するぞ!と宣言する -Xmx ヒープの最大値 コレだけメモリ使いたいんです。と宣言する。確保してるわけではない。 -Xmn New領域の最…

Servlet3.0での非同期通信

Servlet3.0 Public Reviewからのお話です。Servlet3.0から非同期通信が導入されます。非同期通信はjavax.servlet.AsyncContextクラスの startメソッドを呼び出すことで実現できます。AsyncContext自体はServletRequestから取得できます。 実際、非同期通信は…

Servlet3.0でのアノテーションの使い方

JSR315:Servlet3.0のPublic Reviewがでています。 Servlet3.0ではプラガブルWeb.xmlや Annotational Servlet マッピングが導入されます。そこでアノテーションでのServletの設定方法を調べてみました。Servlet3.0で導入されるアノテーションは以下の4つの …

Apache POI3.5beta4のserializeがエラーする。

Apache POI3.5beta4 のserializeがエラーする。Apache POI3.2系のserializeは正常。調べてみたらStyleRecordクラスのserializeが問題っぽい。 こりゃどうしたもんかと調べてたらすでにバグとしてあがってた。Patchもあがってた。なんと日本人があげてた。参…

Apache POIのExcel2007対応について

昨年末にApache POIのOffice2007対応版のベータ4版が出たのでためしてみた。・旧バージョンとの比較(EXCELの場合) Apache POI 3.2系=HSSF(〜Excel2003) Apache POI 3.5系=HSSF(〜Excel2003)+XSSF(Excel2007) 3.5系ではHSSFとXSSFをまとめるス…

JDK7での型推論と制約アノテーション

JDK7で一部、型推論の機能が拡張されました。 また、制約アノテーションも追加されるそうです。このようにコンパイラレベルでの変更はライブラリの変更に比べて 細かいところでの影響度(ライブラリだと使わなければよいが、コンパイラは 全てのソースに影…

JDK7のJavaDocとGCの話

JDK7のJavaDoc発見どんな機能が入っているかあとで見てみよう。 コレ⇒http://download.java.net/jdk7/docs/と、思ったら中身の充実度が・・・・orzJava7でG1ガベージコレクションが実装された。 Java6までのは YOUNGGCとOLDGC の2段だったんだけども、 YONUGGC…

FireFox限定JavaScriptでJavaライブラリを使う方法。

以下のソースはFireFoxで開くと動きます。 <html> <head> <meta http-equiv="content-type" content="text/html;charset=shift-jis"> <title>Sample</title> <script type="text/javascript"> function testAWT() { var frame =new java.awt.Frame("TestAwtWindow"); var …</meta></head></html>

Java6でclosure(クロージャ)を実現する方法。

とりあえず、実現方法その1はJavaScriptで実装すればよい。以下ソース /* * 作成日 (creation date) :2008/12/06 * パッケージ (package name) :test * ファイル名 (file name) :TestJs.java */ package test; import static java.lang.annotation.Elemen…

秋分の日と春分の日がシステマチックに算出できない件について

現在、Javaで国民の祝日クラスを実装しているんだけども。 どうも秋分の日と春分の日がシステマチックに算出できないことを 知り挫折・・・・さてどうしたものか・・・ 現状では日本式カレンダー系はどうも毎年メンテナンスしなければ いけないらしい・・・…

JRE6の中のアノテーションを調べてみた。

JRE6に含まれているアノテーションクラスを調べてみた。名前の重複を避けたい場合や、わざと合わせたい場合等々。 アノテーション作成時の命名のときに考慮しよう。 @com.sun.istack.internal.Interned @com.sun.istack.internal.NotNull @com.sun.istack.i…

Apache POIのコメント追加ができるようになってるみたい。

前までApachePOIでセルコメントの追加処理ができないみたいだったんだけども。 POI3.2Finalが出てたので試してみたらできた。 以下確認ソース import java.io.FileInputStream; import java.io.FileOutputStream; import java.util.StringTokenizer; import …

S2Clickのカスタムカレンダーを作ってみた。

ClickのカレンダーがLGPLなのと、自分的にセンスの良さが感じられなかったので ちまたでうわさのというか、ググったら見つかったJKL.Calendarを元に Clickのカスタムカレンダーを作ってみた。フォーマットは「YYYY/MM/DD」※DDは01とか02とか0埋め まだ、汎用…

オープンソースでフレームワーク創っている人は努力家である。

オープンソースでフレームワークを創っている人は努力家であると思う。 なぜならば、フレームワークは効率化のための手段のひとつであり、 効率化を求めている人はつまり、努力家なのである。 よく地道な努力とかたゆまぬ努力とか言うが、ソフトウェアを作る…

何でも入るプリミティブな型

ネタです。以下のソースはコンパイルエラーになりません。 結構いろんな表記ができるものです。 /** * <i>概要</i>: ダブル変数クラス . * <p> * テストクラス * * * @author kensir0u * @version 1.0 * @since JDK 5.0 * */ @SuppressWarnings("all") public class P</p>…

DIJava0.0.4リリース

DIJava(Dynamic Interactive Java)は対話的なJavaプログラミングを行うためのツールです。 Javaの式を標準入力から簡単に入力/実行することができます。少しリファクタリングしてソースとJavaDocを追加しました。ダウンロードはココ http://sourceforge.jp/…