BeanShell

mixiのとあるコミュでの話題で
ちょっと調べていたら面白いのに行き着いたので紹介。

BeanShellというものだ。
これは面白い。

クラス名の解決をどのようにやっているかをちと見てみたのだが
やはり泥臭いことをしなきゃいかん。

やってることはいたって簡単。
jar、directoryを登録し、
その登録した中を走査。 クラスを列挙する。
mapにkey=クラス名 value=完全クラス名 で登録し、
そのmapからクラス名のみで完全クラス名を得るって寸法だ。

やっぱりこうしなきゃだめみたいね。

ただ、mapの生成はどうしても時間がかかるので
その点を注意してやらないととんでもないレスポンスになってしまう。
内部的にstaticで持っているので一度できてしまえばそれほど苦にはならないだろうがwebで使うのは何かと問題が出るような気がしてならない。