Керівництво spring для початківців

Spring Framework 4.x

Eclipse 4.6 NEON (ok for Eclipse 4.5 MARS)

У цій статті я використовую Maven щоб оголосити бібліотеки Spring які буду використовувати, замість того щоб завантажити Spring і оголошувати бібліотку звичайним способом.

Maven це інструмент який допомагає вам керувати бібліотеками автоматично і ефективно, він набув поширення, що кожен програміст Java повинен знати. Якщо ви не знаєте про Maven ви можете приділити 10 хвилин і вивчити про спосіб використання тут:

У разі якщо ви хочете завантажити Spring і оголосити бібліотеку традиційно, ви можете подивитися анотацію в кінці статті.

2 Spring Framework

Зображення нижче ілюструє структуру Spring Framework.

Керівництво spring для початківців

  1. IoC Container. Це найважливіша і найголовніша частина, платформа Spring. Він грає роль конфігурації і управління життєвого циклу (Lifecycle) об'єктів java. У сьогоднішній статті ми вивчимо цю частину.
  2. DAO, ORM, AOP, WEB. Ці модулі є готовими tool або framework інтегровані в Spring.

2.1-Inversion of Control Dependency Injection

Щоб зрозуміти цю ситуація розглянемо деякі класи нижче:

Можна побачити що клас HelloWorldService управляє створення об'єкта HelloWorld.

- У разі вище коли об'єкт HelloWorldService створений від його конструктора (constructor), об'єкт HelloWorld так само створюється, і він створюється від StrutsHelloWorld.

Питання відбудеться в тому, що ви хочете створити об'єкт HelloWorldService одночасно створюється об'єкт HelloWorld. але він повинен бути SpringHelloWorld.
Тому тут HelloWorldService управляє "object creation" в HelloWorld. Чому ми не передаємо створення HelloWorld третій стороні для обробки замість того, щоб створювати його в HelloWorldService. У нас є поняття "inversion of control" тобто "інверсія контролю" (IoC).

І IoC Container буде грати роль управяляющего створює і HelloWorldService і HelloWorld.

IoC = Inversion of Control

Керівництво spring для початківців

IoC Container створює об'єкт HelloWorldService і об'єкт HelloWorld потім передає HelloWorld в HelloWorldService через setter. Робота, яку виконує IoC Container це "впровадження залежності" (Dependency Injection) в HelloWorldService. Залежність тут означає залежність між об'єктами: HelloWorldService і HelloWorld.

Тут ми можемо ясно визначити що таке IoC DI. Давайте замість виконаємо приклад HelloWorld щоб краще зрозуміти.

3 Створити Maven project

Керівництво spring для початківців

Керівництво spring для початківців

Схожі статті