Spring
Co to je?
- framewrok pro vývoj J2EE aplikací
- odstraňuje těsné vazby mezi POJO pomocí IoC
- jednotlivé moduly zjednodušují práci s dalšími částmi J2EE (JMS, JMX, JNDI..)
Jak to funguje
- pomocí anotací určíme které třídy mají být vytvořeny v rámci springContextu:
- @Component - obecná komponenta(rodič ostatních)
- @Service - business vrstva
- @Repository - persistence vrstva
- @Controller - controller(z MVC)
@Service
public class ArticleCounterServiceImpl implements ArticleCounterService {
...
Jak to funguje
- třídy která potřebujeme pro práci nevytváříme ale injectujeme:
- @Autowired - najde požadovanou třídu podle typu
- @Qualifier - umožňuje hledat podle jména
@Autowired
@Qualifier("ArticleCounterService")
private ArticleCounterService articleCounterService;
Jak to funguje
- vytvoříme konfigurační třídy pro inicializaci kontextu
- @Configuration - určuje že jde o konfigurační třídu
- @ComponentScan - seznam package které jsou scanovány pro další komponenty
@Configuration
@ComponentScan({
"com.cleverlance.package.for.scan"
})
public class PortletContext {
...
Jak to funguje
- vytvoření spring kontextu a sestavení aplikace proběhne na základě hlavní konfigurační třídy
- buď ručně:
AnnotationConfigApplicationContext applicationContext =
new AnnotationConfigApplicationContext(SpringContext.class);
CalculationService calculationService =
applicationContext.getBean(CalculationService.class);
- nebo se na init třídu odkážeme z descriptoru(bude v dalších přednáškách)
Spring_cv
Spring
- beany je možné vytvořit a konfigurovat i uvnitř konfiguračních tříd pomocí anotace @Bean
@Bean(name = "")
public LoanService standardLoanService() {
return new StandardLoanService();
}
Spring fasttract
By Jiří Čížek
Spring fasttract
- 226