Spring Framework: Difference between revisions
From My Limbic Wiki
Line 5: | Line 5: | ||
* LightWeight container = class don't need interfaced to be loaded | * LightWeight container = class don't need interfaced to be loaded | ||
= Provide = | = Provide = | ||
* Web Applications | |||
* RESTful services | |||
* Secure your web applications | |||
* Communicating with databases | |||
* Handling long running jobs | |||
* Handle external resources or systems you have to work with. | |||
* Testing purposes | |||
* Standalone java projects | |||
* Convert your application into an executable | |||
* Integrate Social Media into your applications | |||
* Quick prototype | |||
* To get Started | |||
=Technical= | =Technical= | ||
* Loose Coupling - {'''@Component''' class > private param interface '''@Autowired'''} + {'''Interface''' > public param} + {Child class '''Implement'''} | * Loose Coupling - {'''@Component''' class > private param interface '''@Autowired'''} + {'''Interface''' > public param} + {Child class '''Implement'''} |
Revision as of 22:05, 20 September 2019
More about Spring https://www.baeldung.com/spring-tutorial
Why Use Spring
- Free to define application Architecture
- Helpfull with dev and test
- LightWeight container = class don't need interfaced to be loaded
Provide
- Web Applications
- RESTful services
- Secure your web applications
- Communicating with databases
- Handling long running jobs
- Handle external resources or systems you have to work with.
- Testing purposes
- Standalone java projects
- Convert your application into an executable
- Integrate Social Media into your applications
- Quick prototype
- To get Started
Technical
- Loose Coupling - {@Component class > private param interface @Autowired} + {Interface > public param} + {Child class Implement}
- Dependency Injection = instanciate Beans and wire dependancies = Spring do it automatically because of the annotation @Autowired
- Better Unit Test
Spring Modules
Makes the code easy to write
- JDBC
- MVC
- AOP
- ORM
- JMS
- Test
Very good at integrating other Frameworks
- Hibernate (ORM)
- iBatis (Object Mapping)
- Junit & Mockit (Test)
More
- Let programmer focus on business logic
- key feature is dependency management
- enables testability
- inversion of control
- application context (bean factory)