Springは抽象クラス内部でオートワイヤリングできるのか?
2023-11-03 21:51:43
質問
Springは私のオブジェクトを自動化することができませんか?抽象クラス内のオブジェクトを自動配線することは可能でしょうか?すべてのスキーマがapplication-context.xmlで提供されると仮定します。
質問です。ベースクラスと拡張クラス(もしあれば)@Service @Component にどのようなアノテーションを付けるべきでしょうか?
例
abstract class SuperMan {
@Autowire
private DatabaseService databaseService;
abstract void Fly();
protected void doSuperPowerAction(Thing thing) {
//busy code
databaseService.save(thing);
}
}
拡張クラス
public class SuperGirl extends SuperMan {
@Override
public void Fly() {
//busy code
}
public doSomethingSuperGirlDoes() {
//busy code
doSuperPowerAction(thing)
}
アプリケーションコンテキスト.xml
<context:component-scan base-package="com.baseLocation" />
<context:annotation-config/>
どのように解決するのですか?
通常、コンポーネントスキャン用に提供されたベースパッケージに抽象クラスが含まれていれば、Springが自動配線を行うはずです。
@Service
と
@Component
は、どちらもSpringコンテナ内にアノテーションされた型のBeanを作成するステレオタイプです。Spring Docsにあるように
このアノテーションは@Componentの特殊化として機能し、クラスパススキャンによって実装クラスを自動検出できるようにします。 実装クラスがクラスパススキャンによって自動検出されるようにします。
関連
-
[解決済み] インターフェースと抽象クラスの違いは何ですか?
-
[解決済み] インターフェースと抽象クラス(一般的なOO)
-
[解決済み] 抽象クラスはコンストラクタを持つことができますか?
-
[解決済み] Pythonにおける抽象クラスとインターフェースの違い
-
[解決済み] Objective-Cで抽象クラスを作成する
-
[解決済み] 抽象クラスの代わりにインターフェイスを使用する場合とその逆は?
-
[解決済み】Spring @Autowire プロパティとコンストラクタの違いについて
-
[解決済み] Spring BootとMongoDBへの接続設定方法
-
[解決済み] モックMVC - リクエストパラメータをテストに追加する
-
[解決済み] Springのアノテーション@Controllerは@Serviceと同じですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] Spring Boot Rest Controllerは、異なるHTTPステータスコードを返すには?
-
[解決済み] 同じurlパターンに対して異なる引数で2つのメソッドを作成する
-
[解決済み] SpringでLocalDateTime RequestParamを使用するには?StringからLocalDateTimeへの変換に失敗しました」と表示される。
-
[解決済み] Springは@Autowiredアノテーションを付けずにコンストラクタに依存性を注入する
-
[解決済み] Spring CORS 'Access-Control-Allow-Origin' ヘッダが存在しない。
-
[解決済み] クオーツ 決して実行されないCron式
-
[解決済み] Spring MVCのModelAndViewにおけるModelとは?
-
[解決済み] Spring MVCアプリケーションにSwaggerを実装する「簡単な」方法
-
[解決済み] Springのアノテーション@Controllerは@Serviceと同じですか?
-
SpringでGETとPOSTのリクエストメソッドを組み合わせる