Code Archive Skip to content Google About Google Privacy Terms
Ajaxがブームになって以来ここ数年、自分内JavaScript使用頻度や期待度がアップしている。 Webページのカスタマイズでも、InDesignでもJavaScriptを使っている、ActionScriptもほとんどJavaScriptだし。 最近では、O'REILLYの "JavaScript: The Good Parts" という本さえ購入している。 ただ、JavaScriptを日常的に発生するいろいろな仕事に使おうと思うと、 ローカルファイルの読み書きが必要になるケースが多い。 JavaScriptにはその機能がないからなぁ〜と思っていたが、とんでもない勘違いだと今日気づいた。(のでメモ) JavaScriptでローカルファイルにアクセスする Rhinoを使って、Javaライブラリ経由でローカルファイルにアクセスする。それだけでOK。 簡単すぎるです。 しかし、Jythonとコ
File lockFile = new File("file.lock"); int retryCount = 30; // timeout = 3sec while (! lockFile.createNewFile()) { if ((retryCount--) == 0) { throw new LockFailedException("give up!"); } Thread.sleep(100); } try { // ファイルロックで保護された処理 ... } finally { lockFile.delete(); } マジックナンバーを使っていたり副作用のある式を条件式に使っていたりと、 気になるところはいろいろあるかも知れませんが、このコードの一番の問題は "File.createNewFile() に頼ったロック機構になっている" ことです。どういうことか簡単に説明して
AsyncHttpClientによるファイルのアップロード 前回に引き続き、Javaライブラリ「AsyncHttpClient」を用いた非同期HTTP通信について紹介する。ここまでの例ではGETリクエストによるデータの取得のみを扱っていたが、今回はファイルのアップロードについて考えてみよう。 AsyncHttpClientでは当然ながらGET以外のリクエストもサポートされている。それには、たとえばprepareGet()メソッドの代わりにpreparePost()やpreparePUT()などのメソッドを使用すればよい。さらに、ファイルの送信などを行う場合には、もっと便利な方法としてリクエストクエリを生成するcom.ning.http.client.RequestBuilderというクラスが用意されている。このクラスでは、リクエストに含める内容をsetXXXX()というメソッドに渡すことで
jettyは組み込んで使用されることが想定された設計になっているので 自作のウェブアプリケーションに組み込むことが簡単にできる。 jetty を埋め込む 次のコードを使えば、java -jar myapp.jar の形で実行できる配布パッケージをつくることができる。 Main.java import java.io.File; import org.mortbay.jetty.Server; import org.mortbay.http.SocketListener; public class Main { private static Server jettyServer; public static void main(String[] s) { int port=8080; if(s.length==1){ try{ port=Integer.parseInt(s[0]); } c
1.6より追加されたStandardJavaFileManagerを使用して、指定パッケージ内のクラス一覧を取得するサンプルです。 import javax.tools.DiagnosticCollector; import javax.tools.JavaCompiler; import javax.tools.JavaFileManager; import javax.tools.JavaFileObject; import javax.tools.StandardLocation; import javax.tools.ToolProvider; ... JavaCompiler compiler = ToolProvider.getSystemJavaCompiler(); JavaFileManager fm = compiler.getStandardFileManager(
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く