ささやかなお正月飾り お正月飾りに葉牡丹の寄せ植え。関西は色々な葉牡丹が揃っていて選ぶのも楽しい キンセンカ ブロンズビューティー この後、門扉のそばに飾りました。華やかになりましたね そしてしめ縄作り。 松、水引き、しめ縄に庭の南天を加えました あわじ結びから、固く結ばれた…

『Effective Java 第2版 (The Java Series)』を読むまで知らなかったのですが、Java SE 5 から Java SE 6 に移行する際に @Override アノテーション*1の使用方法が変更になっていたそうで。 一言で言えば、「インターフェースに宣言されているメソッドをオーバーライドする際にも @Override アノテーションを使える」ように拡張されました。 確かに Java SE 5 の頃に何故こういう風に使えないんだ!と思ったことがありましたが、拙者だけではなかったのですね。 以下で、Java SE 5 と Java SE 6 の間の @Override アノテーションの使い方の違いを、サンプル・コードを用いて見ていきましょう。 分類表 拡張する型 (extends) と拡張される型 (super) で、有り得る組合せは以下の表の通り: extend
拙著『Webアプリケーション構築入門 第2版』では、PHPとJavaでウェブアプリを作る方法を解説しています。作ったウェブアプリを公開しようとするとき、PHPのウェブアプリはたいていのレンタルサーバで動くのでいいのですが、Javaのウェブアプリはほとんどのレンタルサーバでは動かないので、自分のサーバを持っていない場合はいろいろ面倒でした。 クラウド(IaaS)やVPSの普及によって、Javaのウェブアプリを公開するための経済的なハードルは下がりましたが、「レンタルサーバにファイルをコピーするだけでOK」というPHPに比べると、IaaSやVPSでの「サーバに各種サーバソフトウェアをインストールして・・・」という技術的ハードルはあまり下がりませんでした。 しかし最近(と言うほどでもありませんか)、HerokuのようなJavaも使えるクラウド(PaaS)の登場によって、Javaのウェブアプリを公
はじめに enumでインタフェースが実装できることが分かったので、その応用例の一つとして、Javaでenumを使ってプロパティファイルのキーを定義するサンプルを書いてみました。 プロパティファイル読み込みは何が問題か Javaでの外部プロパティファイルの機構は、 key=value の形で外部ファイル *.properties にて定義し*1、それをjava.util.Properties を利用して取得する。 // 例 Properties prop = new Properties(); prop.load(...省略...): String key = "key1"; // ← キーが文字列! String value = prop.getProperty(key); // ← 文字列のキーを渡してプロパティの値を取得! ですが、プロパティファイルは、決められた値の設定を記述しておく
10万行コード読んだらJava分かるよってTwitterに書いたらすげぇ勢いでRTされたので、調子に乗って捕捉エントリ書くよ。 Java Core API JDKインストールしたディレクトリに入ってるsrc.zipを展開すると入ってるから読むと良いよ。 すぐ近くにあるのから読むってのはメンタル的に楽でいい。 厳密にはOSSじゃなくて単に公開されてるってだけなんだけども、JavaプログラマなのにコアAPIのコード読んでないとか無いよね? どれから読めば良いか分からんかったら、 java.lang java.util java.io java.text 辺りをまずはキチンと理解すること。当然コードを読み終わったら、それを使ってコードを書く事。 OpenJDK http://hg.openjdk.java.net/jdk7/jdk7 OpenJDKを読むことで、プログラム言語してのJavaではな
java.io.Serializable …、ある程度Javaに触れて来た人は必ず見たことがあるインターフェイスだと思う。私も何度も見てきたし、必要に迫られて自分の作ったクラスにSerializableをつけたこともある。しかし、こいつは一体何なのか? 継承の便利さ 僕らがまだJava初心者だった頃。継承というメカニズムに助けられながら育って来た。簡単に言えば、HttpServletクラスを継承しさえすれば、自分の作ったクラスがサーブレットとして認識されるのだ。また、abstractメソッドなどという便利な機能もあり、継承にあたって実装しなければいけないメソッドは確実に指示され、言われた通りにそのメソッドを実装すれば良い。 StrutsのActionも然り。そう、多くの場合は「継承さえすれば、望む物がだいたい出来上がる」というのがJavaの世界だと思っていた。 だが、世の中そんなに甘くない
OS X向けのJavaセキュリティアップデートを導入すると、Appleが提供したJavaアプレットのプラグインが、全ブラウザからアンインストールされる。 米Appleは、10月16日に公開したOS X向けJavaのセキュリティアップデート「Java for OS X 2012-006」で、Appleが提供したJavaアプレットのプラグインを、全ブラウザからアンインストールする措置を取ったことを明らかにした。 Java for OS X 2012-006は、OS X Lion v10.7とOS X Mountain Lion v10.8向けに公開され、Java SE 6を最新版に更新して深刻な脆弱性を修正している。さらに、このアップデートをインストールすると、Web上でJavaが必要な領域に、「Missing plug-in」と表示されるようになるという。 ユーザーがJavaアプレットを使い
JJUG CCC 2012 Fall keynote 1. Yoshio TeradaJava Evangelisthttp://yoshio3.com, Twitter : @yoshioterada1 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 2. 以下の事項は、弊社の一般的な製品の方向性に関する概要を説明するもので す。また、情報提供を唯一の目的とするものであり、いかなる契約にも組み 込むことはできません。以下の事項は、マテリアルやコード、機能を提供す ることをコミットメント(確約)するものではないため、購買決定を行う際 の判断材料になさらないで下さい。オラクル製品に関して記載されている機 能の開発、リリースおよび時期については、弊社の裁量により決定されます 。 Oracleは、米国オラク
2012年11月12日 at 6:58 午後 3件のコメント WebSocket と Twitter4J を使った、Twitter のタイムライン取得 WebSocket サンプルアプリケーションのサンプルコードを公開致します。 2013 年 5 月 13 日追記:本ソースコードは、WebSocket の仕様が完全に FIX する前に記載したコードのため、既に記載している内容のコードでは動かなくなっています。新しい WebSocket の API では @WebSocketEndpoint アノテーションの代わりに @ServerEndpoint アノテーション等を使用します。 詳しくは、javax.websocketパッケージ、javax.websocket.serverをご参照ください。 Java EE 7 の WebSocket の概要は下記をご参照ください。 下記は、2012 年
java-jaで例外処理の話をしてきました - 西尾泰和のはてなダイアリー を読んで。 Maybe は値があるかないかを型で表すことができます!そう、直和型なんです!とか言われてもイミフだと思うのです(リンク先のエントリがそう説明してるわけではないですが)。 Java の語彙で Maybe の説明をできたら嬉しい人もいるんじゃないかなぁ、とかなんとか。 ただし、書いてたら結構長くなりました。時間がある人はどうぞ。 Maybe? null より安全に「値がないこと」が扱えるものだよ スタート地点としてはこれでいいでしょう。 以降で、「なんで安全なの?」という全うな疑問に答えてみたいと思います。 問題点 int で説明すると煙に巻いてしまうような気がしたので、User クラスを見てみます。 import java.util.*; class User { final String name;
Throwable、Exception、RuntimeException(RTE)、Errorあたりを整理しながら、色々考えてみた。私見に基づくので、間違っているかもしれないけれど、自分としては頭が整理できたかな、と感じたので晒してみる。異論があったらコメントください。 まず、一番基礎的なところで、継承関係の整理から。こんなツリーになっています。 Throwable Error Exception RuntimeException そして、本稿での用語の定義。caller=呼出す側のコード callee=呼出される側(throwする側)のコードとします。 Throwable Throwableは「throw文に指定できる何か」という意味ですね。 Instances of two subclasses, Error and Exception, are conventionally used
JUnitとEclipseを使って学ぶ、“テスト”の常識:Webアプリの常識をJSPとStrutsで身につける(10)(1/4 ページ) 本連載は、JSP/サーブレット+StrutsのWebアプリケーション開発を通じて、Java言語以外(PHPやASP.NET、Ruby on Railsなど)の開発にも通用するWebアプリケーション全般の広い知識・常識を身に付けるための連載です いまさら聞けない、“テスト”の考え方やポイント 今回は、「テストの常識」と題し、Webアプリのテスト方法を説明したうえで、実際にJUnitを使用してWebアプリのテストを行ってみましょう。 そもそも、テストとは何のために行うのでしょうか? ただ何となくテスト項目を作成して実施するのでは、作成したWebアプリの品質が低かったり、開発コストが高くなったりと後々、後悔することになります。まず「テストをなぜ行うのか」「何を
Nettyと言えばJavaのノンブロッキングIOのAPIであるNIOをラップしたフレームワークとして、TwitterのFinagleなどで分散ネットワークアプリケーションシステムで使わていて高速で実績のあるライブラリとして有名ですが、ノンブロッキングIOでイベント駆動のサーバークライアントのネットワークアプリケーションを知るのに非常に良い題材ですので、素人翻訳ですがその日本語訳を公開することにしました。 ちなみにNettyがどれぐらいパフォーマンスに優れているのかというと、Herokuの仮想インスタンスを利用した実験の結果が参考になります。Scala(Finagle)がNettyの実装を利用したものになりますが、秒間6000リクエスト時の1dyno(APサーバー)の応答が秒間4000レスポンスで、C(Accept)、Java(Jetty)、Java(Tomcat)、Js(Node)、Pyt
質問 0023A8BA【RSA V7.5.4では、標準でJRE 6.0.0 SR2が付属してきますが、SR9にアップグレードしてもサポート範囲となるでしょうか?】 回答 <<< QUESTION >>> 2011/01/25 15:33:00 <環境> RSA (Rational Software Architect) V7.5.4 Microsoft Windows 7 Q) RSA V7.5.4では、標準でJRE 6.0.0 SR2が付属してきますが、SR9にアップグレードしてもサポート範囲となるでしょうか? <背景> RSA V7.5.4でエクスポートしてビルドを行ってきましたが、リリース管理の都合から同端末でANTを用いてビルドを行いたいという要件が出てきました。 そこで、ANTでjavacをかけたところ、APAR-IZ81205にあるDEFECTに抵触したため、同D
例えば以下のように環境依存な設定ファイルがあるとします。この設定ファイルを環境にあわせてどうやってビルド、デプロイするのがいいのか?というのがテーマです。 sample-common/ |--src/ |--main/ |--resources/ |--mail.properties メールサーバのホスト名が書かれている sample-db/ |--src/ |--main/ |--resources/ |--ibatis-config.xml DBサーバのURLが書かれているibatis-config.xmlはこんなイメージです <property name="JDBC.ConnectionURL" value="jdbc:oracle:thin:@localhost:1521:XE" />ひとつのやり方としては、これらの設定が書かれたファイルをリポジトリに置く際はローカルにあわせたもの
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く