スプリングフィーチャー
スプリングフィーチャー
IOCの概念を知る前に、Class、Object、Instanceの概念を知るには、簡単に言えばClassは「設計図」、Objectは「実体化可能」、Instanceは「実体化された」と理解すれば簡単です.
たとえば、別の方法で「椅子」というオブジェクトをそれぞれ作成するとします.
1.
public void make(){
의자 s = new 의자();
}
2.
public void use(){
의자 s = new 의자();
}
この場合、1番椅子と2番椅子は名前は同じですが違います!各参照アドレスは、異なる方法で管理されます.hipメモリ領域内の他の領域を管理します.オブジェクトの共有が困難です.use()メソッドでは1番椅子を使いたいのですが、そうすると複雑になります.
スプリングはこの問題を簡単に解決する。
スプリングは、ユーザが所有する多数のオブジェクトをスキャンすることによって、hipメモリ空間に直接配置されます.簡単に言えば、「椅子」、「フナ餅」、「ライオン」、「ベッド」など様々な対象があれば、これらはお尻に置きます.
その後、異なる方法で同じオブジェクトを共有してロードできます.この方法からオブジェクトを取得する方法を依存注入(DI)と呼ぶ.Springによって管理されているオブジェクトは、任意のクラスのメソッドで任意の場所から取得して書き込むことができます.
以前、ユーザーがnewを使用してオブジェクトのアドレスを管理していた場合、springはこれらのオブジェクトをスキャンしhipメモリに格納し、springによって直接管理します.これがInversion of Control(制御の逆転)、すなわちIOCの概念である.
スプリングにはフィルターもたくさんあります.スプリングコンテナのフィルタはintercepterと呼ばれ、権限検査を通過し、通過する権利があり、拒否する権利がない.トム・ケイトにもフィルターがあります.
スプリングには減衰がたくさんある.
宣言はコメントですが、コンパイルを無視せずにチェックできます.
@Override、@Component、@Autowired、@Controllerなど.
@Overrideの使用例:
(1) class Animal{ (2)Class dog 상속 Animal{
@Override
run() run()
} }
dogクラスのコンパイル中に「@Override」という宣言が表示され、Animalの親クラスにrun()メソッドがある可能性があり、予想と確認が行われます.存在する場合は正常ですが、存在しない場合はコンパイル中にエラーが発生します.また、スプリングは宣言によってオブジェクトを作成します.
@Componentは次に、説明が追加されたクラスがメモリにロードされ、@Autowiredがクラスにロードされたオブジェクトが変数に格納されることを示します.
(1) (2)
@Component Class B{
Class A{ @Autowired
A a;
} }
上記(1)の例に示すように,@Componentがある場合,springはAクラスをスキャンし,Aクラスを自分が持っているHipMemory空間にロードする.その後、BクラスでAを使用したい場合は、(2)例に従って作成すればよい.スプリングがBクラスをスキャンすると、Bクラスの内部に何の子供がいるかを分析します(返信).ここで、REDOとは、特定のクラス内でどのメソッド、フィールド、およびアクションを追跡するかを意味します.Checkingだけでなく、次に何をするかを設定します.返信は実行時に発生します.
確認@Autowiredに返信すると、springはhipの多くのオブジェクトの中でAタイプと同じオブジェクトがhipメモリにあるかどうかを決定します.hipにAがない場合、aにnull値、hipにAがある場合、hipメモリのオブジェクト.先に説明した対象が入ったDIです.
スプリングにはMessageConverterがあります.デフォルトはJasonです.
Javaプログラムでは,Javaオブジェクトを直接Pythonプログラムに渡すことは困難である.直接伝えるのではなく、どんなプログラムでも理解できる言語で中間変換して伝えると、もっと簡単になります.このとき使われる中間言語はJasonです.JavaデータをJasonに変換し、JasonをPythonデータに変換すると、JavaプログラムとPythonプログラムがデータを交換しやすくなります.このときこの言語をJasonに変換する役割はMessageConverterである.MessageConverterはSpringのLiveryとして存在する.
スプリングは位置決めによりBufferedReaderとBufferedWriterを容易に使用できる.
BufferedReaderとBufferedWriterは、Bytestreamを介してデータ通信を伝送する際に、伝送単位を文字列として可変長データに書き込むクラスである.スプリング上で直接実現する必要はありません.プロンプト@ResponseBodyを使用すると、BufferedWriterを動作させることができます.@ResquestBodyを使用すると、BufferedReaderを動作させることができ、データの読み取りが容易になります.
YouTubeソース:プログラミング、プログラミング、プログラミング
Reference
この問題について(スプリングフィーチャー), 我々は、より多くの情報をここで見つけました https://velog.io/@jh83370/스프링-부트-1テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol