サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
Google I/O
www.ytp.ne.jp
JDK1.4のログ出力を制御するためのlogging.propertiesについてです 標準のlogging.propertiesファイルは、 JDKをインストールしたディレクトリのjre\libの中にあります。 1.まずはlogging.propertiesを覗いてみる 2.ハンドラの指定 3.FileHandlerのプロパティ 4.デフォルトの出力レベル 5.logging.propertiesを指定した実行 6.関連するJava2 SDKドキュメント 1. まずはlogging.propertiesを覗いてみる JDKをインストールしたディレクトリの中のjre\lib\logging.propertiesを見て下さい。 ############################################################ # Default Logging Conf
Y's Jlib [わいず じぇーりぶ] YTPにて作成した、ちょっと小技の効いたJavaのAPI達です。 現在掲載しているものはまだ一部で、今後クラスの数を増やしていきます(続々公開予定 !)。 利用例の解説も掲載する予定です。
普段私は、開発ツール(IDE)を使わずにJavaのシステムを作っています。 「デバッグどうすんの?」という声が聞こえて来そうですが、そんなもん決まってますぜ、ダンナ。 ログです、ログ。ファイルにログ出力! IDEでカーソル当てたら変数の値がふわーっと浮かんで来るなんて、 そんなちんたらしたもんは使ってらんねーっ! 男は黙って、ログいっぱーつ!! 今までは、自前で作ったログ出力クラスをありがたーく使っていましたが、 JDK1.4からはログ出力機構が標準で備わったため、そっちに乗り換えようと思ったところ、 これがちょっとややこしい・・・ また、JakartaのLog4Jも有名ですが、 JDK1.4ログやLog4Jを統一したインタフェースで使えるようにしたものが、 同じくJakarta CommonsプロジェクトのLoggingです。 これらをどうやって扱っていけばいいのかをまとめてみました。た
/** * 初めて作るであろういっちょまえのクラス * @author YTP */ public class Message { /** * インスタンス変数だってあるもん */ private String sMessage_ = null; /** * 初めてのコンストラクタでーす */ public Message() { } /** * 初めてのセッターメソッドでーす * @param sMessage 幸せなメッセージを下さい */ public void setMessage(String sMessage) { sMessage_ = sMessage; } /** * お披露目でーす */ public void showMessage() { System.out.println(sMessage_); } }
あなたのソフトウェア開発の一助になることを目指して..... ソフトウェア開発に関する情報を提供するサイトです。 スマホというPCを持ち歩ける現在、ソフトウェア無くしては生活が成り立ちません。 そんな生活必需品となったソフトウェア開発の発展に少しでも寄与したい、 それが YTP (Your Technology Partner) の出発点です。 ソフトウェア発展の鍵を握るのはオープンソースであるという認識に基づき、それらの情報を中心に扱います。 オープンソースを利用するだけではなく、YTP (Your Technology Partner) にて作成したライブラリもオープンソースとして公開します。
今後の主流はやっぱりJK2 JK2コネクタは、JKと同じAJP13プロトコルで実装されていますが、設定方法は全く異なります。 設定のために使用するファイルは次の2つです。 APACHE2_HOME/conf/workers2.properties TOMCAT_HOME/conf/jk2.properties ※JKでは、連携するWebサーバごとに設定ファイルが異なっていましたが、 JK2では上記2つに統合されています。 JK2を設定する際に最低限理解しておかなければならないのは、次の3つです。 通信チャンネル(channel) ワーカ(worker) URIマッピング 通信チャンネルは、Apache2とTomcatの間でJK2が会話する際の通信経路です。 ワーカは、Tomcatインスタンスとのひも付けに使いますが、 JK2ではgroupというキーワードで設定するように変更されました。 U
importとpackageの仲を取り持つCLASSPATH CLASSPATHは、コンパイルする時にも実行する時にも使われます。 その目的は、皆さんが作ったクラスの中で利用している他のクラスがどこにあるかを、 javacやjavaコマンドなどに教えることです。 例えば、JDBCドライバ自体はJDKに入っていないので、 RDBベンダーが提供するドライバを利用することになります。そのドライバが入っているファイルはどれ? という情報を設定するのがCLASSPATHというわけです。Windowsの場合は、 set CLASSPATH=C:\orant\lib\classes12.zip というように設定します。 複数のファイルを指定したい場合は;(セミコロン)(UNIXの場合は:(コロン))で区切ります。 set CLASSPATH=C:\orant\lib\classes12.zip;D:\t
CLASSPATHの前にまずimportの機能を理解しましょう importの書き方には二通りあります。 import java.util.Vector; import java.util.*; 1は single-type-import declaration 2は type-import-on-demand declaration と呼びます。 いずれも、クラスのパッケージ解決のルール付けをコンパイラに対して行うのが目的です。 何やら難しい言葉になりましたが、要は、外部のクラスを見つける時のルールです。 importで大切なのは、コンパイル(javacコマンド)の時だけ使われる、 ということです。実行時(javaコマンド)には関係ありません。では、次の例を見て下さい。 Vector v3 = new Vector(); と書いた場合それは、 java.util.Vector v3 =
そんなゲッターロボみたいな話があるんでしょうか? あるーんです。 JNIチャンネルを使うと、Apacheの内部プロセス(in process)としてTomcatが起動され、 Tomcat単独での起動が不要になります。 この場合JK2は、API呼び出しによってTomcatと会話を行うので、 ソケットチャンネルに比べて性能が上がります (Apache付属のabコマンドで試してみるとわかります)。 その反面、可用性は減ります。 ★JNIワーカを使った動作は、私のLinux環境(RedHat8)ではうまくいきませんでした。 「うまく動いてるよー」という方がもしいらっしゃれば、 メールいただけると幸いです。★ [vm:]の部分でJVMに関する設定を行います。 tools.jarへのクラスパスが必要なのは、JSPをコンパイルするjavacコマンドのためです。 JVMへのパスを指定する行は無くても動く場
実は、JK2コネクタのソースに添付されているworkers2.propertiesファイルはそのままでは動きません。 とにかく動かしたいあなたのために、これ以上ない一番簡単な設定例をお教えしましょう! まずhttpd.confに右の1行を追加します。 次はworkers2.propertiesですが、 右のファイルをAPACHE2_HOME/confに置いてApacheを再起動すれば、 Tomcatのexamplesコンテキストがブラウズできるようになります。 この例では、JK2の通信チャンネルには一番一般的なTCPソケットを使っていて、 [channel.socket:localhost:8009]がそれを定義している部分です。 この中で##で始まるコメント行は、それぞれのデフォルト値を参考のため書いてあります。 group=lbという行がありますがこれは、 このチャンネルを使うワーカグ
C:\Source\Java\jartest>jar cvf yoshino.jar kimura マニフェストが追加されました。 kimura/ を追加中です。(入 = 0) (出 = 0)(0% 格納されました) kimura/HelloKimura.class を追加中です。(入 = 348) (出 = 262)(24% 収縮されました) kimura/HelloKimura.java を追加中です。(入 = 272) (出 = 193)(29% 収縮されました) kimura/yoshino/ を追加中です。(入 = 0) (出 = 0)(0% 格納されました) kimura/yoshino/IloveYoshino.class を追加中です。(入 = 431) (出 = 317)(26% 収縮さ れました) kimura/yoshino/IloveYoshino.java を追加
まずはJDK1.4でログ出力してみます java.util.loggingパッケージを使うと、ファイルIOの操作を自前でしなくてもログ出力を実現できます。 1.ログを出力するには? 2.ログをファイルに書き出すには? 3.ファイルの出力書式を読みやすくする 4.出力レベルを変更する 5.例外のスタックトレースを出力する 6.追加モードで出力する 7.関連リンク 1. ログを出力するには? ちょっと長いのですが、以下のソースをご覧ください。この項で使うのはtest1( )メソッドです。 package ytp.test.logging; import java.util.logging.Logger; import java.util.logging.Level; import java.util.logging.FileHandler; import java.io.IOException
CLASSPATHを挟んだimportとpackageの微妙な三角関係 Javaに少し慣れてくると、必ず悩むのがCLASSPATHの問題です。 「シンボルを解釈処理出来ません」や 「パッケージほにゃららは存在しません」 というメッセージがコンパイルのときにわんさか出て来て、 もう目が(・_・)になる経験をみなさん一度はしてるのではないでしょうか? また、結構な数のクラスを開発する仕事をしてるんだけど、 パッケージ(package)の使い方がよくわからなくって、 一つのディレクトリにclassファイルがわーっといっぱい入ってる、なんてことありません? これらは、importとpackageとCLASSPATHの関係をきちんと理解することで、 正しいお付き合いが出来るようになります。 かっこよくJavaを使いこなそうとするならば、ここは是非突破しておきましょう!!! importの機能 pac
このページを最初にブックマークしてみませんか?
『Your Technology Partner(ytp.ne.jp)』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く