Cod: JVA-010
Durata: 30 ore
Durata: 30 ore
Descriere
Spring este un framework open source lansat pentru prima oara in 2003. Astazi, Spring este foarte popular si utilizat in proiecte care folosesc atat JavaEE cat si JavaSE. Spring Framework este o source extension (features), necesara pentru dezvoltarea aplicatiilor de business complexe in afara software heavyweight models.Spring Framework poate sa fie vazuta ca o colectie de framework-uri mai mici, majoritatea putand sa opereze independent de celelalte. Insa, ofera mai multa functionalitate atunci cand sunt folosite impreuna. Abstract classes, factories si beans sunt construite in asa fel incat programatorul sa se poata concentra pe business logic.
Acest curs ofera participantilor toate informatiile necesare pentru a invata sa lucreze cu Spring Framework. Vor intra in contact cu modulele de baza si optiunile de utilizare dar si cu modul in care pot sa fie folosite in colaborare cu alte tehnologii.
Subiecte curs
Spring IOC- Prezentare Spring Framework
- Istoric
- Conceptul IoC
- Interfata Application Context
- Spring beans
- Configurarea Spring
- Configurarea XML
- Configurarea bazata pe adnotari
- Configurarea bazata pe Java
- Beans scope
- Bean lifecycle
- Event bus
- Event publication
- Event subscription cu @EventListener
- Filtering events cu @EventListener
- Event bus use cases
- Localization
- Configuration profiles
- Spring Expression Language
Spring BOOT
- Ce este Spring Boot?
- Spring Boot root POM spring-boot-starter-parent
- Auto-configuration
- @SpringBootApplication
- @ComponentScan
- @Configuration
- @EnableAutoConfiguration
- Modalitati de configurare
- Accesarea Command Line Properties
- Application Property Files
- Profile-specific Properties
- Placeholders in Properties
- YAML Instead of Properties
- Type-safe Configuration Properties
- Enabling @ConfigurationProperties-annotated types
- Utilizarea @ConfigurationProperties-annotated types
- Configurarea Third-party
- Merging Complex Types
- Validarea @ConfigurationProperties
- @ConfigurationProperties vs. @Value
- Profile
Spring AOP
- AOP use cases
- Types of advice
- Pointcut language
- Aspects chaining
Spring DATA
- CrudRepository
- JpaRepository
- @EnableJpaRepositories
- @EnableTransactionManagement
- @Transactional annotation
- Timeout
- Readonly flag
- Definirea Query methods
- Query Lookup Strategies
- Query Creation
- Property Expressions
- Special parameter handling
- Limiting Query Results
- Repository Methods Returning Collections or Iterables
- Null Handling of Repository Methods
- Streaming query results
- Async query results
- Utilizarea @Query
- Native queries
- Utilizarea sort
- Utilizarea named parameters
- Utilizarea SpEL expressions
- Modificarea Queries
- Implementarea Query Hints
- Projections
- Stored Procedures
- Query by Example
- @Transactional query methods
- Locking
Spring REST
- REST services
- Request &Response payloads
- Request parameters
- Path Parameters
- HTTP headers
- Constraints
- Spring HATEOAS
- Documenting REST service cu Swagger
Spring DATA REST
- Representing Spring Data repository as REST service
- Paging & sorting
- HAL browser
- Personalizarea Spring Data REST
Obiective
- Prezentarea diferitelor optiuni oferite de Spring Framework si cum poate sa fie aplicata pentru a rezolva provocarile care apar in procesele de software development
- Prezentarea detaliat a diferitelor produse dezvoltate sub licenta Spring
Public tinta
- Dezvoltatori Java cu cel putin un an de experienta
Cerinte curs
- Experienta in programarea cu Java SE
- Maven
- Dezirabil: Cunostinte de JDBC & Design patterns (Proxy, Command, Decorator, Template Method, MVC)