タグ

Javaとjavaに関するpiro_sukeのブックマーク (363)

  • Clojure - JavaVM上で動作するLisp - argius note

    http://clojure.sourceforge.net/ こういうのあると思ってたけど、やっぱりあった。LispからJavaが呼べるんです。CommonLispとかとはちょっと構文とか予約語?とかが異なる一種のLisp方言ですが、基的にはLispのようです。 Wikiの内容が充実しているようなので、詳しくはそちらを。とりあえず、src/の下にある*.cljファイルを見たり、ソースコードを見たりしてみました。定義済みシンボル一覧は下記のように grep してみると、意味が分かるものがいくつか見つかるので、それを頼りに。 $ fgrep "(defn " $CLOJURE_HOME/src/boot.clj | sort -jar オプションで起動すると、インタラクティブモードで起動します(Replクラス)。引数にClojureコードのファイルを指定すると、起動時にロードします。 $

    Clojure - JavaVM上で動作するLisp - argius note
  • 「メモリーを意識してみよう」第1回 ヒープがどのくらい使われているかを理解する

    Javaのメモリーはガーベジ・コレクタが管理するため,アプリケーション側ではそれほど気にするありません。しかし,全く気にしないわけにはいかないのも実情です。 小さいアプリケーションでは無頓着であっても構いませんが,大規模になればそうもいってはいられません。使用メモリー量,ガーベジ・コレクション(GC)の頻度,リークの有無などは,できればチェックしておきたい項目です。 Javaではメモリーを複数の領域に分割して管理しています。クラス定義やメソッドなどのデータが格納されるPermanent領域や,インスタンスが割り当てられるヒープなどがあります。このような領域がどのように使用されているかを知ることは,パフォーマンスを考えるうえでもとても重要になります。 ここでは,特にヒープに着目していきたいと思います。 ヒープの使用量を知る まずはヒープの使用量がどのくらいになっているかを調べてみましょう。

    「メモリーを意識してみよう」第1回 ヒープがどのくらい使われているかを理解する
  • 1分でWebアプリを作れるEclipseプラグイン「Dolteng」

    1分でWebアプリを作れるEclipseプラグイン「Dolteng」:Java初心者が超俊敏にWebアプリを作る方法(1)(1/3 ページ) Javaの業務用Webアプリ開発に必要なもの 読者の皆さんは、Javaで業務用のWebアプリケーションを開発するのに必要なものとして何を思い浮かべるでしょうか。統合開発環境? サーブレット/JSP? アプリケーションサーバ? Struts? DB接続のO/Rマッピング? DIコンテナ? 技術的には、これらも確かに必要です。また、アプリケーションが“安全”に“確実”に動くことが業務で使うときには求められます。 上記は当然のものとして、“仕事”として売り上げを上げるためにアプリケーション開発を行う場合に一番求められるのは、アプリケーションを一から開発する際や、デバッグ/修正する際の“速さ”や“俊敏さ”ではないでしょうか。 たとえJava言語の初心者、また

    1分でWebアプリを作れるEclipseプラグイン「Dolteng」
  • Java 暗号化拡張機能 JDK5.0

    Java Is the Language of Possibilities Java is powering the innovation behind our digital world. Harness this potential with Java resources for student coders, hobbyists, developers, and IT leaders.

  • Java Tip 26: How to improve Java's I/O performance

  • Java 暗号化拡張機能 JDK5.0

    Java Is the Language of Possibilities Java is powering the innovation behind our digital world. Harness this potential with Java resources for student coders, hobbyists, developers, and IT leaders.

  • 502 Bad Gateway

  • Groovy - Home

    Groovy WikiGroovy... is an agile and dynamic language for the Java Virtual Machine builds upon the strengths of Java but has additional power features inspired by languages like Python, Ruby and Smalltalk makes modern programming features available to Java developers with almost-zero learning curve supports Domain-Specific Languages and other compact syntax so your code becomes easy to read and ma

  • ドリコムブログは Java で動いています - onkはギリギリ霊長類

    さっきラーメンいに行ったときに話題にしたら興味深く聞いて貰えたので調子に乗って書いちゃえ。 とりあえず id:rokujyouhitoma はスイーツをべ過ぎだと思います。一晩にパフェ 3 つも頼むヤツは初めて見た。 さて,まずコレが意外に知られていなくてよくビックリされるんですが,ドリコムブログの基部分は Java で,Struts,Hibernate で動いてます。DB は PostgreSQL。 で,ブログの HTML 生成部分は以下のような感じ。 1. Web サーバがリクエストを受け取り,URL を組み立て直して AP サーバにリダイレクトフォワード 静的ファイルはそのまま Web サーバが返し,動的ファイルは AP サーバに投げます。このとき,400 行程度の RewriteRule を通して mod_rewrite で URL を組み立て直しています。 サブドメイン化し

  • 実現場でTestNGを活躍させる“5”つのテクニック

    実現場でTestNGを活躍させる“5”つのテクニック:次世代テストフレームワークでテストを変える(3)(1/3 ページ) 前回の記事「JUnitにはないTestNGの“5”つの強力なテスト用機能」では、JUnitにはないTestNG独自の機能を解説し、TestNGの魅力を紹介しました。 最終回である今回は、ライブラリとの連携やAntからの利用、レポートの出力などプロジェクトで実際にTestNGを活用する際に必要となる5つのテクニックを解説します。 【1】Antからテストをサクッと実行! これまでテストはEclipseプラグインを使って実行しましたが、TestNGにはAntのタスクがあるため、Antからテストを実行することもできます。Antについては下記記事が参考になります。 <taskdef resource="testngtasks" classpath="testng-X.X-jdk1

    実現場でTestNGを活躍させる“5”つのテクニック
  • Java/GrailsのWebアプリを無料クラウド環境で動かす (1/3) - @IT

    Java/GrailsのWebアプリを 無料クラウド環境で動かす 【特集】Ruby on Railsも動かせる「Morph AppSpace」とは? 株式会社 クロノス 奥 清隆 2008/9/18 Web上のリソース=雲? 「クラウド環境」って何? 「クラウド環境」とは、インターネットなどのネットワーク/Web上に存在するさまざまなリソース(データベースや、HTTPサーバ、アプリケーションサーバなど)を、利用者がリソースの所在を意識せずに利用できる環境のことです。ネットワーク/Webを“雲(クラウド)”に例え、雲の中にあるリソースを利用する環境から、「クラウドコンピューティング」などの呼び名が付いています。 例えば、セールスフォース・ドットコムのForce.comや米アマゾンのAmazon EC2((Elastic Compute Cloud)/S3(Simple Storage Ser

  • JUnitにはないTestNGの“5”つの強力なテスト用機能

    さらに詳細な情報は、TestNG公式サイトのドキュメント(英語)を参照してください。特に注目する属性は、groupsとdependsOnXXXです。 テストを簡単にグループ分けできる「groups」属性 groups属性には、テストが所属するグループを任意の文字列で指定します。groups属性を使うと、テストを簡単にグループ分けできます。1つのテストを複数のグループに入れることもできます。 ブログやソーシャルブックマークでのタグ付けのようなイメージです。 テスト間の“依存”関係とは? そして、dependsOnXXX属性を使うと、テスト間に“依存”関係を作ることができます。属性の使い方の前に、テスト間の“依存”関係について考えてみましょう。 例えば、データベースに接続し、SQL文を発行するSampleDaoクラスがあるとします。SampleDaoには、データベースに接続するconnect(

    JUnitにはないTestNGの“5”つの強力なテスト用機能
  • 1万件データ表示で知るFlex+Javaアプリの“速さ”

    1万件データ表示で知るFlex+Javaアプリの“速さ”:業務用RIAの命!? Flex+Java開発入門(5)(1/2 ページ) 連載では、サーバサイドとして「Java」、リッチなクライアントサイドとしてJavaと相性の良い「Adobe Flex」(以降、Flex)を用いたRIA開発の基礎を解説します。EclipseベースのIDEである「Flex Builder」を使って、「Tomcat」で動くeラーニングのRIAが完成するまでお届けする予定です 編集部注:Flex Builderは、2010年3月の新版から「Flash Builder 4」に名称変更しています。期間限定の無料版をダウンロードして使えます いっそのことデータはサーバから1回で全部ダウンロード 今回は、いままでのWebアプリケーションでは比較的難しかった「大量データ表示アプリケーション」をFlex+Javaで作成したい

    1万件データ表示で知るFlex+Javaアプリの“速さ”
  • http://articles.techrepublic.com.com/5100-10878_11-5054618.html

  • オブジェクトを手軽にソートする

    int[] ia = {10, 5, 30, 20, -18, 0, 50}; // 適当なint型の配列 java.util.Arrays.sort(ia); この結果、iaが昇順にソートされます(-18, 0, 5, 10, 20, 30, 50)。iaの中身が書き換えられることに注意してください(sortの戻り値はvoidです)。ソートのアルゴリズムは修正クイックソートが用いられています。クイックソートは最悪の場合(ソート済のデータ)の時間計算量がデータ数nの2乗に比例することが知られていますが、このメソッドではそのような場合にも(n*log n)に比例する時間で実行できる修正がなされています。 オブジェクトをソートする 単に数値型の配列をソートするのではなく、データをフィールドに持つオブジェクトをソートすることもあります。例えば、String型のフィールドを持つDataクラスを、そ

    オブジェクトを手軽にソートする
  • 数値の0埋め

    概要 数値を 0埋めしてある特定の桁に合わせる効率のよい方法を考察する。java.text.DecimalFormat を使用することで同様な処理が可能だが、予めフォーマットを用意する必要があり、桁数を指定 するといった使用はできない。 一文字づつ連結 単純に「0」を for 文で回しながら連結する。繰り返し回数は「指定桁数 - 元の数値の桁数 - 1」 である。123 を 0埋めして 6桁にする場合に必要な「0」の個数は 3つであるから、"0"+"0"+"0" で 2回の繰り返しが必要となる("0"に"0"を二回加える)。 文字列の自己連結 このアルゴリズムは「log2(指定桁数 - 元の数値の桁数)」回(小数点切り上げ)の繰り返しで処理を 完了する。まず文字列表現が"0"である StringBuffer を生成し、これの長さが「指定桁数 - 元の数 値の桁数」より大きくなるまで自身を追

  • 0埋めや桁数指定などフォーマット指定の文字列を取得する - unsigned

    0埋めの文字列に変換する。 String.format("%04d", num); 数値を16進数で表現する。 String.format("%x", num); 小数点の桁数を指定する。 String.format("%8.3f", num); 詳しくはAPIを参照のこと Oracle Technology Network for Java Developers | Oracle Technology Network | Oracle

    0埋めや桁数指定などフォーマット指定の文字列を取得する - unsigned
  • Java リフレクション が簡単に

    ビジネスチャット、Web会議、スケジュール、文書管理、ワークフロー、勤怠を統合したグループウェア | Web会議の Chat&Messenger

    Java リフレクション が簡単に
  • Java で文字列をMD5ダイジェストの16進数形式文字列に変換するには - tilfin's note 跡地

    public String createDigest(String source) { MessageDigest md = MessageDigest.getInstance("MD5"); byte[] data = source.getBytes(); md.update(data); byte[] digest = md.digest(); StringBuilder sb = new StringBuilder(); for (int i = 0; i < digest.length; i++) { int b = (0xFF & digest[i]); if (b < 16) sb.append("0"); sb.append(Integer.toHexString(b)); } return sb.toString(); } ※ご指摘のゼロ補完処理を追加(2012/2/25)

    Java で文字列をMD5ダイジェストの16進数形式文字列に変換するには - tilfin's note 跡地
  • MD5 値の取得方法

    メッセージダイジェストの取得は java.security.MessageDigest を使って簡単に可能です。 MessageDigest#getInstance(String algorithm) を使用してアルゴリズムを指定した MessageDigest のインスタンスを取得します。 アルゴリズム には MD5 の他 SHA-1 等有名なメッセージダイジェストは、ほとんど使用可能なようです。 byte 配列から MD5 byte 配列からメッセージダイジェストを取得する場合は非常に簡単で、MessageDigest#digest で取得可能です。 以下にコードのサンプルを書きます。 ※パスワードの保存等で利用します。 MessageDigest digest = MessageDigest.getInstance("MD5"); byte[] hash = digest.diges