実現したいこと
呼び出し元クラスのpublicメソッドを、呼び出し先で使用したいです。
※スレッドセーフにしたいため、newはしない方針でコードを書いています。
発生している問題・分からないこと
Service1.main()の中で、呼び出し元であるComponent1のhoge()を使用したいです。
該当のソースコード
Java
1@Component 2public class Component1 { 3 private final Service1 service1; 4 public void component1() { 5 service1.main(); 6 } 7 8 public void hoge() { 9 System.out.println("test"); 10 } 11}
Java
1@Service 2public class Service1 { 3 public void main() { 4 // ここでComponent1.hoge()を使用したいです。 5 } 6}
試したこと・調べたこと
- teratailやGoogle等で検索した
- ソースコードを自分なりに変更した
- 知人に聞いた
- その他
上記の詳細・結果
ダメ元で下記方法でやってみましたが、駄目でした…
@Service
public class Service1 {
private final Component1 component1;
public void main() {
component1.hoge(); // ApplicationContextエラーとなってしまいます。
}
}
補足
特になし
![guest](/img/icon/icnUserSample.jpg)