java自学之路之Spring项目中每个jar包的作用(知乎)

 

aopalliance有三个主要业务实体:Advice 、Interceptor、Joinpoint。上述三个接口构成了 aopalliance功能结构。其中Interceptor 继承了Advice 可以看作是Advice的特殊功能实现。

aspectjweaver:简单理解,支持切入点表达式等等

__________________________________________________________________________________________________________________________________________________________________

 

1.spring.jar

  是包含有完整发布模块的单个jar 包。

2. org.springframework.aop

  包含在应用中使用Spring的AOP特性时所需的类。

 3. org.springframework.asm

  Spring独立的asm程序, Spring2.5.6的时候需要asmJar 包, 3.0开始提供他自己独立的asmJar。

4. org.springframework.aspects

  提供对AspectJ的支持,以便可以方便的将面向方面的功能集成进IDE中, 比如Eclipse AJDT。

 5. org.springframework.beans

  所有应用都要用到的,它包含访问配置文件、创建和管理bean 以及进行Inversion of Control / Dependency Injection(IoC/DI)操作相关的所有类。

6. org.springframework.context.support

  包含支持缓存Cache(ehcache)、JCA、JMX、 邮件服务(Java Mail、COS Mail)、任务计划Scheduling(Timer、Quartz)方面的类。

 7. org.springframework.context

  为Spring核心提供了大量扩展。可以找到使用Spring ApplicationContext 特性时所需的全部类,JDNI所需的全部类,UI方面的用来与模板(Templating)引擎如 Velocity、FreeMarker、 JasperReports集成的类,以及校验Validation方面的相关类。

 8. org.springframework.core

  包含Spring框架基本的核心工具类,Spring其它组件要都要使用到这个包里的类, 是其它组件的基本核心。

9. org.springframework.expression

  Spring表达式语言。

10. org.springframework.instrument.tomcat

  Spring3.0对Tomcat的连接池的集成。

11. org.springframework.instrument

  Spring3.0对服务器的代理接口。

 12. org.springframework.jdbc

  包含对Spring对JDBC数据访问进行封装的所有类。

 13. org.springframework.jms

  提供了对JMS 1.0.2/1.1的支持类。http://baike.baidu.com/link?url=HfioUoiPUtvgtXEECsRhPJ2Ek2oWQwZgWObWUMF36PQHJ2CFiJ2nb-hxGcfj4kFumjr6-0J9FAnHOkVrbkubYq

14. org.springframework.orm

  包含Spring对DAO特性集进行了扩展,使其支持 iBATIS、JDO、OJB、TopLink, 因为Hibernate已经独立成包了,现在不包含在这个包里了。这个jar文件里大部分的类都要依赖spring-dao.jar 里的类,用这个包时你需要同时包含spring-dao.jar包。

 15. org.springframework.oxm

  Spring 对Object/XMl的映射支持,可以让Java与XML之间来回切换。

 16. org.springframework.test

  对Junit等测试框架的简单封装。

17. org.springframework.transaction

  为JDBC、Hibernate、JDO、JPA等提供的一致的声明式和编程式事务管理。

 18. org.springframework.web.portlet

  SpringMVC的增强。

19. org.springframework.web.servlet

  对J2EE6.0 的Servlet3.0的支持。

20. org.springframework.web.struts

  Struts框架支持,可以更方便更容易的集成Struts框架。

 21. org.springframework.web

  包含Web应用开发时,用到Spring框架时所需的核心类,包括自动载入 WebApplicationContext特性的类、Struts与JSF集成类、文件上传的支持类、Filter类和大量工具辅助类

 22.Spring webmvc:

  包含SpringMVC框架相关的所有类。包含国际化、标签、Theme、视图展现的FreeMarker、JasperReports、Tiles、Velocity、XSLT相关类。当然,如果你的应用使用了独立的MVC框架,则无需这个JAR文件里的任何类。
 23.Spring webmvc portlet:Spring MVC的增强

24.spring-tx.3.2.2.jar

spring提供对事务的支持,事务的相关处理以及实现类就在这个Jar包中

 

 ________________________________________________________________________________________________________________________________________________________________________________________________________________________

 

总结一下spring项目需要引入哪些jar包,以及这些jar包的作用是什么。

 

1.commons-logging.jar

作用:记录程序运行时的活动的日志记录

2.spring-aop.jar

作用:在程序中使用spring的AOP特性时需要的类,比如声明式事务管理。

3.spring-core.jar

作用:包含spring框架基本的核心工具类,spring的其他组件都要使用到这个包里的类。

4.spring-context.jar

作用:为spring核心提供了大量的扩展,可以找到在使用spring applicationcontext特性时用到的所有的类。

5.spring-beans.jar

作用:访问配置文件,创建和管理bean以及进行控制反转依赖注入操作相关的类。

6.spring-expression.jar

作用:spring表达式语言

7.spring-web.jar

作用:这个jar文件包含web应用开发时,用到spring框架时所需要的核心类,包括自动载入web applicationcontext 特性额类,struts与jsf集成类,文件上传的支持类,filter类和大量的工具辅助类。

8.spring-tx.jar

作用:为jdbc,hibernate,jdo,jpa等提供的一致的声明式和编程式事务管理。

9.aopalliance.jar

作用:包含了针对面向切面的一些接口

10.aspectjrt.jar

作用:提供对aspectj的支持,以便可以方便的将面向方面的功能集成进ide中。

11.spring-dao.jar

作用:这个jar文件包含Spring DAO、Spring Transaction进行数据访问的所有类。

12.spring-hibernate.jar

作用:这个jar文件包含Spring对Hibernate 2及Hibernate 3进行封装的所有类。

13. spring-jdbc.jar

作用:这个jar文件包含对Spring对JDBC数据访问进行封装的所有类。

14.spring-orm.jar

作用:这个jar文件包含Spring对DAO特性集进行了扩展,使其支持 iBATIS、JDO、OJB、TopLink,因为Hibernate已经独立成包了,现在不包含在这个包里了。这个jar文件里大部分的类都要依赖spring-dao.jar里的类,用这个包时你需要同时包含spring-dao.jar包。

15. spring-remoting.jar

作用:这个jar文件包含支持EJB、JMS、远程调用Remoting(RMI、Hessian、Burlap、Http Invoker、JAX-RPC)方面的类。

16. spring-support.jar

作用:这个jar文件包含支持缓存Cache(ehcache)、JCA、JMX、邮件服务(Java Mail、COS Mail)、任务计划Scheduling(Timer、Quartz)方面的类。

17.spring-webmvc.jar

作用:这个jar文件包含Spring MVC框架相关的所有类。包含国际化、标签、Theme、视图展现的FreeMarker、JasperReports、Tiles、Velocity、XSLT相关类。当然,如果你的应用使用了独立的MVC框架,则无需这个JAR文件里的任何类。

18. spring-mock.jar

作用:这个jar文件包含Spring一整套mock类来辅助应用的测试。Spring测试套件使用了其中大量mock类,这样测试就更加简单。模拟HttpServletRequest和HttpServletResponse类在Web应用单元测试是很方便的。

 

我们了解每个包的作用后才可以在搭建项目时选择我们需要的jar包进行引入,避免了一些无用的jar包占用资源。

java自学之路之Spring项目中每个jar包的作用(知乎)

上一篇:Java面向对象系列(8)- Super详解


下一篇:Linux服务器通用安全加固指南