Spring
如何实现一个IOC容器
配置文件配置包扫描路径
递归包扫描获取.class文件
反射,确定需要交给IOC管理的类
对需要注入的类进行依赖注入
配置文件中指定需要扫描的包路径
定义一些注解,...,除了实现自身的核心功能之外,这些组件还经常承担着额外的职责,例如日志,事务管理和安全这样的核心服务经常融入到自身具有的核心业务逻辑的组件上去,这些系统服务经常被称为横切关注点,因为他们会跨越系统的多个组件...当我们需要为分散的对象引入公共行为的时候,OOP则显得无能为力,也就是说,OOP允许你从上到下的关系,但并不适合定义从左到右的关系,例如日志功能
日志代码往往水平地散布在所有对象层次中,而与它所散布到的对象的核心功能毫无关系...容器中工作时,它包含很多portlet.如果你想要声明让所有的portlet共用全局的存储变量的化,那么这全局变量需要存储在globla-session中,全局作用域与Servlet中的session作用域效果相同...,消除了JDBC大量冗余的代码,不需要手动开关连接
很好的与各种数据库兼容
能够与Spring很好的集成
提供映射标签,支持对象与数据库的ORM字段关系映射,提供对象关系映射标签,支持对象关系组件维护