タグ

javaに関するmya3のブックマーク (27)

  • AndroidのfindViewByIdで型推論(?)させて、ちょっとだけ記述量減らす方法 - xuwei-k's blog

    Javaの話です。 Androidだと、普通xmlで画面を定義して、そのインスタンス生成するためにfindViewByIdというメソッドを使う。かなり多く使う。xmlで定義する時点で、型は(android.view.Viewのなんらかのサブクラスで)決まっているわけですが、それが必ず android.view.View 型で返ってくる。で、これ使いにくいし、ちょっと工夫すれば微妙に記述量減らせるんじゃないか?っていう話。 たとえば、大体のサンプルを見ても*1 Button myButton = (Button) findViewById(R.id.my_button); とか ListView view = (ListView)findViewById(R.id.my_view); となって なんで、型を2回も書かないといけないの?Scalaだったら、Typed Resources といっ

    AndroidのfindViewByIdで型推論(?)させて、ちょっとだけ記述量減らす方法 - xuwei-k's blog
    mya3
    mya3 2012/03/16
    ほんとにこれで出来んのか?
  • ibmURL(変更不可)

    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.

    ibmURL(変更不可)
  • 動的プロキシとシリアライズ

    一般的なDIコンテナに大抵標準装備されている機能に,AOPがある。例えば,あるオブジェクトのあるメソッドが呼び出された際に,そのメソッドを処理する前に何らかの処理を挟み込む,などがAOPである。この機構を実現するためには,動的プロキシと呼ばれる機能が必要となる。 デザインパターンのProxyパターンは,あるオブジェクトと同等のインタフェースを持つProxyクラスを作成し,そのProxyクラスの中から来のオブジェクトを呼びだすようにする。クライアントは来のオブジェクトを触っている感覚なのだが,実際にはProxyクラスという「代理」のものが応答し,来のオブジェクトを当に呼び出すかどうかの判断とか,引数の内容を変更してしまったり,来のオブジェクトからスローされる例外の処理をProxyクラス内でしてしまう,などの機能拡張をProxyクラスで行うというパターンである。クライアント側は,Pr

  • Javassist 入門

    Java Press vol. 35, pp.76--85, March 2004. Java プログラムの"舞台裏"大追跡 Javassist -- Java バイトコードを操作するクラスライブラリ -- 入門 先端J2EE サーバJBoss が,人知れず内部で行っていること 千葉 滋 東京工業大学・大学院情報理工学研究科 はじめに Java バイトコードを変換するライブラリとしては Jakarta BCEL が有名です。BCEL は Java クラスファイルのデータ構造を直接操作する場合には便利ですが、Java クラスファイルの内部仕様、つまり Java バイトコードに詳しくないと使いこなせません。一方、Java バイトコードにあまり詳しくない開発者でもバイトコード変換を実装できるようにするライブラリが Javassist です。 バイトコード変換 はっきりいって、つい最近までJava

  • はてなブログ | 無料ブログを作成しよう

    【献血デビュー】体重が少し足りず400ml献血はできなくとも、献血ルームでの成分献血ならできたぞ、という話 いきさつ 2025年の抱負として「400ml献血をできるようになる」を掲げてから、冬を越し春が過ぎ夏が終わ………なかなか終わらないな……8月も終わろうとしている。記事を書いた頃の体重からは1kgぐらい増えたところだ。 夏バテなんてどこ吹く風とばかりに、ここ数週間は私の…

    はてなブログ | 無料ブログを作成しよう
  • Togetter - まとめ「javaのクラスローダ同時多発TLのまとめ」

    tissi @tissi まだ実戦投入したこと無いんだけどJava6のスクリプトエンジンは超使える。ゲームとかエンジンはC++で、AIとかLuaで書くけど、あのノリがJavaで使える。ノンストップでビジネスロジックをリロードする箇所を明示的に作れるのがいい。クラスローダいじる系は危なすぎる。 2010-06-15 20:52:52

    Togetter - まとめ「javaのクラスローダ同時多発TLのまとめ」
  • JSP、JSTL、EL で定数を使う - cypher256's blog

    今回のプロジェクトでは定数クラスは設計書から自動生成されるようにしました。でもせっかく定数クラス作っても、JSP ではベタ書きしていたり、JSP で定数使うのはおかしいとか言うエラい人もいたりしますが、やっぱり JSP でも定数使いたい場面はあります。例は悪いですけど、こんな。 public interface Flg { String ON = "1"; String OFF = "0"; } <td>${Flg.OFF}</td> とか <c:if test="${hogeFlg == Flg.ON}"> 今まで、定数クラスごとにマップを作ってアプリケーション・スコープに登録したりしていたのですが、面倒なので自動登録してしまおうというのが、JSTLConstantsRegister です。どこかで聞いた言い回しですけど。これはルート・パッケージ配下のインターフェースか public s

    JSP、JSTL、EL で定数を使う - cypher256's blog
    mya3
    mya3 2010/06/24
    定数がきれいに使える
  • Tomcat6でCommons-Logging/Log4jによるトレースログを有効にする - Kazzz's diary

    無事成功したので、簡単な手順をメモ(といってもほぼオンラインドキュメントのままだが) Commons-Logging対応のtomcat-juli.jarアーカイブをビルドする Tomcat6のソースコードバンドルをダウンロードして展開する 上で展開した中にあるextras.xmlのターゲット"commons-logging"をAntでビルドする ビルドが成功すると以下のjarアーカイブが作成されるので確認する output/extras/tomcat-juli.jar output/extras/tomcat-juli-adapters.jar Tomcat6の該当jarアーカイブを上で作ったアーカイブで置き換える $CATALINA_HOME/bin/tomcat-juli.jarをoutput/extras/tomcat-juli.jarで置き換える $CATALINA_HOME/li

    Tomcat6でCommons-Logging/Log4jによるトレースログを有効にする - Kazzz's diary
  • 例外処理とロギングのベストプラクティス

    はじめに システム開発において例外処理は重要なポイントですが、あまりに軽視されているのが現状ではないでしょうか。稿では、これまでの著者の開発経験の中から培った汎用的な手法を説明します。 この記事は「美しい設計」ではなく「現実的な設計」、現場に適用できる「できるだけ手間の少なく、汎用的な設計」を目指しています。 対象読者 J2EE開発者・アーキテクト。特に業務システムの開発現場の方が対象です。 必要な環境 概念の説明が中心ですので、開発環境は必要ありません。 エラーの分類 実装時に考慮すべきエラーは2つに大別できます。 想定内でトランザクションの実行開始前にチェックするエラー。主に入力エラー。 異常な状態としてトランザクションの続行が不可能なエラー(例外)。 前者については、例外を使うべきではありません。入力チェックエラーを表現するには、ステータスコードを使うべきです。理由は次のとおりです

    例外処理とロギングのベストプラクティス
  • 【実録ドキュメント】そのログ本当に必要ですか?

    今回の概要 数人で利用しているときは、レスポンスが軽快だったシステムで、ユーザー数が増えてくると急激にレスポンスタイムが悪化する現象が発生した。現場から学ぶWebアプリ開発のトラブルハック 第2回で扱ったFull GCなどいくつか原因が考えられるが、稿ではログ出力にまつわるトラブルをドキュメンタリー形式で紹介し、まとめとしてログ出力のパフォーマンスに関するTipsを紹介する。 今日もまた、突然電話が鳴り響く ある穏やかな朝、突然電話が鳴る。相手は結合テストの工程からパフォーマンステストで支援に入る予定のプロジェクトの担当者である。用件は「結合テストを20人のテスターで実施しようとしているが、レスポンスタイムが1分を超えていて、テストがままならない。早急になんとかしてほしい」 これだけの情報では、トラブルをハックすることはできないので、Webアプリの問題点を「見える化」する7つ道具をノート

    【実録ドキュメント】そのログ本当に必要ですか?
  • Javaの道:クラス(9.オーバーライドとオーバーロード)

    オーバーライド オーバーライドとはスーパークラスにおいて定義されているメソッドを、サブクラス内で再定義することを言います。スーパークラスのメソッドを変更することはできないが、サブクラスに特化した機能を付与したい場合に使用します。 オーバーライドを定義する際には以下の規定があります。 オーバーライドする側はオーバーライドされる側と戻り型、メソッド名、引数型、引数の数が同じでなければなりません。どれか一つでも異なる場合はオーバーライドとは見なされません。 オーバーライドされる側のメソッドに指定されるアクセスレベルより厳しい制限を持つアクセスレベルをオーバーライドする側のメソッドに付与することはできません。例えばオーバーライドされる側のメソッドにprotectedが指定されている場合、オーバーライドする側のメソッドにprivateを指定することはできません。 オーバーライドされる側のメソッドに指

    Javaの道:クラス(9.オーバーライドとオーバーロード)
    mya3
    mya3 2010/05/24
    動的束縛と静的束縛
  • Commons Validation on POJO

    設定ファイル(validation.xmlとvalidator.properties)の書き方 propertiesやxmlファイルの置き場所。 現状では、設定ファイルをロードするクラス(ValidatorLoader)で stream = ValidatorLoader.class.getResourceAsStream(property); や input = ValidatorLoader.class.getResourceAsStream(validatorRules); というように、ValidatorLoaderのパッケージ場所からロードしているので、実際にはcom.chikkun.common.validatorだ。 propertiesやxmlファイルの名前 優先順位がある。以下にその優先順位を挙げる。 defaultでは、xmlがvalidator.xmlとvalidat

    mya3
    mya3 2010/05/19
    CommonsValidatorを使う際に参考になる
  • Javaの道(Java入門・リファレンス)

    掲示板 質問一覧 Javaの道 掲示板Javaに関係する人が集まり、互いの知識を補完しながら問題解決を行う場です。 NEWS ニュース一覧 Java関連のニュース、話題のニュースを紹介していきます。

    Javaの道(Java入門・リファレンス)
    mya3
    mya3 2010/05/19
    基本とかいろいろ
  • Java列挙型メモ(Hishidama's Java enum Memo)

    列挙型(enum)は、JDK1.5で導入された、一連の値を定義する文法。[2006-07-26] 一番単純な定義方法はC言語の列挙型に似ているが、C言語と違って実態はクラス(と、不変オブジェクト)。 enumはenumerate(イニュームレイトあるいはイヌームレイト)の略なので、発音としては「イニューム」が正しそうだが、自分は「イナム」「エナム」と呼んでいる。 最も単純な定義方法 enum 列挙名 { 列挙子, 列挙子, … } 列挙名は、クラス名(やインターフェース名など)と同様。 (したがって、publicの付いたenumの列挙名は、ソースファイル名と同じでなければならない。また、publicの付いたenumはソースファイル内に1つしか定義できない) 列挙子(enum定数)は、フィールド名の定数(クラス内のstatic final変数)と同様。 (したがって、アルファベット大文字を使

    mya3
    mya3 2010/05/19
  • Amadablam.biz - Technologies

    mya3
    mya3 2010/05/19
    CommonsValidatorの使い方
  • http://www.jajakarta.org/velocity/velocity-1.3.1/docs-ja/user-guide.html

  • Overview (Apache Velocity 2.5-SNAPSHOT API)

  • http://commons.apache.org/validator/api-1.3.1/

  • Apache Commons Lang 2.4 API

  • http://commons.apache.org/beanutils/v1.8.3/apidocs/index.html