spring是一个使用java语言编写的轻量级开源框架,解决了项目中的一些通用问题,例如依赖注入、切面织入等,同时还提供了项目中各种技术的一站式的解决、整合方案。
spring的基础功能:控制反转(IOC)和面向切面(AOP)。
spring的基础核心项目:Spring framework
二、spring优势1、容器性质,方便解耦,简化开发(核心):IOC容器管理对象间的依赖关系;
2、AOP编程的支持(核心):使用AOP功能,方便进行面向切面的编程;
3、声明式事务的支持;
4、集成各种优秀框架;
5、降低JavaEE API的使用难度;
三、spring模块1、Core Container,核心容器:Core、Beans、Context和expression Language模块;
(1)Core和Beans模块:框架的基础部分,提供反转控制(IOC)和依赖注入(DI);
(2)Context模块:构建于Core和Beans模块基础之上,提供了对国际化、事件传播、资源加载和对Context的透明创建的支持。ApplicationContext接口是Context模块的关键;
(3)expression Language模块:提供强大的表达式语言在运行时查询和 *** 纵语言;
2、Data Access/Integration,数据访问/集成部分:JDBC、ORM、OXM、JMS和Transaction模块;
(1)JDBC模块:提供了一个JDBC抽象层,可以消除冗长的JDBC编码和解析数据库厂商特有的错误代码;
(2)ORM模块:为对象-关系映射API-JPA(Java持久层API)、JDO(Java数据对象)、Hibernate、Mybatis等提供一个交互层;
(3)OXM模块:提供了一个对Object/XML映射实现的抽象层,Object/XML映射实现包括JAXB、Castor、XMLBeans、JiBX和XStream;
(4)JMS(Java Messaging Service)模块:包含了一些制造和消费消息的特性;
(5)Transaction模块:该模块支持编程和声明性的事物管理,这些事物类必须实现特定的接口,并且对所有的POJO都适用;
3、Web:Web、Servlet、WebSocket、Portlet模块:
(1)Web模块:提供了基础的面向web的集成特性;
(2)servlet模块:SpringMVC(Spring model-view-controller)实现,SpringMVC使得模型范围内的代码和web forms之间的分离开;
(3)WebSocket模块:提供了对WebSocket的支持;
(4)Portlet模块:提供了用于portlet环境的MVC的实现,Portlet是和Servlet类似的一种web技术;
4、AOP和Instrumentation:
(1)AOP模块(使用AspectJ框架实现):提供面向切面编程的实现,可以定义方法拦截器和切点,将逻辑代码分开,降低耦合性;
(2)Aspects模块:对AspectJ的集成支持;
(3)Instrumentation模块:提供了class instrumentation支持和classloader实现,可以在特定的应用服务器上使用;
5、Test
Test模块:支持使用JUnit和TestNG对Spring组件进行测试。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)