tiny-spring is a compact educational reimplementation of core Spring Framework concepts for Java developers. It was built to make inversion of control and dependency injection easier to understand than by reading the full Spring codebase. The container supports singleton beans, bean initialization, property injection, and dependency injection between beans. Configuration can be loaded from XML files. The project also implements AspectJ-style AOP with support for interface-based and class-based proxies. Development is organized into milestone Git tags so learners can inspect the framework as features are added step by step. It is intended as a learning project and architectural study rather than a production replacement for Spring.
Features
- Singleton bean management
- Bean initialization and property injection
- Dependency injection between beans
- XML-based configuration loading
- AspectJ-style AOP support
- Interface and class proxy generation