拡張子「.properties」となっているプロパティファイルとは、一体どういうものですか?どういう用途の場合に、これを使うのですか?今、私が解析しているソースは、「プロパティファイルの設定を元にしたDBConnectionPoolのインスタンスを作成し、 DBConnectionPoolはプロパティの設定により定義しようとする」ものです。プロパティファイルからは、”データベースのURL”や”データベースユーザ (オプション)”を取得しています。
どういったものをプロパティファイルにいれこんでしまうのですか?
教えて頂けると助かります。
また、プロパティクラスについて、詳しく説明してあるHPなど、教えて頂けると、大変助かります。よろしくお願いいたします。

このQ&Aに関連する最新のQ&A

A 回答 (1件)

>拡張子「.properties」となっているプロパティファイルとは、一体どういうものですか?



ご自分で以下に書かれているように・・・

>どういう用途の場合に、これを使うのですか?今、私が解析しているソースは、
>「プロパティファイルの設定を元にしたDBConnectionPoolのインスタンスを作成し、
> DBConnectionPoolはプロパティの設定により定義しようとする」ものです。
>プロパティファイルからは、”データベースのURL”や”データベースユーザ (オプション)”を取得しています。

こういったものです。
Windowsでいう.iniと思っていただければよいかと。

>どういったものをプロパティファイルにいれこんでしまうのですか?
>教えて頂けると助かります。

ハードコーディングしたくない内容。
つまり、クラスをコンパイルしなおさなくても済むようにするわけです。
>”データベースのURL”や”データベースユーザ (オプション)”
これらは、使用する環境で違ってきますから、プロパティファイルにしているわけですね。

>また、プロパティクラスについて、詳しく説明してあるHPなど、教えて頂けると、大変助かります。よろしくお願いいたします。

標準のJavaのAPIリファレンスをお読みください^^;
    • good
    • 0
この回答へのお礼

ありがとうございました。
おおまかな存在の意味は分かったような気がします。
もっと、勉強していくと、もっと、理解を深められそうなので、
頑張っていきます!
本当にありがあとうございました。

お礼日時:2001/05/31 09:12

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Q「古い圧縮ファイル」の確認方法

Dドライブのディスクのクリーンアップをしたいのですが、実行できるものが、「古い圧縮ファイル」の削除しかありません。

「古い圧縮ファイル」がどのプログラムかを確認する方法を教えてください。

また、圧縮されたファイルの名前は青くなるらしいのですが、見つかりません。どうしてでしょうか
圧縮ファイルは1G弱あります。

Aベストアンサー

http://www.atmarkit.co.jp/fwin2k/win2ktips/106cleanup/106cleanup.html

初期設定では、50日以上アクセスの無かったファイルに対して、圧縮が行われます。
当然、圧縮してからでないと、ファイル名は青色にはなりませんので、ディスク・クリーンアップでの候補段階では、黒色のままです。


尚、設定によっては青色表示にならない場合も有りますけど。

http://121ware.com/qasearch/1007/app/nec.jsp?005084

Qファイルよりの文字列の取り込み(Properties)

下記のプログラムでテキストファイルに"0x5C"を含む文字列を
取り込んだ時に文字化けしてしまいます。

テキストファイルに\\を付加する逃げ方は検索して発見しましたが
\\を付加を付加せずに解決する方法は有りませんでしょうか?

import java.io.FileInputStream;
import java.util.Properties;


public class Class1 {
 public static void main (String[] args){
  try {
   FileInputStream oFileInputStream = new FileInputStream("c:\\test.txt");
   Properties oProperties = new Properties();
   oProperties.load(oFileInputStream);
   String sTmp1 = oProperties.getProperty("100001T");
   String sBuf1 = new String(sTmp1.getBytes("8859_1"), "MS932");
   String sBuf2 = new String(oProperties.getProperty("100001M").getBytes("8859_1"), "MS932");
   System.out.println(sBuf1);
   System.out.println(sBuf2);
  } catch (Exception oException) {
   oException.printStackTrace();
  }
 }
}

/* 実行結果
可狽ナす。可狽ナす。可狽ナす。可狽ナす。
可能です。
*/

/* test.txtの内容
100001T=可能です。可能です。可能です。可能です。
100001M=可能\\です。
100001S=1
100001L=0
*/

下記のプログラムでテキストファイルに"0x5C"を含む文字列を
取り込んだ時に文字化けしてしまいます。

テキストファイルに\\を付加する逃げ方は検索して発見しましたが
\\を付加を付加せずに解決する方法は有りませんでしょうか?

import java.io.FileInputStream;
import java.util.Properties;


