総当りのアルゴリズム

(0,0)(0,1)(1,1)は出現するが(1,0)は出現しない組み合わせを作るアルゴリズムは難しそうだが意外に簡単に出来る for i in 0..2 for j in 0..i for k in 0..j for m in 0..k p [i,j,k,m] end end end end 出力結果 [0, 0, 0, 0] [1, 0, 0, 0] [1, 1, 0, 0] [1…

JavaのCSVライブラリ

JavaのCSVライブラリにはこれといった標準のものがないので困る。 opencsv、SuperCsv、OrangeSingnalCsvなど一応あるにはあるがどれもいまいち。 その中ではSuperCsvがよさそうなんだけど、CSV→Bean変換に致命的な問題がある。 CSVのカラムが空の場合CsvBean…

バッチファイルの引数の情報を取得する

バッチファイルの引数(パラメータ)を取得する際には、一部の情報だけを取得することができる。 たとえば、引数の中からドライブ名だけ取得するなんてことができる。 以下のようなバッチファイルでどうなるか試してみる。 @echo off echo %%0 = %0 echo %%~0 …

バッチファイルで環境変数の文字列を置換する

Windowsのバッチファイルのコマンドで、環境変数の文字列は簡単に置き換られる。今日の日付をファイル名の一部にしたいなんて場合、環境変数の%DATE%に日付が入ってるんだけど 2010/09/24のようにスラッシュが入ってるのでそのままではファイル名に使えなく…

JRubyでJavaのclassオブジェクトへのアクセス

JRubyでJavaのClassクラスのメソッドを元の名前(getMethodsなど)で 使いたいときなどに、Javaのclassオブジェクトに直接アクセスしたいことがある。 その場合は.java_class.to_javaか.getClassを用いればいい。 jirbで実行した結果 irb(main):001:0> include…

Java to Ruby 変換表

JRubyで呼び出したJavaメソッドからの戻り値が、Rubyのどの型に変換されるか調べた Java戻り値 Ruby boolean true, false char Fixnum byte Fixnum short Fixnum int Fixnum long Fixnum float Float double Float String String BigInteger Bignum Wrapper…

Ruby Hash to Java Map Conversion Bug

一度、型変換に失敗すると同一オブジェクトでの型変換ができなくなることがあるようです。 include Java hash = {"a"=>"b"} hash2 = {"a"=>"b"} begin java.util.Collections.fill(hash, "a") rescue; end java.util.HashMap.new.putAll(hash) #java.util.Ha…

Ruby to Java 変換

JRubyからJava呼び出しの際にどんなオブジェクトが渡るかテスト Java public class Convert { public static void print(Object obj){ System.out.println(obj.getClass() +":"+ obj); } } JRuby include Java def conv obj Java::Convert.print obj end con…

JRubyからJavaにclassオブジェクトを渡す

JRubyからJavaにclassオブジェクトを渡すとどの型になるのか試してみた。 Javaのコードは単純にclass文字列表現をprint public class ClassSample{ public static void print(Class clazz){ System.out.println(clazz.toString()); } } JRubyではJavaのビル…

Ruby to Java 変換表

JRubyからJavaのメソッドを呼ぶ場合、メソッドの引数は自動で型変換される。 Javaのメソッドの引数を具体的な型で定義したとき、Rubyのどの型を受け入れられるか調べた。 (以下のようなメソッドをJRubyから引数に様々なものを入れて呼び出してみた) public s…

Servlet 3.0のアノテーション

@WebServletアノテーションを使うとweb.xmlいらないということで試してみた。 Tomcat 7.0.2で実験以下のコードをwebapps/sample/WEB-INF/classes/sampleに置いてコンパイル package sample; import javax.servlet.annotation.*; import javax.servlet.http.*…

自動的に閉じるJavaファイルストリーム

JRubyで外部のJavaライブラリと連携とかするとき、RubyのFileクラスのopenのように自動的に閉じるFileInputStream、FileOutputStreamがほしいので作ってみた。 わりと簡単に作れる include Java class FileInput def self.open(file, &block) raise "no bloc…

シーケンス図のリバース

シーケンス図をソースコードからリバースして作成するツールでいいのがないか探してみたけど、SoyatecのeUML2ってのがなかなかよさそう。 http://www.soyatec.com/euml2/ Trace2UMLやUMLGraphもソースコードからじゃないけど手軽にテキストベースでUML定義で…

JavaでのExcel操作ライブラリ

POI以外にもExcellaというExcel操作ライブラリがあるらしい http://excella-core.sourceforge.jp/POIは正直使うの面度すぎなので、こういうのがあると楽できそう

ER図 作成ツール Erviz

DB

テキストでテーブル定義を書いて、それを図に変換するという面白いツールを発見http://www.ab.auone-net.jp/~simply/ja/index.html http://d.hatena.ne.jp/simply-k/20100702/1278052011テキストの記述方法がシンプルで出力される図もきれいなので、なかなか…

Rubyのリファレンスはわかりづらい

http://www.ruby-lang.org/ja/man/html/index.html 言語自体はいいのにドキュメントがだめなせいで損していると思う。 まだRailsのリファレンスのほうがわかりやすいというのはどういうことなんだろ・・・

Redmine0.9.5はキャンセル?

http://www.redmine.org/projects/redmine/roadmap 0.9.5が6/1リリース予定だったのがキャンセルされた模様 また1.0が7/3リリース予定になってるがほんとに出るかなあ

Hibernate Validator

http://www.hibernate.org/subprojects/validator.html JSR 303: Bean ValidationのRI(Reference Implementation)にもなっている。 アノテーションで制約を設定するようで、かなり使いやすそうな印象Hibernateの名前が入っているがHibernateなしでも使用でき…

Tomcat 7 リリース間近

Tomcat 7 RC4まで出てるようですね http://www.theserverside.com/news/thread.tss?thread_id=60295Servlet3.0対応とか

JSPからRailsの機能を使う

制御構造にはJSTLが使えるからいいけど、フォームやリンクを生HTMLで書くのは不便なのでカスタムタグを用いて記述したいところ。 いろいろ考えたが、Railsの機能を使いつつタグファイルによるカスタムタグ作成ができたのでメモ。 JSPのエスケープシーケンス…

RailsのController実装をJavaで作る

前回でViewにJSPを使えるようになったので今回はController。 とりあえず以下のようなJavaのActionクラスをRailsのControllerにマッピングすることを考える。 package sample; public class SampleAction { public Integer result; public String v1; public…

Railsのerbレイアウトの中にJSPの本文を埋め込む

文字列バッファに出力するようにしたHttpServletResponseを作って RequestDispatcherのincludeでJSPのページを取ってくればいい。 railsのControllerで以下のように書く(前提:JRuby-Rack環境) writer = java.io.StringWriter.new req = request.env['java.s…

JRuby Tips

JRubyの現在のランタイムを取得する JRuby.runtime JRubyの公式ページには一切書かれてなかったんだけど・・・ JRuby-Rack Tomcat上でRailsアプリを動かす場合など... ServletContextの取得 $servlet_context または request.env['java.servlet_context'] Se…

Redmineのプラグインを

JavaとJSPで作れないかな〜 Redmineの外枠なしならJSPへリダイレクトはできるんだがねえ・・・レイアウトファイルから書き換えなきゃだめかな

Redmine 0.9.4をTomcat 6で実行する方法

JRuby 1.5.0が出たのでうまくいくか試してみた (以前やった方法>http://anond.hatelabo.jp/20100422043007)環境は以下のとおり CentOS 5.3 (on VirtualBox) JDK 1.6.0_20 Tomcat 6.0.26 JRuby 1.5.0 Rails 2.3.5 Redmine 0.9.4 MySQL 5.0.77 Warbler 1.1.0 …