Spring Framework: Difference between revisions
From My Limbic Wiki
(2 intermediate revisions by the same user not shown) | |||
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'''} | ||
Line 23: | Line 24: | ||
= Spring Modules = | = Spring Modules = | ||
Makes the code easy to write | Makes the code easy to write | ||
* JDBC | |||
* MVC | |||
* AOP | |||
* ORM | |||
* JMS | |||
* Test | |||
= Very good at integrating other Frameworks = | = Very good at integrating other Frameworks = | ||
* Hibernate (ORM) | * [[Hibernate]] (ORM) | ||
* iBatis (Object Mapping) | * iBatis (Object Mapping) | ||
* Junit & Mockit (Test) | * Junit & Mockit (Test) |
Latest revision as of 22:13, 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)