public class Class1 {
 public static void main (String[] args){
  try {
   FileInputStream oFileInputStream = new FileInputStream("c:\\test.txt");
   Properties oPropertie...続きを読む

Aベストアンサー

native2ascii.exeをしたくなければ、
もう自前でエスケープ処理を作成するしかありません。

ちょとソースは汚いですが、
以下パパっと作ってみました。
(もっといい方法があるかな?)

import java.io.*;
import java.util.*;


public class Class1 {
 public static void main (String[] args) {
  try {
   FileInputStream oFileInputStream = new FileInputStream("c:\\test.txt");
   InputStreamReader isr = new InputStreamReader( oFileInputStream, "MS932" );
   BufferedReader  br = new BufferedReader( isr );
   String str1 = "";
   String str2 = "";
   while((str1 = br.readLine())!=null)
   {
    str2 = str2 + str1 + "\n";
   }
   str2 = escape(str2);
   ByteArrayInputStream bais = new ByteArrayInputStream( str2.getBytes("MS932") );

   Properties oProperties = new Properties();
   oProperties.load(bais);
   String sTmp1 = oProperties.getProperty("100001T");
   String sBuf1 = new String(sTmp1.getBytes("8859_1"), "MS932");
   String sBuf2 = new String(oProperties.getProperty("100001M").getBytes("8859_1"), "MS932");
   System.out.println(sBuf1);
   System.out.println(sBuf2);
  } catch (Exception oException) {
   oException.printStackTrace();
  }
 }

 static String escape(String org) throws Exception
 {
  Vector b = new Vector();
  Byte   byt;
  Byte[]  byts;
  byte[] str;

  str = org.getBytes("MS932");
  for(int i=0;i<str.length;i++)
  {
   if(str[i] == '\\')
   {
    byt = new Byte(str[i]);
    b.add(byt);
   }
   byt = new Byte(str[i]);
   b.add(byt);
  }
  byts = (Byte[])b.toArray(new Byte[1]);

  str = new byte[byts.length];
  for(int i=0;i<byts.length;i++)
  {
    str[i]=byts[i].byteValue();
  }

  String buff = new String(str);
  return buff;
 }
}

native2ascii.exeをしたくなければ、
もう自前でエスケープ処理を作成するしかありません。

ちょとソースは汚いですが、
以下パパっと作ってみました。
(もっといい方法があるかな?)

import java.io.*;
import java.util.*;


public class Class1 {
 public static void main (String[] args) {
  try {
   FileInputStream oFileInputStream = new FileInputStream("c:\\test.txt");
   InputStreamReader isr = new InputStreamReader( oFileInputStream, "MS932" );
   ...続きを読む

Qファイルの圧縮方法

AVIやMPGの画像ファイルを圧縮する方法を教えてください。900mb位のファイルをCD-Rに落とし込める700mbまで圧縮したいんですが。できれば、zipやlzhなどの後で解凍しなくてはいけないような圧縮方法ではなく、多少画像が荒くなってもファイルを単純に縮小させるような方法を教えていただけると有り難いのですが。。
因みに、TMPGEncを試してみたんですが、どうもうまくいかなくて。。ファイルサイズが元のファイルより逆に大きくなってしまうんです。
すいませんが、宜しくお願いします。

Aベストアンサー

画像圧縮?くす(^^
エンコはTMPGEncやaviutlでやるのがふつーです。
ええ 絶対! 
aviutl
http://ruriruri.zone.ne.jp/aviutl/

zipとかで圧縮しても意味ありません サイズ的に。

で、TMPGEncで元より大きくなるのは問題は
コーデック、画像サイズ、 音声ファイルなど
理由はいっぱいあります。対処は類似質問みて↓
http://oshiete1.goo.ne.jp/kotaeru.php3?q=625581

だから圧縮というか再エンコードが面倒なら
ファイルをテキトーな部分でカットする方向性はどお?
CD-R 2枚に保存 450 450 くらいでカット。
対処は類似質問みて↓
http://oshiete1.goo.ne.jp/kotaeru.php3?q=610331
ではでは!

追伸
カンタンにならrmファイルに変更かなあ
でも画質は落ちますよ
ネット配信 ストリーミング形式でどぞ!
RealplusG2とかRealEncoderで変換
でもaviでもないしmpegでもないですけど、どお?

参考URL:http://oshiete1.goo.ne.jp/kotaeru.php3?q=610331

画像圧縮?くす(^^
エンコはTMPGEncやaviutlでやるのがふつーです。
ええ 絶対! 
aviutl
http://ruriruri.zone.ne.jp/aviutl/

zipとかで圧縮しても意味ありません サイズ的に。

で、TMPGEncで元より大きくなるのは問題は
コーデック、画像サイズ、 音声ファイルなど
理由はいっぱいあります。対処は類似質問みて↓
http://oshiete1.goo.ne.jp/kotaeru.php3?q=625581

だから圧縮というか再エンコードが面倒なら
ファイルをテキトーな部分でカットする方向性はどお?
CD-R 2枚に保存 450...続きを読む

QTomcatプロジェクトの.propertiesファイルの置き場

当方、Tomcat5.0,Eclipseでサーブレットを開発しております。
初歩的な質問で申し訳ありませんが、プロパティファイルの置き場所が
分からず難儀しております。
どなたかご教示願います。

prop.load(new FileInputStream("C:/work/workspace/worktools/mail.properties"));

上記の様にフルパスを指定すると認識するのですが、

prop.load(new FileInputStream("mail.properties"));

この様にパスを省略するとFileNotFoundExceptionが発生してしまいます。WEB-INF直下にファイルを置いてるのですが、間違いなのでしょうか?

Aベストアンサー

FileInputStreamを相対パスで指定した場合は、JVMの起動ディレクトリがルートになります。
記憶があいまいですが、Eclipseから起動した場合は、workspaceがルートとなるじゃなかったでしょうか。
Tomcatのコンソールから起動した場合は、TOMCAT_HOMTがルートとなります。
通常はそういうことはしないので、クラスパスを通すか、WEB-INF/classeに配置し、ClassLoader#getResourceAsStreamを使います。

Qファイルの圧縮方法が解りません

窓の杜やベクター等に置かれている、フリーの圧縮、解凍ソフトをダウンロードしていますが、テキストファイルや、画像ファイルの圧縮方法が解りません。何方か教えて頂けませんか?

Aベストアンサー

ソフトの開発者のサイトで質問することをお奨めします。

ソフトごとに操作方法が異なりますので、使用しているソフト名すらない状態では誰も必要とする回答を出せません。

窓の杜やベクターでは開発者のサイトへのリンクがありますから、そこからアクセスできますよ。

Qtomcat上でのpropertiesファイルの扱いについて

内容)tomcat起動時にpropertiesファイルの内容を変更しても、有効にならないのは仕様でしょうか。

Servletから以下のコマンドを使用し、propertiesファイルを読み込む
プログラムを作成しました。

private static final String FILE_NAME = "test.properties";
InputStream inputStream = this.getClass().getClassLoader().getResourceAsStream( FILE_NAME );

プログラムを実行し、FILE_NAMEの各キー値をメモしました。
FILE_NAMEの各キーの値を編集後(tomcatの再起動はしていない)、
再度プログラムを実行したところ、以前のpropertiesファイルの
キー値が返ってきてしまいました。

これは仕様でしょうか。

Aベストアンサー

No2です。

クラスローダの名前は
System.out.println(this.getClass().getClassLoader().class.getName());
でわかります。

あとはそのクラスの実装ですが、Tomcatであればソースコードが公開されているので、それを見ればわかります。

Tomcat未経験ですので、どのクラスローダが使用されているのかわかりませんが、Tomcat6.0.13のソースを見てみました。
例として WebappClassLoader というクラスを見ると、resourceEntries という名の HashMap のフィールドがありここに取得したリソースがキャッシュされています。getResourceAsStream からたどれば、初回取得時に resourceEntries に put され、2回目以降は resourceEntries から get していることがわかります。

こんな感じで調べてみてはいかがでしょう。

Qpsdファイルの圧縮方法

psdファイルの圧縮方法を教えてください。(基本的質問で恐縮ですが)
win98です。なお、ファイルは9MB程度ですが、圧縮したものを解凍する際、鮮明度が落ちずに元通りの画像で開けますでしょうか?

Aベストアンサー

●大きなサイズのファイルを分割して送付

+Lhaca 1.20 デラックス版での分割方法
http://park8.wakwak.com/~app/Lhaca/

 1. インストールは、ダウンロードした Lhaca120.exe を実行する。
 2. デスクトップに作成された +Lhaca のショートカットに、
   対象のファイルをALTキーを押しながらドロップする。
 3. 保存場所を聞いてくるので、望みの場所を指定する。
   (圧縮形式は、相手が解凍できる形式を選ぶ。)
 4. 分割されたファイル群と結合用のバッチファイルが作成される。
   (デフォルトでは 1.2MB を上限として分割される。)
   (このサイズは +Lhaca で変更できる。)
 5. (4)のファイル全てを、容量を超えないようにメールに添付して送信
   する。
   (添付ファイル総数を本文に明記すること。)
 6. 受け取った側は、全ての添付ファイルを一箇所に集めて、バッチファ
   イルを実行する。
   (操作手順は、本文に明記すること。)
 7. 分割されたファイルが結合されるので、結合された圧縮ファイルを解
   凍する。
 8. 9MBのファイルが解凍されるので、作業する。


これでどうかな!?

※他の圧縮ソフトも分割機能が備わっていると思うが・・・

●大きなサイズのファイルを分割して送付

+Lhaca 1.20 デラックス版での分割方法
http://park8.wakwak.com/~app/Lhaca/

 1. インストールは、ダウンロードした Lhaca120.exe を実行する。
 2. デスクトップに作成された +Lhaca のショートカットに、
   対象のファイルをALTキーを押しながらドロップする。
 3. 保存場所を聞いてくるので、望みの場所を指定する。
   (圧縮形式は、相手が解凍できる形式を選ぶ。)
 4. 分割されたファイル群と結合用のバッチファイルが作成される。
   (...続きを読む

QTomcatのpropertiesファイルの読み込みについて

Tomcat4.1でWEB-INF/classes/resource/a.propertiesというリソースファイルを
<a.class>.getResourceAsStream("/resource/a.properties");
と記述して読み込もうとしています。実際この記述でサーバ(Solaris)上ではうまく読み込めているのですが同じソースにもかかわらずローカルの開発環境(All-In-One EclipseのTomcat)ではうまくいきません。
eclipseのTomcatのクラスパス周りの設定だとは思っていますがどこを設定していいかわかりません。
WEB-INF/classes/配下は特に設定が必要ないのでは?とも思いますし・・。
ちなみにサーブレット・その他のクラスなどは問題なく動いてるようです。

初めての質問ですのでちょっとわかりにくいかも知れませんが
もしわかる方がいらっしゃればご回答よろしくお願いします。

Aベストアンサー

ごめんなさい。

<a.class>.getClassLoader().getResourceAsStream("resource/a.properties");
でやってみてください。

その際、a.classはWEB-INF/classesにあるクラスを指定して下さい。

QNTFS圧縮したファイルを全部まとめて戻す方法

NTFS圧縮したファイルをプロパティからひとつひとつチェックをはずして戻すのではなく、圧縮されたファイルを全部まとめて元に戻す方法ってあるのでしょうか?

Aベストアンサー

圧縮を解除したいファイルを全て選択した状態で
→プロパティ→NTFS圧縮のチェックを外す→OK

それらのファイルがフォルダに入っているなら
フォルダのプロパティからやってもいい。
(サブフォルダにも適用するか尋ねられるからOKにする)

QSAStrutsのapplication_ja.properties

SAStrutsのapplication_ja.properties

SAStrutsのapplication_ja.propertiesについて。
SAStrutsでアノテーションを使用したバリデートチェックで、
エラーの文言のプロパティ部分を日本語で表示するため、
src/main/resourcesのapplication_ja.propertiesに対して、
以下の形式でプロパティ名で定義して、

labels.(プロパティ名)=xxx

実行しているのですが、その設定内容が反映されません。

公式のチュートリアルの設定どおりで、実行しているのですが、
原因を調査しようとして、調べてみたところ、

編集したapplication_ja.propertiesが、
src/main/webapp/WEB-INF/classes配下に、
アップされていないことが分かりました。

HOT deployの機能で、application_ja.propertiesも
アップされると認識していたのですが、
どこか設定抜けがあるのでしょうか?

ちなみに、struts-config.xmlのmessage-resourcesタグ上には、
以下のように設定しています。

<message-resources parameter="application"
factory="org.seasar.struts.util.S2PropertyMessageResourcesFactory"/>

最悪、ファイル自体を手動でコピーしてしまえばいいのですが、
HOT deployで出来ないものかと思い質問させて頂きました。

よろしくお願いします。

SAStrutsのapplication_ja.properties

SAStrutsのapplication_ja.propertiesについて。
SAStrutsでアノテーションを使用したバリデートチェックで、
エラーの文言のプロパティ部分を日本語で表示するため、
src/main/resourcesのapplication_ja.propertiesに対して、
以下の形式でプロパティ名で定義して、

labels.(プロパティ名)=xxx

実行しているのですが、その設定内容が反映されません。

公式のチュートリアルの設定どおりで、実行しているのですが、
原因を調査しようとして、調べてみたところ、

編集し...続きを読む

Aベストアンサー

こちらを参照
http://s2struts.seasar.org/ja/1.2/12xTo13x.html
一応代表サイトだしね。
ブックマークに入れておくといいわ。


人気Q&Aランキング

おすすめ情報