タグ

javaに関するuchoのブックマーク (109)

  • Netty の基本 - hozumiの日記

    ここ数日、Nettyについて調べていたので理解できたことを書きます。 JBoss Netty Netty は Java で非同期、イベント駆動のネットワークアプリを作るためのフレームワークです。Netty を使うと早くて簡単にハイパフォーマンス、ハイスケールでメンテナンス性がいいものが作れます。いいとこ取りの全部乗せです。 なぜハイパフォーマンス、ハイスケールか? Netty は Java NIO(New I/O)をラップしていて、ノンブロッキングなIO操作ができます。そのため、1つのコネクションにずっと1スレッドを割り当てる必要がないため効率のよいリソース消費をします。従来のブロッキングなOIO(Old I/O)もサポートしており、僅かな変更で好きな方を使えます。また、NIOの複雑なByte BufferをChannelBufferというオブジェクトに抽象化し、不必要なコピーが発生しない

    Netty の基本 - hozumiの日記
    ucho
    ucho 2012/02/05
  • iPicasa ビューア

    ケータイのPicasaアップローダーまで作ったので、ビューアの機能を折角だから追加しようと思う。 iモードから既に閲覧できるので、それよりは便利にしないと意味ないけどね。 で、Google Data APIをつかって画像データを取得するプログラムを書いてみた。 以下は、PhotoEntry に格納されているMediaContentのURIから、データを取得してファイルに保存するプログラム。同様のことをサムネイルのデータにも行っている。 for (PhotoEntry entry : photos) { MediaContent content = (MediaContent)entry.getContent(); InputStream is = new URL(content.getUri()).openStream(); FileOutputStream os = new FileOu

    ucho
    ucho 2011/12/07
    Picasaの画像データ本体にアクセスする方法。MediaContentのURIからストリームを開くと取得できる。
  • セキュアなソフトウエア開発を支援する資料 | JPCERT コーディネーションセンター

    Java セキュアコーディング 並行処理編」 「Java セキュアコーディング 並行処理編」(原著 CERT/CC「Java Concurrency Guidelines」)は、カーネギーメロン大学ソフトウエア工学研究所の CERTプログラムと Oracle の共同作業の成果である「CERT Oracle Secure Coding Standard for Java」の中から、次のカテゴリに含まれる並行処理プログラミングに関連したガイドラインをまとめた資料です。 可視性とアトミック性(VNA) ロック(LCK) スレッドAPI(THI) スレッドプール(TPS) スレッドの安全性に関する雑則(TSM) セキュアな Java マルチスレッドプログラミングに取り組む際の手引きとしてご活用ください。 資料に記述されたガイドラインを含む「CERT Oracle Secure Coding S

    セキュアなソフトウエア開発を支援する資料 | JPCERT コーディネーションセンター
  • 一意番号採番 - asa nisi masa

    一意番号を採番したい。なお、採番処理はミリ秒より短い間隔で呼ばれる。DBは使わないため、sequenceは使えない。できれば、一意であるだけでなく、採番された番号の大小が逆転しないほうがよい。採番結果はユーザに見せるかもしれない。 いくつかブレストしてみた。 結論 方法1-(1) と方法2のMIX。 まず、スレッドID+ナノ秒でお手軽に採番(方法1-(1))し、重複した場合は、採番しなおす。(方法2) ソースの雰囲気 public class Hoge{ private String saiban(){ return Thread.currentThread().getId() + "" + System.nanoTime() + ""; } public void regist(){ MyObject obj = new MyObject(saiban()); boolean ok =

    一意番号採番 - asa nisi masa
  • 第11回 JavaのみまたはJavaScriptのみでのWebアプリケーション開発が可能な「Echo Web Framework」 | gihyo.jp

    格派エンジニアの工具箱 第11回JavaのみまたはJavaScriptのみでのWebアプリケーション開発が可能な「Echo Web Framework」 Echo Web Frameworkとは 「Echo Web Framework」(⁠以下、Echo)は、Ajaxに対応したオープンソースのWebアプリケーション・フレームワークです。Webアプリケーション開発向けのフレームワークは無数に存在しますが、Echoがそれらのフレームワークと大きく異なるのは、サーバサイドのJavaコードのみによるアプリケーション開発と、クライアントサイドのJavaScriptのみによるアプリケーション開発の両方を同時にサポートしている点です。 Javaコードによるアプリケーション開発では、AWT/Swingに似たコンポーネント・ベースのプログラミングモデルによってUIを作成します。クライアントとサーバとの通信

    第11回 JavaのみまたはJavaScriptのみでのWebアプリケーション開発が可能な「Echo Web Framework」 | gihyo.jp
  • HTTPサーバにJava NIOは必要か

    0x00. はじめに 筆者はJava製のWAF(Web Application Firewall)、Guardian@JUMPERZ.NETの開発とメンテナンスを行っている。元は自社のシステムを守るために(そして半分趣味で)作ったものだが、数年前にこれをコアのエンジンとしてさらに拡張し、SaaS型の商用サービス「Scutum(スキュータム)」を立ち上げた。 その後順調に顧客を獲得することができ、システムリソース的にも増強が必要となる段階などを経験した。Google、mixiやはてな等、さまざまな大規模サイトのインフラエンジニアの方々がインフラ設計に関する考え方などをインターネット上で公開してくれているおかげで、初期のシステム設計時に「将来的にスケールアウト可能なシステム構成にしておくこと」が重要であるということがわかっていた。その教えに従っていたおかげで、リソースの逼迫(ちなみに今回はCP

    HTTPサーバにJava NIOは必要か
  • Which java YAML library should I use? - Stack Overflow

    Andrey gave a thorough summary of all four libraries. Here's my personal experience with two of them. At my job we use both JYaml and SnakeYAML. We started with JYaml in the 2007-2008 timeframe when it appeared to be active. It has API similarities with XStream, which is a benefit for us. I introduced SnakeYAML in mid-2009 when I encountered a bug in JYaml and noticed there have been no new JYaml

    ucho
    ucho 2011/04/24
    JYamlは有名だけど古いしメンテが止まってる。SnakeYAMLはPyYAMLのポーティングで割と新しくてMaven2でさくっと入る。
  • いろんなJava Webフレームワークで同じ画面を作ってみる(Index) - よしなしごと

    11夜連続企画(できなかったらすみません)。 いろんなJava Webフレームワークで同じ画面を作ってみます。 まぁ、よくある足し算プログラムです。 題材 足し算プログラム 計算結果は、別画面に遷移し出力する。 submit時にリクエストパラメータ名称で処理を切り分けるパターンを検証。 バリデーションは、必須チェックと整数チェック。 エラーメッセージは、一括で出力するパターンと、フィールド毎に出力するパターンを試す。 DBアクセスはないよ。 取り上げてみるフレームワーク 以下、記事へのリンクになってます。 Slim3 Struts1 Struts2 SAStruts Teeda(JSF) Spring MVC 3.0 Stripes Cubby2 Click Wicket Mojarra(JSF2) T2framework(追加) Play!(追加) Ninja (追加) そして、総括。

    いろんなJava Webフレームワークで同じ画面を作ってみる(Index) - よしなしごと
  • JavaVM対応のWebフレームワークを比較する

    SpringやStrutsやGoogle Web Toolkitなど、たくさんあるJava VM対応のWebフレームワーク。どれがどのような特徴を持ち、何を選べばいいのでしょう? 11月15日から行われたJava開発者が集うイベント「Devoxx 2010」。このイベントで行われたMatt Raible氏によるセッション「Comparing JVM Web Frameworks」(JVM Webフレームワークの比較)のプレゼンテーションが、同氏のブログにポストされたエントリ「My Comparing JVM Web Frameworks Presentation from Devoxx 2010」で公開されています。 その内容は、開発者の方々に非常に参考になるのではないかと思うので、全56枚のプレゼンテーションの中からポイントとなる部分を紹介します。 評価優秀とされたのはSpring、GW

    JavaVM対応のWebフレームワークを比較する
    ucho
    ucho 2010/12/19
  • JavaMemoJTextAreaの自動スクロール

    JScrollPaneの中にJTextAreaを入れ、 (JTextArea)jta.append("文字列"); としても、文字列を追加した時に自動でスクロールはしてくれません。 これは、Caretの位置が最終行に来てない為です。 よって、JTextAreaの宣言時にappendをオーバーライドすれば解決できます。 jTextArea = new JTextArea(){ @Override public void append(String str) { super.append(str); jTextArea.setCaretPosition(jTextArea.getDocument().getLength()); } }; この方法以外にも色々やり方がありそうですね。

    ucho
    ucho 2010/11/21
    勝手にスクロールされるのを防ぐためにもこの方法は使える
  • JPA注釈の参照情報

    JPA注釈の参照情報 バージョン: 05/04/07 GlassFish: バージョン2、Build 41 Java Enterprise Edition 5(Java EE 5)Enterprise Java Beans(EJB)3.0仕様の一部であるJava Persistence API(JPA)は、Javaの永続性を大幅に簡易化し、Javaオブジェクトをリレーショナル・データベース表へ宣言的に定義する、標準的かつ移植性の 高いオブジェクト・リレーショナル・マッピング・アプローチを提供します。このアプローチは、Java EE 5アプリケーション・サーバーの内部およびJava Standard Edition(Java SE)5アプリケーションのEJBコンテナ外部の両方で動作します。 JPAを使用すると、注釈を使用してエンティティのJPA動作を構成できます。 注釈とは、Javaソース・

    ucho
    ucho 2010/10/24
    JPAについて詳しくまとまっているサイトがここくらいしかなかった…
  • 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.

    ucho
    ucho 2010/10/23
  • エンタープライジーなREST - L'eclat des jours(2010-08-10)

    _ エンタープライジーなREST オライリーから私が監訳(という作業を初めて経験したわけですが、それは別の物語)した、『JavaによるRESTfulシステム構築』というが近々出ます。 JavaによるRESTfulシステム構築(Bill Burke) このは、実にいろいろな面からおもしろいおもしろいので、オライリーの編集の方に翻訳して出版する価値もあれば意義もあるとお勧めしたわけで、当然、読むことをお勧めします。 さて、何がおもしろいのか。一端は後書きに書いたけど、当然、書ききれない点や後書きに書いてもしょうがない点とかは省略しているので、そのあたりを含めて紹介します。 1. 著者がBill Burke これはおもしろい。というのは、BillはJBoss野郎なのだ。当然、CORBAからのORPC男。当然EJB。もちろんEJB3。 なぜ、そのBillが『JavaによるRESTfulシステ

    ucho
    ucho 2010/08/28
  • Javaバイトコード入門

    JJUG CCC 2015 Spring 「新人エンジニア奮闘記 - Javaって何?からwebサービスを公開するまで -」発表スライドToshiakiArai

    Javaバイトコード入門
    ucho
    ucho 2010/08/13
    みずしまくん!
  • 単体テストを“神速”化するQuick JUnitとMockito

    単体テストを“神速”化するQuick JUnitMockito:ユカイ、ツーカイ、カイハツ環境!(16) Quick JUnitプラグインの3つの大きな特徴 近年、JUnitとHudsonを利用した継続的インテグレーション(CI)によるテストの自動化や、テスト駆動開発(TDD)の普及などにより、ユニットテスト(単体テスト)のテストコードの作成が重要視されています。 今回紹介する「Quick JUnit」プラグインは、JUnitによるテストコードの作成と実装を支援するEclipseプラグインです。Quick JUnitプラグインは石井勝さんにより開発されていましたが、石井さんが不慮の事故により死去後、Quick JUnitプラグインプロジェクトにより開発が継続されています。優れたオープンソースプロジェクトの模範のようなプロジェクトです。 訂正のお知らせ 故人のお名前について間違いがあり、修

    単体テストを“神速”化するQuick JUnitとMockito
  • Javaのためのクラウドを作る、VMwareのSpringSource部門ゼネラルマネージャが来日

    VMwareでSpringSoruce部門のゼネラルマネージャのRod Johnson氏が来日し、プレス向けのメディア説明会を行いました。 VMwareは、セールスフォース・ドットコムと共同でクラウド上のJava実行環境「VMforce」、そしてグーグルとも共同でSpringフレームワークとGWT(Google Web Toolkit)を統合しGoogle App Engine上でサポートすることを表明。いま、Java対応のクラウドサービスを提供するベンダとして存在感を高めつつある同社の戦略を、あらためて聞きました。 SpringSourceはもともとはSpringフレームワークと呼ばれるJavaのフレームワークをオープンソースで開発するベンダでした。Springフレームワークは非常に人気のあるフレームワークで、WebLogicやWebSphereなど既存のミドルウェア上でも利用され、また

    Javaのためのクラウドを作る、VMwareのSpringSource部門ゼネラルマネージャが来日
  • IBM Developer

    ucho
    ucho 2010/05/31
  • Cubby on Jetty - 脱線こそ本道

    今回の脱線: jettyのmaven2リポジトリは構成がバージョンによってむちゃくちゃなのでdependencyの指定に注意 夜中のCubbyの続きです。無事、スケルトンはできあがったのですが、なぜかJettyで動かしたいという脱線欲が出てきてしまいました。 僕はEclipseのTomcatプラグインがなぜかあまり好きではないのです。理由は分からないですが、Tomcatにしか対応していないとか、勝手にアプリケーションサーバをダウンロードしてくれないとか、そういう所のような気がします。 そこでJettyのランチャを書いて、そいつをEclipse上で[Run as...]とか[Debug as...]するようにしようと思います。 まずは、作成したCubbyのスケルトンプロジェクトのpom.xmlに以下のdependencyを追加します(ちなみに僕は、maven2-eclipse-pluginを

  • グーグルとVMwareが、クラウドとオンプレミスのJava互換実行環境を実現。SpringとGWTの統合ツールも提供

    グーグルとVMwareが、クラウドとオンプレミスのJava互換実行環境を実現。SpringとGWTの統合ツールも提供 グーグルがクラウドでのJava実行環境を提供する「Google App Engine for Java」は、これまでデータベースやJavaライブラリなどの制限から、独自のJavaアプリケーションを開発する必要がありました。 グーグルは5月19日(現地時間)、米サンフランシスコで開発者向けのイベント「Google I/O」でVMwareとの協業を発表。Springフレームワークに対応することで、オンプレミスとクラウドで互換性のあるJava実行環境を実現するとともに、データ構造などを設定するとユーザーインターフェイスまで揃った基的なアプリケーション(スカッフォルド)まで自動的に生成してくれる統合開発ツールの提供を明らかにしました。 これまでのクラウドでのJavaアプリケーショ

    グーグルとVMwareが、クラウドとオンプレミスのJava互換実行環境を実現。SpringとGWTの統合ツールも提供
    ucho
    ucho 2010/05/20
    なんかここ最近になってJavaがすごいことになってきた気が!?
  • Javadocで日本語APIリファレンスを作る - 愛ゆえにプログラムは美しい

    ucho
    ucho 2010/05/15