タグ

javaとJavaに関するscorelessdrawのブックマーク (223)

  • Joda-Time - Java date and time API - Home

    Joda Time - Java date and time API Joda-Time home page has moved. Redirect in 5 seconds. Click here for the old home page.

  • 数百キロのコードでブルー - ドクターTomcat緊急救命

    数百キロのコードでブルー - ドクターTomcat緊急救命:現場から学ぶWebアプリ開発のトラブルハック(14)(1/2 ページ) 連載は、現場でのエンジニアの経験から得られた、APサーバをベースとしたWebアプリ開発における注意点やノウハウについて解説するハック集である。現在起きているトラブルの解決や、今後の開発の参考として大いに活用していただきたい。(編集部) 人は真実を知りたがる…… そして、不幸が始まる ある晴れた日、温かい太陽の光を体に浴びながら、めずらしく爽快な気分で会社に出社した。しかし、その爽快な気分も長くは続かなかった。出社するなり、上司から次のようにいわれた。 「茨城で開発しているシステムが、リリース直前にナゾのフリーズに悩まされているようだ。支援依頼があったのだが、ちょっといって原因を調べてやってくれないか」 今回の現場は、都心から少し離れている。私は特急の乗車券を

    数百キロのコードでブルー - ドクターTomcat緊急救命
    scorelessdraw
    scorelessdraw 2010/05/26
    "数百キロのコードでブルー"
  • エンタープライズシステムの開発言語選定の一考察(C#とJava) - torutkのブログ

    アーキテクチャ設計の一部に、プログラミング言語の選択があります。選択に関わるのは仕事では10年振り(うん? ちゃんと数えると13年か・・・)です。3月から下調べを開始して、可能な限り公平に。 もちろん人間の判断なので、主観が大きく関与せざるを得ません。特にプログラミング言語は、パラダイムの選択になるので。 前提の明確化 技術選定にあたっては、前提を明確にしておかないと、果てしない議論に陥ってしまいます。 ここでは、開発対象をエンタープライズ・システムとします。エンタープライズ・システムは、開発期間よりも運用(保守)期間が数倍(たとえば、開発1年に対して運用10年といったことも珍しくない)になります。また、システム化範囲も昔に比べて増えてきており、その分作成されるアプリケーション規模(機能量)も大きくなります。 また、運用(保守)期間では、随時機能の変更・追加が行われる想定とします。 システ

    エンタープライズシステムの開発言語選定の一考察(C#とJava) - torutkのブログ
  • JNDI lookupを単体テストする方法 - よねのはてな

    JNDIをJ2EEサーバ無しでかつテスト用ライブラリも無しでテストする場合、InitialContextに自前でbindしてlookupします。 @BeforeClassだったり、setUpメソッドで以下のようにbindすると良いでしょう。 この例では、T2でCDIの単体テストを行う時に利用しています。 System.out.println("CdiTestCase#setUp"); System.setProperty(Context.INITIAL_CONTEXT_FACTORY, "org.apache.naming.java.javaURLContextFactory"); System.setProperty(Context.URL_PKG_PREFIXES, "org.jboss.weld.resources.ManagerObjectFactory"); ic = new I

    JNDI lookupを単体テストする方法 - よねのはてな
  • Javaアプリを高速起動する方法「JRubyテク」 | エンタープライズ | マイコミジャーナル

    JRuby - Java powered Ruby implementation Java仮想マシンで動作するRubyJRuby」はJavaがもっているさまざまな利点を利用できる興味深いプロダクトだが、Javaの欠点もそのまま引き継いでいる。もっとも顕著なのは起動時間が遅いことだ。これはLinuxなどでは特に気になる。一度起動が完了しJITが有効になったあとのJRubyは優れた速度を出すが、起動は遅い。小さいツールを作って利用するようなケースはJRubyは苦手ということになり、「起動が遅い」という悪名高い評判を得ることになる。 JRubyの主要開発者であるCharles Nutter氏がHeadius: JRuby Startup Time TipsにおいてJRubyの起動を高速化するための7つのテクニックを紹介している。いくつかはJRubyに特有のものだが、それ以外はJavaで動作する

  • Effective Java 読書会 8 日目 「それ enum で出来るよ」 - IT戦記

    はじめに 今日読んだところ 143 ページ〜 159 ページ 前回はこちら Effective Java 読書会 7 日目 「PECS! PECS! PECS!」 - IT戦記 int 定数とか使わない 型安全じゃないから enum 使う enum Hoge { FOO, BAR; } 簡単 メソッドも持てる enum Hoge { FOO, BAR; void a() { /* (snip) */ } } で、以下のように使う Hoge.FOO.a(); シングルトンも 最近の Java では enum でやるらしい! switch 文の代わりに固有メソッド enum Hoge { FOO { void a() { /*snip*/ } }, BAR { void a() { /*snip*/ } }; abstract void a(); } 以下のコードが // これはダメ swit

  • Effective Java 読書会 3 日目「それ Apache Commons で出来るよ」 - IT戦記

    はじめに じゃっばじゃばにしてやんよー♪っと ( ´ー`)フゥー...(゚Д゚)ハッ! どーん 今日読んだところ 45 ページ〜 66 ページ 前回はこちら Effective Java 読書会 2 日目 「equals night」 - IT戦記 hashCode 2 契約 シグニフィカントなフィールドを変更しなければ、いつ hashCode を呼び出しても値は変わらない x.equals(y) が true の場合は、 x.hashCode() == y.hashCode() が true equals をオーバーライドしたら hashCode もオーバーライドすべき 前述の 2 契約を守るために必要 x.equals(y) が false の場合 かならずしも、 x.hashCode() != y.hashCode() になる必要はないが、 値がバラけているほうが HashMap

    Effective Java 読書会 3 日目「それ Apache Commons で出来るよ」 - IT戦記
  • Javaバイトコードの読み方 - プログラマーの脳みそ

    Javaのデバッグをしていて、ステップ実行中にステップインを繰り返したらソースコードのないところに行き当たったことがあるだろう。あるいはEclipseでF3キーでクラスやメソッド・フィールドの宣言元を辿っていってソースコードのないところに行き当たったことがあるだろう。 Eclipseの場合、"Class File Editor"というものが開く。そこにはJavaのバイトコードのニーモニックがズラズラと並んでいて、「これは読めないや、ワケが分からない」と投げ出してしまったりしていないだろうか。 怖がることはない。ちょっとコツを掴めばすぐに読めるようになる。 Class File Editorの開き方 自前のJavaクラスの場合、ビルドして出来上がったclassファイルを開く必要がある。"Package Explorer"だとclassファイルは隠されていて見えないのでWindow -> Sh

    Javaバイトコードの読み方 - プログラマーの脳みそ
  • Java変態?コード最速マスター - うなの日記

    Java変態文法最速マスター - プログラマーの脳みそが面白かった && 参考になったので便乗してリスペクト。変態世間であまり見かけない(かも知れない)Javaコードを、過去のエントリからまとめてみました。 nullでなければループ 「配列がnullでなければループ」というシーンはまれにありますが、nullチェックのためにインデントが深くなるのが我慢ならん、というときにこういう記述はどうでしょう。 String[] strs = // 略 // 配列がnullでなければ各要素に対して処理を実行 if ( strs != null ) for ( String str : strs ) { // 処理 } if文の「{}」を省略してforを繋げているだけですが、インデントをさりげなく削れます。 似たような例で、「例外を無視して次へ」とかも。 // 例外が発生しても無視して次へ for ( S

    Java変態?コード最速マスター - うなの日記
  • Java変態文法最速マスター - プログラマーの脳みそ

    Java基礎文法最速マスター - いろいろ解析日記をリスペクト。 Javaの変態文法・技法一覧です。Javaの基礎をある程度知っている人はこれを読めばJavaの変態をマスターしてJavaを書くことができるようになっています。簡易リファレンスとしても利用できると思いますので、これは足りないと思うものがあれば教えてください。 1.基礎 エンクロージング型内部classの作成 外部classのインスタンスに紐付くインスタンスを生成します。外部クラスのインスタンス - 内部クラスのインスタンス間に、クラス - インスタンスのような関係を持たせることができます。 public class Outer { public class Inner { } } というようなクラスを作った場合、 Outer o = new Outer(); Inner i = o.new Inner(); となります。new

    Java変態文法最速マスター - プログラマーの脳みそ
  • Office Open XML形式に対応したPOIの概要と環境構築

    はじめに POIはJavaからMicrosoftのドキュメントを操作するためのAPIで、2007年6月からApache Software Foundationのトップレベルプロジェクトに格上げされました。オープンソースとして提供されているので誰でも無償で利用することができます。 なぜ初期のリリース後、7年以上も経過し、多くの情報が存在するPOIを今回あらためて取り上げることにしたかと言うと、2009年9月リリースのVersion 3.5でOffice Open XML形式(以降、OOXML形式)への対応という大きな変更が加わったからです。 分かりやすくいうと2007形式のExcel(xlsx)やWord(docx)のファイルも扱えるようになったということです。 連載では、POIの中からExcelを操作するコンポーネント(HSSF/XSSF)に対象を絞り、下記の予定で紹介していきます。 準

    Office Open XML形式に対応したPOIの概要と環境構築
  • Play Framework - Build Modern & Scalable Web Apps with Java and Scala

    Play Framework makes it easy to build web applications with Java & Scala. Play is based on a lightweight, stateless, web-friendly architecture. Built on Pekko (Play 3) and Akka (Play 2), Play provides predictable and minimal resource consumption (CPU, memory, threads) for highly-scalable applications. Developer friendly. Make your changes and simply hit refresh! All you need is a browser and a tex

  • 2009-12-21 - Secret Sword!!!

    なぜか? おまじないの量が多くなってしまうから 一般的なHelloWorld public class HelloWorld { public static void main(String[] args) { System.out.println("Hello,World!"); } } staticとかStringとかSystemとかmainとか色々難しそう あと、このHelloWorldだと色々省略した結果このコードになっていることに気づけないんじゃないだろうか どうやったら初心者にやさしいJavaになるんだろうか 色々と省略しないで書いてみる public class HelloWorld { public static void main(java.lang.String[] args) { java.lang.System.out.println("Hello,World!")

    2009-12-21 - Secret Sword!!!
  • IBM Developer

    IBM Developer is your one-stop location for getting hands-on training and learning in-demand skills on relevant technologies such as generative AI, data science, AI, and open source.

    IBM Developer
  • JRubyのJはJVMのJ

    原文:トム=エネボ 現在JRubyの開発に携わっている面々は皆RubyJava、そして勿論JRubyを熟知している情熱的なハッカーばかりです。とは言うものの、このプロジェクトの創成に関わった者は一人も居ません。JRubyの先駆者たちはそれがいいアイディアだったと考えたに違いありません—私もJRubyのことを初めて耳にした時そう思いました。ところが多くの人にとってはこれはそう自明の事では無いのかも知れません。そういう人たちは「JVMの上でJRuby書いていい事なんかあるのですか」と訊きます。僕らJRubyチームはちょっとネジが外れてるか、狂気の天才なのか、それともJVMを使うのは至極実利的な決断なのでしょうか。 Javaは登場した当時、存在していたプログラム言語をちょっと良くしたような物でした。Javaはそこそこ簡単であり、かつ既によく使われていたCやC++を進化させたような物であるにも拘

    JRubyのJはJVMのJ
  • ソースコードスカウター

    ソースコードスカウター[Java版](だたしUTF-8に限る) '*.java', '*.jar' or '*.zip' ※ランキングへの登録は任意です。 '*.java', '*.jar' or '*.zip' ※アップロードだけして、後で中の人に戦闘力を測ってもらうボタンです。 ※ランキングへの登録は必須です。 順位コード戦闘力 1 フリーザ(第1形態) 530000 2 spring-core-2.5.6-sources.jar 40445 3 wicket-1.5-20091020.092029-27-sources.jar 30909 4 ザーボン 23000 5 ドドリア 22000 6 teeda-core-1.0.13-sp8-sources.jar 13342 7 dolteng-src.jar 12533 8 mayaa-1.1.27-sources.jar 11548

  • Servlet APIにファイルアップロードが用意されたのはみんな知っていると思うが - しんさんの出張所 はてなブログ編

    つりくさいタイトルのほうがいいらしいので。 実はJavaOne時に発表されたpreview版では未実装だったのだけれども、今最新版にしてみたらちゃんと動いたので報告。 JavaEE 6、つまりServlet 3.0ではServletの定義にweb.xmlが必要なくなるとかソースで動的にフィルタやサーブレットを設定可能になったりかなり便利になったと思う。 この辺参照 http://d.hatena.ne.jp/shin/20090616/p1 ほかにも大きいものとしてやっと標準でマルチパートに対応した。つまり、サーブレットAPIで簡単にファイルアップロードが出来るのである。 ソースを見てもらうのが手っ取り早いので先に乗せる。 index.jsp <%@page contentType="text/html" pageEncoding="UTF-8"%> <!DOCTYPE HTML PUBL

  • 【ハウツー】シンプル&タイプセーフなJava用モックライブラリ"Mockito"の魅力 (1) Mockitoとは? | エンタープライズ | マイコミジャーナル

    ユニットテストを記述する際に問題になるのがモックの作成方法だ。テストケース時にモックに差し替えることを想定してしたコードであればテストケースでモックに差し替えることは難しくない。しかし、差し替えるモックを作成する手間は馬鹿にならない。そこで登場するのがモックライブラリだ。 モックライブラリはテストケースで使用するためのモックオブジェクトを手軽に作成するためのものだ。実際にモックオブジェクトのクラスを定義しなくても、動的にモックオブジェクトを作成できるものが多い。 Java向けのモックライブラリにはJMock、EasyMockなどさまざまなものがあるが、稿で紹介するのはMockitoという比較的新しいモックライブラリだ。 MockitoのWebサイト MockitoはMITライセンスで開発されているオープンソースソフトウェアで、他のモックライブラリと比較して直感的な記述でモックの挙動を設定

    scorelessdraw
    scorelessdraw 2009/07/17
    "なお、MockitoにはPython版やFlex版も存在する。"
  • 5年後に後悔しないJavaプログラムの書き方 - L'eclat des jours(2009-07-02)

    _ 5年後に後悔しないJavaプログラムの書き方 ここ数日、死ぬほど後悔しまくっているので、あらためて(というのは、数年前にも一度後悔しまくって、そのときの知見はあらかた処方箋とかコーディングの掟に書いているからだが)後悔しないための書き方をいくつか紹介する。 とにかく、ファクトリメソッドパターンを使うこと。 これは当に重要。しかも簡単でありながら効果は絶大。 だめな例。 public class FooBar { private Connection conn; ... protected void setup() { ... conn = DriverManager.getConnection(url); ... } urlを指定することや、DriverManagerの実装を交換すれば良いだろうと想定していても(というか、Connectionならそういう方法もあり得るが、そうはいかな

  • HOT deploy が遅くなるとき - 日記

    実際に利用してみての注意点としては,再起動せずに変更を反映するホット・デプロイ機能は,クラス数が多くなると遅くなることを挙げた。開発が進みクラスが増えてくると,最終的はホット・デプロイを使わずにアプリケーション・サーバーを再起動した方が早くなったという。 Seasar Conference 2009 White でもそんな話があったようだし,最近 ML でも問い合わせがあったし,某巨大掲示板でも話題になってたので,少し (?) 書いておきます. まず,HOT deploy では必要となったコンポーネントだけがロードされます. 例えば Web アプリであれば SAStruts や Teeda などのフレームワークがリクエストに応じて fooAction とか fooPage という名前のコンポーネントを Seasar2 に要求するところから始まります. その際,Seasar2 はファイルシス

    HOT deploy が遅くなるとき - 日記