2

私のWebアプリケーションは多くの顧客サーバーにインストールされています。アプリはメールを送信する必要があるため(パスワード回復)、顧客ごとにメールサーバー情報を設定するための良い方法が必要です。

各顧客がメールサーバー情報を入力できるxmlファイルがあればいいのですが、アプリはそこからそれを取得しますか?

より良い方法はありますか?

4

3 に答える 3

2

より多くの情報がなければ、具体的な提案をするのは難しいです。スタンドアロンアプリの場合、単純なプロパティファイル( javadoc )を使用する傾向があります。

  • これらはJavaでの処理が簡単です(簡単に読み書きできます。これらは。によってサポートされていMapます。
  • XMLよりもはるかに簡単に緊急時に手動で編集できます。

いくつかの欠点があります:

  • これらはASCII(ISO-8859-1)のみであるため、拡張Unicode文字を記述したい場合に問題が発生する可能性があります。Javaからファイルを読み書きする場合、問題はありません。Propertiesクラスがこの変換を行います。
  • 一部のSMTPサーバーには認証が必要です。暗号化されていないパスワードをプロパティファイルに保存することはお勧めできません。プロパティファイルは誰でも読み取れる可能性があります。この場合、ある種の可逆暗号化メカニズムを考え出す必要がありますが、それ自体が課題です。XMLに対してもこれを行う必要があります。ユーザーが権限を使用してこのファイルを自分で保護するように指定できますが、これは自分で暗号化するほど強力ではありません。

より良い方法があると確信しています-そしてあなたはたくさんの答えを得るでしょう-しかし私見、これらのファイルはシンプルで、比較的頑丈で、扱いやすいです。

于 2012-09-19T14:01:36.447 に答える
1

PropertiesXMLは重く、解析が必要であり、電子メールサーバー(名前、ポートなど)を見つけるためにキャプチャするデータポイント間に階層関係が実際にはないため、Javaファイル形式を使用します。

于 2012-09-19T13:55:32.457 に答える
1

プロパティファイルとjava.util.PreferencesAPIを使用しないのはなぜですか?ホスト/ユーザー名/パスワードの組み合わせを指定するだけの場合、XMLが提供する複雑さ/柔軟性が必要になるかどうかはわかりません。

より柔軟にしたい場合は、Apache Commons Config libを確認してください。これにより、構成メカニズムを抽象化し、階層を指定できます。メールサーバー構成を提供している場合、他に何を構成可能にすることができますか?

于 2012-09-19T13:55:39.217 に答える