6

Systemプロパティがいつ変更されるのか知りたいのですが。アプリケーションサーバーに、どういうわけかシステムプロパティを変更しているアプリケーションがあります(System.setProperty()私は思います)。私は調べていましたが、さまざまなアプローチを見つけました。

  1. JPDA?
  2. オブザーバー&オブザーバブル?
  3. プロパティ変更リスナー?
  4. JMX?

助言がありますか?前もって感謝します。

4

2 に答える 2

8

システムのプロパティを独自のカスタムサブクラスに置き換えることができます。

MyProperties newProps = new MyProperties(System.getProperties());
System.setProperties(newProps);

次に、関連するメソッドをフックするPropertiesのサブクラスを記述します。

于 2012-05-22T21:56:54.970 に答える
1

主に問題を見つけたい場合は、これを使用することを検討しますSecurityManager。利用可能ないくつかの方法がありcheckPropertiesAccess()、問題を見つけるcheckPropertyAccess()のに役立つように見えますが、必ずしも「システム プロパティが変更されたときに通知する」ことができるとは限りません。

于 2012-05-22T21:57:58.153 に答える