タグ

javaに関するKoutetsu666のブックマーク (55)

  • ひしだまのコンピューター関連技術メモ

    S-JIS[1998-01-11/2024-08-21] 変更履歴 ひしだま's 技術メモページ 自作ソフトを作った時などに気付いた事などをメモにしています。(自分のノート代わり) Access [/2005-03-15] Ant [/2015-12-28] Apache [/2007-09-28] AsakusaFW [/2021-12-21] awk [/2014-05-01] AWS [/2021-07-13] C言語 [/2016-04-09] Cassandra [/2010-10-21] CMake [/2016-04-27] CVS [/2007-10-04] Cygwin [/2016-11-26] DigDag [/2021-10-30] Docker [2023-10-07] DOS [/2016-12-10] Eclipse [/2018-09-22] Embulk

  • Inner Class(内部クラス) - Strategic Choice

    Koutetsu666
    Koutetsu666 2012/03/13
    インナークラスはやっぱイマイチ理解不足。ここで言ってることは分かるけど、完全に理解してるかっていうと??
  • サービス終了のお知らせ

    サービス終了のお知らせ いつもYahoo! JAPANのサービスをご利用いただき誠にありがとうございます。 お客様がアクセスされたサービスは日までにサービスを終了いたしました。 今後ともYahoo! JAPANのサービスをご愛顧くださいますよう、よろしくお願いいたします。

    Koutetsu666
    Koutetsu666 2011/06/21
    Mockの使い方。ちょっと役に立ったのでメモ
  • Listの要素を削除する最善の方法 - ドキッ!はてなブログに移転しました!

    卒論の発表原稿を書いている途中に突然ですがJavaにおいてListの要素を削除するベストな方法を検証してみたくなったためやってみました。 決して現実逃避ではありません。 ちなみにJavaのバージョンは1.6.0_23です。 ここではとりあえずArrayListを例にあげてみましょう ArrayListの要素を削除する方法としては forループで該当する値を削除する list.remove(Object o)メソッドを使う Iteratorを使う が挙げられます。 ※ここではあくまで削除する方法を列挙しているだけです。 とりあえず今回は ArrayList<Integer> list = new ArrayList<Integer>(); list.add(0); list.add(1); list.add(1); list.add(2); list.add(1); list.add(2);

    Listの要素を削除する最善の方法 - ドキッ!はてなブログに移転しました!
    Koutetsu666
    Koutetsu666 2011/06/09
    iterator#remove()を使えば、forで回してる途中でも要素を削除できる
  • a geek - 配列のキャスト(Java)

    java初心者であることを痛感しました。 以下のコードがClassCastExceptoinで動かないのです。 ArrayList list = new ArrayList(); list.add("hoge"); String[] array = (String[]) list.toArray();ArrayListから戻ってくる実体はObjectなので、Stringにはできないと。 String[] array = (String[]) result.toArray( new String[result.size()]);ならOKでした。String[]の実体を作ってあげるわけです。toArray()の中ではarraycopy()してます。

    a geek - 配列のキャスト(Java)
    Koutetsu666
    Koutetsu666 2011/06/09
    これ同じミスをまたしそうなので、リマインド
  • Javaリフレクションメモ(Hishidama's Java Reflection Memo)

    Javaでは、クラス生成やメソッド呼び出しをソース上に直接書いてコンパイル時に決定されるだけでなく、文字列(クラス名)を使ってクラスを生成したり、 メソッド名の文字列を使ってメソッドを呼び出したりすることが出来る。 クラス(インスタンス)生成 [/2015-04-26] Classのメソッド [/2021-03-21] instanceof [2007-02-16] Classからのインスタンス生成(非推奨) [/2018-04-30] インスタンス生成 [/2013-08-06] 総称型による限定 [2007-05-02] 内部クラスのインスタンス生成 [/2008-02-10] メソッド呼び出し staticメソッド実行 [/2017-07-23] メソッド実行(引数なし) [/2017-07-23] メソッド実行(引数あり) [/2017-07-23] 可変引数メソッド [/2015

    Koutetsu666
    Koutetsu666 2010/08/31
    リフレクションについて。動的にクラスを生成したりできるらしい。
  • scribble: [Java]String.intern()

    JavaのStringクラスに、intern()というメソッドがある。 APIドキュメントの説明を要約すると、StringのインスタンスはVMが管理していて、str.intern()とすることにより、内容が同じ文字列があった場合にはそのインスタンスを返してくれるらしい。 これがどんなところに使われているかというと、クラス内の文字リテラル("foo"のように記述している箇所)で使用され、文字リテラルのインスタンスはVM上で同一になるようになっている。 同一インスタンスになるとうれしいことは、メモリの節約になることと、String.equals()が高速になること。例として挙げられそうなのは、読み込んだプロパティファイルをSingletonで保持している場合など、そのインスタンスが頻繁に比較される箇所。 設定ファイルを読み込んだ後にキーと値にString.intern()をかけつつHashMa

    Koutetsu666
    Koutetsu666 2010/08/24
    Stringのintern
  • サルでもわかる 逆引きデザインパターン 第3章 逆引きカタログ J2EE編 Facade(ファサード)

    イントロダクション みなさんのサーブレット(Strutsを使用している場合はアクションクラス)の行数は、平均どれくらいでしょうか? データベースアクセスや業務処理など、すべての処理をサーブレットに詰め込もうとして、あっという間に1000行を越すような「太ったサーブレット」を作ってしまったことありませんか? サーブレットを初めて書いたときは筆者もそうでした。 このような「長く」「すべての処理が入った」サーブレットのことをすべてのことを行う魔法のようなサーブレットということで「マジックサーブレット」と呼びます。 マジックサーブレットは保守や機能拡張が難しいのはもちろんのこと、「アプリケーションが提供する機能」を把握することが難しくなるという弊害があります。 機能を把握できないと「あの機能ってどこにあったっけ?」という状況を生み出しがちになります。 そのような状況を避けるためにも、「サービスを提

  • commonsのToStringBuilderを使う - Rubyの輝き

    プログラムのある時点で変数の値を表示するとき、commons-langのToStringBuilderを使用すると良い感じです。 準備 以下のサイトからcommons-langのjarファイルをダウンロードします。 http://jakarta.apache.org/commons/lang/ あとはjarファイルをクラスパスに追加するだけです。 では、動作確認してみましょう。 適当にクラスを用意 今回はプロパティのgetter/setterのみを持つ簡単なクラスを作成。 public class User { private String name; private int age; // 以下はnameとageの getter/setterが続く } commonsのToStringBuilderを使用 public static void main(String[] args) {

    commonsのToStringBuilderを使う - Rubyの輝き
    Koutetsu666
    Koutetsu666 2010/07/07
    toStringを自動で生成してくれるらしい。便利。
  • 今必要な人のための速習Spring Framework---目次 | 日経 xTECH(クロステック)

    JavaのWebアプリケーション開発には,有用なオープンソースのフレームワークが欠かせません。連載では,オープンソース・フレームワークの一つとして,現在,注目を集めているSpring Frameworkを解説します。 第1回 なぜSpringなのか 第2回 柔軟性/保守性を高めるDI機能 第3回 AOPでプログラムをシンプルにする 第4回 SpringMVCの基を知る 第5回 SpringMVCの入力チェックを知る(基編) 第6回 SpringMVCの入力チェックを知る(応用編) 第7回 SpringMVCで簡単!ファイル・アップロード 第8回 現場で役立つHints&Tips(前編) 第9回 現場で役立つHints&Tips(後編) 第10回 Spring&Struts連携のベスト・プラクティスはこれだ! 第11回 Spring Securityでラクラク! セキュリティ対策 第1

    今必要な人のための速習Spring Framework---目次 | 日経 xTECH(クロステック)
  • 三項演算子

    ifの縮小版? 三項演算子は、? 演算子を用いて評価する式を分岐させます これは、一行単体のif-else縮小版のようなものです 評価の結果によって、変数に代入する値を変化させるなどの場合は便利でしょう 作業の効率化を望めるので、場合によってうまく利用すると効果的です 三項演算子は条件式の結果で真と偽の二つの処理を指定するステートメントです expr ? true_expr : false_expr; exprがtrueであればtrue_exprを、falseであればfalse_exprを評価します Perlユーザーに気をつけてほしいのが、Java言語の ? 演算子はPerlほど柔軟ではありません 評価するのはあくまで式であり、しかもtrue_expr,false_expr双方が同じデータ型でなければいけません class test { public static void main(St

    Koutetsu666
    Koutetsu666 2010/06/13
    今まで使ってなかったから使ってみよう。
  • その他 - とほほのJava入門

    コマンドラインで指定した引数は、main() メソッドの引数(String 配列)で参照することができます。 class ArgsTest { public static void main(String[] args) { for (int i = 0; i < args.length; i++) { System.out.println("[" + args[i] + "]"); } } } C:\java>javac ArgsTest.java C:\java>java ArgsTest AAA BBB CCC [AAA] [BBB] [CCC]

    Koutetsu666
    Koutetsu666 2010/05/20
    jarファイルの作り方
  • jarでファイルをまとめる

    jarコマンドを使って、いくつかのファイルをまとめて圧縮することができます。 圧縮 jarコマンドでファイルをまとめて圧縮するときには次のようにします。 例えば、Sample3_1ではSample3_1.classとSample3_1$1.classというファイルが生成されて、実行にはこの2つのファイルが必要でした。この2つのファイルをまとめるためのコマンドは jar cf Sample3_1.jar Sample3_1.class Sample3_1$1.class となります。 また、たとえばSample13_4では5つのclassファイルが生成されました。これらのクラスファイルをすべていちいち指定するのは面倒です。圧縮するファイルの指定には*や?などのワイルドカード文字が使えます。ワイルドカード文字を使ってSample13_4に必要なclassファイルをまとめ

    Koutetsu666
    Koutetsu666 2010/05/20
    jarファイルにまとめる方法
  • Perl・PHP・Javaによるプログラミングサンプル集 − ヒアドキュメント

    PerlPHPでは、ヒアドキュメントという大変便利な機能があります。 通常は、1行の文字列を表示したり、変数に代入する際は、最後に改行文字「\n」を記述し、ダブルクォーテーション等で囲みます。 複数行の場合は、行の最後に改行文字「\n」を記述し、ダブルクォーテーションで囲む記述を、行数文記述しなければなりません。また、プログラムソースが見づらくなってしまいます。 ヒアドキュメントを使用すると、開始記号と終了記号の間に、複数行の文字を記述した場合、改行は「\n」を使用しなくても、記述したとおりに、プログラム処理系が解釈してくれます。

    Koutetsu666
    Koutetsu666 2010/05/17
    Javaにはヒアドキュメントはないそうな。
  • prepareStatementの使用 - データベース接続 - サーブレット入門

    「PreparedStatement」は「Statement」と同じくデータベースに対するSQL文を実行するために使われますが、「PreparedStatement」で使うSQLは事前にコンパイルが行われています。その為高速に実行することが出来るようになっています。 ただ全てを事前にコンパイルしてしまっては同じ問い合わせにしか利用出来ません。そこでSQLの中でも変更が行われる部分を後からパラメータとして指定することが出来るようになっています。 「PreparedStatement」は例えば大量のINSERTを実行するような場合など基的に同じSQL文で挿入する値の部分だけが違うようなSQLを実行する場合に便利なステートメントになっています。 PreparedStatementの作成 プリペアドステートメントは「java.sql.PreparedStatement」インターフェースのオブジェ

  • java.util.Scannerを使ってみる - かずきのBlog@hatena

    JavaSE5から追加されたjava.util.Scannerというクラスを今まで一度も使ったことが無かった。 ただのわず嫌いだったので、ちょいと使い方を勉強!! お試し!! package okazuki; import java.util.Scanner; import junit.framework.TestCase; public class ScannerTest extends TestCase { public void test普通にスペース区切りで読んでみる() throws Exception { Scanner scanner = new Scanner("Hello world"); assertEquals("最初がHelloで", "Hello", scanner.next()); assertEquals("次がworld", "world", scanne

    java.util.Scannerを使ってみる - かずきのBlog@hatena
  • Java可変長引数メモ(Hishidama's Java VarArgs Memo)

    JDK1.5から、引数の個数が不定(可変)なメソッドを定義し、呼び出せるようになった。[2007-06-30] この機能を利用してprintf()が作られたし、リフレクションの引数指定も変更された。 定義例と呼び出し例 引数の型の直後に「...」(ピリオド3つ)を付けると、そのメソッドを呼び出す側はその型の引数をいくつでも書けるようになる。[2007-06-30] ただし、この可変引数は各メソッドにつき1つだけ、そのメソッドの最後の引数にだけ、指定可能。 定義例: void method(String... args) { } void method2(String str, int... ns) { } 呼び出し例: method("abc"); method("abc", "def"); method("abc", "def", "ghi"); method(); …引数無しも可 me

    Koutetsu666
    Koutetsu666 2010/05/07
    "..."ってこれか!!
  • Java書式付き出力メモ(Hishidama's Java Formatter/Formattable Memo)

    第一引数で書式を指定し、その書式に則って第二引数以降の値を編集(変換)して出力する。 (第二引数以降の値は、可変長引数で複数指定できる) System.out.printf("値1=%d 値2=%d", 123, 456); String s = String.format("%04x", 789); 書式には「%」が入った文字列を指定する。「%」の書式指定に従って変換が行われる。 デフォルトでは、複数の%指定がある場合、第二引数以降の値が順番に使われる。 引数が多い分には無視されるだけなので別に構わないが、指定に該当する引数が足りないと例外が発生する。 変換の実体はFormatterクラスにある。 したがってどのような書式があるかについてはFormatterJavadocに載っているが、代表的なのは以下のようなもの。 C言語と同様の書式指定 書式 説明 例

  • java.util.Dateをjava.sql.Dateにきちんと変換する方法 - ひがやすを技術ブログ

    多くの人はこうやればいいと思っているかもしれません。 java.util.Date d = new java.util.Date(); java.sql.Date d2 = new java.sql.Date(d.getTime());確かにこれでも一応変換はできますが、きちんと変換してはいません。java.sql.DateのJavadocを見るとこう書いてあります。 SQL DATE の定義に対応させるために、java.sql.Date のインスタンスでラップされたミリ秒の値は、インスタンスが関連した特定のタイムゾーンで時間、分、秒、ミリ秒をゼロに設定することで、「標準化」する必要があります。 つまり、java.util.Date#getTime()をjava.sql.Dateにただ渡すだけでは不十分で、「特定のタイムゾーンで時間、分、秒、ミリ秒をゼロに設定しなければいけない」のです。そ

    java.util.Dateをjava.sql.Dateにきちんと変換する方法 - ひがやすを技術ブログ
    Koutetsu666
    Koutetsu666 2010/05/01
    DB側とJava側のDate型の違い。とても悩んだ…。
  • 「finallyブロックは正常に完了しません。の警告」(1) Java Solution - @IT

    IT 会議室 Indexリンク Windows Server Insider Insider.NET System Insider XML & SOA Linux Square Master of IP Network Java Solution Security & Trust Database Expert RFID+IC リッチクライアント & 帳票 Server & Storage Coding Edge @ITクラブ Cafe VB業務アプリケーション開発研究 @IT SpecialPR

    Koutetsu666
    Koutetsu666 2010/05/01
    例外が起きたときのtry,catch,finallly,returnの扱い