<?xml version="1.0" encoding="utf-8" ?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>アプリコット</title>
<link>https://ameblo.jp/hayashi92/</link>
<atom:link href="https://rssblog.ameba.jp/hayashi92/rss20.xml" rel="self" type="application/rss+xml" />
<atom:link rel="hub" href="http://pubsubhubbub.appspot.com" />
<description>Windowsユーザからみた、MacBookをつかう際のコツや、IPhoneアプリ開発情報、東京都葛飾区の情報</description>
<language>ja</language>
<item>
<title>JAVAでクラスを動的に読み込みインスタンスを生成させるメモ</title>
<description>
<![CDATA[ perlにはplaggerというフレームワークがあって<br>データの収集、加工、出力をそれぞれモジュール形式でつくっておいて、<br>設定ファイルだけで、コーディングしなくても実用的なツールを組み立てることができます。<br><br>この簡易版でもいいから、Javaでも実現するには、モジュールとして、動的にJARファイルを読み込むことが基礎技術として必要となります。<br>そのあたりについて、サンプルコードをつくったので、メモとしてはりつけておきます。<br><br>public class PlugLoader {<br>public static void main(String[] args) {<br>//ロードするjarファイル<br>File file = new File("c:\\plugin\\MyJar.jar");<br>try {<br>//クラスローダの作成<br>URLClassLoader loader = URLClassLoader.newInstance(new URL[] { file.toURI().toURL() });<br><br>//指定したクラスをロード<br>Class<!--?--> c = loader.loadClass("jp.boy.java.MyJar");<br>System.out.println(c.getName());<br><br>//インスタンス<br>try {<br>IMyJar obj = (IMyJar)c.newInstance();<br>System.out.println(obj.method01("hello"));<br><br>} catch (InstantiationException e) {<br>e.printStackTrace();<br>} catch (IllegalAccessException e) {<br>e.printStackTrace();<br>}<br><br><br>} catch (MalformedURLException e) {<br>e.printStackTrace();<br>} catch (ClassNotFoundException e) {<br>e.printStackTrace();<br>}<br>}<br>
]]>
</description>
<link>https://ameblo.jp/hayashi92/entry-10356575802.html</link>
<pubDate>Sat, 03 Oct 2009 23:40:15 +0900</pubDate>
</item>
<item>
<title>JavaからJRubyを制御する実験コードメモ</title>
<description>
<![CDATA[ だいたいこんな感じで、クラスの作成、値の受け渡しを行った。<br>Rubyのインスタンス生成には時間がかかりすぎ（１０秒）感があった。<br><br>足りないソースは<br>http://yamarou.at.infoseek.co.jp/javanawake/026.html<br>のクラスぐらいだが、自分でつくった分だけこのブログにのせとく<br><br>import org.jruby.Ruby;<br>import org.jruby.RubyInstanceConfig;<br>import org.jruby.runtime.builtin.IRubyObject;<br>import org.jruby.util.KCode;<br><br>public class MyRuby {<br>public static void main(String[] args) {<br>System.out.println("MyRuby start");<br>try {<br><br>RubyInstanceConfig config = new RubyInstanceConfig();<br>config.setOutput(System.out);<br>config.setError(System.out);<br><br>System.out.println("Ruby のインスタンス生成 start");<br>Ruby ruby = Ruby.newInstance(config);<br>config.getKCode().kcode(ruby);<br><br>System.out.println("Ruby のインスタンス生成 end");<br>//Ruby ruby = Ruby.newInstance();<br><br>ruby.setKCode(KCode.UTF8);<br>ruby.evalScriptlet("require \"kconv\"");<br>ruby.evalScriptlet("require \"base64\"");<br><br>//Javaと同じ標準出力をつかっているか確認するサンプル<br>ruby.evalScriptlet("print \"1\\n\"");<br><br>//アルファベットや漢字を表示できているか確認<br>ruby.evalScriptlet("print \"Hello World.\\n\"");<br>ruby.evalScriptlet("print \"こんにちは 新世界よ。\\n\"");<br><br>//グローバル変数の確認 グローバル変数は$がつきます。<br>ruby.evalScriptlet("$a = 'グローバル変数'");<br>ruby.evalScriptlet("print $a + \"\n\"");<br><br>//メソッド定義の実験<br>String code = "";<br>code = code + "\n" + "def printl(message)";<br>code = code + "\n" + "    print message + \"\n\"";<br>code = code + "\n" + "end";<br><br>ruby.evalScriptlet(code);<br>ruby.evalScriptlet("printl 'メソッド定義'");<br><br><br>//クラス定義の実験 一文字目は大文字で始まらなくてはなりません。<br>code = "";<br>code = code + "\n" + "class HelloClass";<br>code = code + "\n" + "    def initialize";<br>code = code + "\n" + "        print 'イニシャライズ' + \"\\n\"";<br>code = code + "\n" + "    end";<br>code = code + "\n" + "    def helloWorld (name)";<br>//code = code + "\n" + "        print 2";<br>code = code + "\n" + "        print \"hello\" + name + \"\\n\"";<br>code = code + "\n" + "    end";<br>code = code + "\n" + "end";<br><br>ruby.evalScriptlet(code);<br>ruby.evalScriptlet("$newinstance1 = HelloClass.new");<br>ruby.evalScriptlet("$newinstance1.helloWorld 'Eclipse'");<br><br>//ローカル変数は次のように;で区切るなどすると有効であります。<br>//これは、evalScriptletを実行すると新たにスコープを生成してしまうからです。<br>ruby.evalScriptlet("newinstance3 = HelloClass.new;newinstance3.helloWorld 'Java'");<br><br>//Javaから値の受け渡しテスト<br>String val1 = "東京特許許可局";<br>ruby.evalScriptlet("$val1 = \"" + val1 +  "\"");<br>ruby.evalScriptlet("printl '東京'");<br>ruby.evalScriptlet("printl $val1");<br>IRubyObject ro =  ruby.evalScriptlet("Base64.b64encode($val1)");<br>val1 = ro.toString();<br>System.out.println(val1);<br>val1 = Base64Util.decodeBase64(val1);<br>System.out.println(val1);<br><br>} catch (Exception e) {<br>e.printStackTrace();<br>} finally {<br>System.out.println("MyRuby end");<br>}<br>}<br><br><br><br><br><br><br>}
]]>
</description>
<link>https://ameblo.jp/hayashi92/entry-10356463329.html</link>
<pubDate>Sat, 03 Oct 2009 21:42:02 +0900</pubDate>
</item>
<item>
<title>JavaからJRubyをつかう際の文字化け回避策</title>
<description>
<![CDATA[ <br>JRubyをつかってみると、日本語の文字化けにバグとおもわれる状態であることが判明しました。<br>それは、evalScriptletをつかってJava側に値を格納する際に、日本語のutf-8とかに設定していても<br>無視してアスキー文字に変換かけているのです。<br><br>そこで、この問題を回避するために、Ruby側で日本語を含む文字をbase64ですべてアスキー文字に変換かけて、おけばJRuby側で文字コードの変換がかからないため、Java側でbase64を復元するということで<br>対応できました。<br><br>ちなみに、JavaでBase64の復元でよさげなクラスは<br>http://yamarou.at.infoseek.co.jp/javanawake/026.html<br>に記載されているのが、使い勝手がよかったです。<br><br>JavaMailがBase64のクラスをもっているのでダウンロードが必要<br>ダウンロード先はこちら<br>http://java.sun.com/products/javamail/
]]>
</description>
<link>https://ameblo.jp/hayashi92/entry-10356456635.html</link>
<pubDate>Sat, 03 Oct 2009 21:22:39 +0900</pubDate>
</item>
<item>
<title>Eclipseの起動がうまくいかない場合の対処メモ</title>
<description>
<![CDATA[ Eclipseの起動がうまくいかない場合<br>下記の対処で、なんとかうまくいった。<br>エラーになったら出てくる 画面の-vm の項目をみると、<br>javacが入っていないJAVAのパスが設定されているのが原因ではないかとおもう。<br>そこで、コマンドラインから<br>JAVAのJDKがインストールされているパスを下記のように指定したらうまくいった。<br><br><strong>eclipse.exe -vm C:\Java\SDK\jdk\bin</strong><br><br>以上<br><br>
]]>
</description>
<link>https://ameblo.jp/hayashi92/entry-10356129513.html</link>
<pubDate>Sat, 03 Oct 2009 12:57:12 +0900</pubDate>
</item>
<item>
<title>開発トラブルシュート　phpMyAdminの設定</title>
<description>
<![CDATA[ <br>XAMPPというツールで<br>データベースを修正できるphpMyAdminとかいうツールがあるんだけど<br>これの設定をせずに実行したら、<br><br>下記のエラーがでます。<br>「エラーが出たためセッションを開始できませんでした。PHP やウェブサーバのログファイルに出ているエラーを確認して、PHP を正しく設定してください。」<br><br>解決策はphp.iniの<br>session.save_path<br>に存在するパスを指定してやればOKなのでした。<br><br>
]]>
</description>
<link>https://ameblo.jp/hayashi92/entry-10342029054.html</link>
<pubDate>Sun, 13 Sep 2009 23:13:47 +0900</pubDate>
</item>
<item>
<title>ナルト アニバーサリーショップ</title>
<description>
<![CDATA[ <div align="center"><a href="http://stat.ameba.jp/user_images/20090829/14/hayashi92/34/42/j/o0240032010242815722.jpg"><img alt="アプリコット-090829_1408~01.jpg" src="https://stat.ameba.jp/user_images/20090829/14/hayashi92/34/42/j/t02200293_0240032010242815722.jpg" border="0"></a></div>
]]>
</description>
<link>https://ameblo.jp/hayashi92/entry-10331040010.html</link>
<pubDate>Sat, 29 Aug 2009 14:10:24 +0900</pubDate>
</item>
<item>
<title>サンバルソース</title>
<description>
<![CDATA[ <div align="center"><a href="http://stat.ameba.jp/user_images/20090829/12/hayashi92/5c/77/j/o0240032010242769631.jpg"><img alt="アプリコット-090829_1236~01.jpg" src="https://stat.ameba.jp/user_images/20090829/12/hayashi92/5c/77/j/t02200293_0240032010242769631.jpg" border="0"></a></div>海老のココナッツ煮にちょっとずつ加え味の変化を楽しむと説明がかいてあった
]]>
</description>
<link>https://ameblo.jp/hayashi92/entry-10330991255.html</link>
<pubDate>Sat, 29 Aug 2009 12:38:54 +0900</pubDate>
</item>
<item>
<title>スラバヤ</title>
<description>
<![CDATA[ <div align="center"><a href="http://stat.ameba.jp/user_images/20090829/12/hayashi92/2d/13/j/o0240032010242759400.jpg"><img alt="アプリコット-090829_1215~01.jpg" src="https://stat.ameba.jp/user_images/20090829/12/hayashi92/2d/13/j/t02200293_0240032010242759400.jpg" border="0"></a></div>
]]>
</description>
<link>https://ameblo.jp/hayashi92/entry-10330979908.html</link>
<pubDate>Sat, 29 Aug 2009 12:16:59 +0900</pubDate>
</item>
<item>
<title>目が光る</title>
<description>
<![CDATA[ <div align="center"><a href="http://stat.ameba.jp/user_images/20090829/11/hayashi92/73/03/j/o0240032010242748629.jpg"><img alt="アプリコット-090829_1152~01.jpg" src="https://stat.ameba.jp/user_images/20090829/11/hayashi92/73/03/j/t02200293_0240032010242748629.jpg" border="0"></a></div>
]]>
</description>
<link>https://ameblo.jp/hayashi92/entry-10330967414.html</link>
<pubDate>Sat, 29 Aug 2009 11:52:42 +0900</pubDate>
</item>
<item>
<title>ガンダム</title>
<description>
<![CDATA[ <div align="center"><a href="http://stat.ameba.jp/user_images/20090829/11/hayashi92/28/ee/j/o0240032010242744841.jpg"><img alt="アプリコット-090829_1143~01.jpg" src="https://stat.ameba.jp/user_images/20090829/11/hayashi92/28/ee/j/t02200293_0240032010242744841.jpg" border="0"></a></div>
]]>
</description>
<link>https://ameblo.jp/hayashi92/entry-10330963045.html</link>
<pubDate>Sat, 29 Aug 2009 11:44:24 +0900</pubDate>
</item>
</channel>
</rss>
