Spring each jar package role and dependencies

Source: Internet
Author: User
Tags aop

Spring version of the jar package download link http://repo.spring.io/release/org/springframework/spring/

Spring.jar is a single jar package that contains a complete release module. But not including Mock.jar, Aspects.jar, Spring-portlet.jar, and Spring-hibernate2.jar

Example picture of the package directory for Spring-2.5.6.jar

The functions of each jar package are explained below:

1.ORG.SPRINGFRAMEWORK.AOP or Spring-aop.jar

This jar file contains the classes required to use the Spring AOP feature in your app. Using the spring features based on AOP, such as declarative transaction management (declarative Transaction Management), also include this jar package in your application.

Externally dependent Spring-core.jar,spring-beans.jar,cglib-nodep.jar,aopalliance.jar

Attached: Aopalliance.jar: This package is an AOP Federation API package that contains an interface for facets-oriented. Other frameworks that have dynamic weaving capabilities, such as spring, rely on this package.

Cglib-nodep.jar: This package is a powerful, high-performance, high-quality code generation Class library. It can extend Java classes and implement Java interfaces at run time. of course, these actual functions are provided by ASM, what is ASM? Java bytecode manipulation framework. Cglib is the encapsulation of ASM, simplifying the operation of ASM and enabling the dynamic generation of a new class at runtime. In fact, Cglib provides the underlying implementation for spring AOP, and dynamically generates VO/PO (interface-layer objects) for hibernate using Cglib.

2.spring-asm.jar

Spring's independent ASM program, Spring2.5.6 needs Asmjar package, 3.0 began to provide his own independent asmjar.

3.spring-beans.jar

This jar file is used by all applications and contains all classes that access the configuration file, create and manage beans, and perform inversion of control/dependency injection (IOC/DI) operations. If the application requires only basic Ioc/di support, the introduction of Spring-core.jar and Spring-beans.jar files is possible.
Externally dependent Spring-core,cglib-nodep.jar.

4.spring-core.jar
This jar file contains the basic core tool classes of the spring framework. The other components of Spring use the classes in this package, which is the basic core of the others, and of course you can use them in your own application system.
Externally dependent commons-logging, log4j.


5.spring-aop.jar
This jar file contains the class and source-level metadata support required to use spring's AOP features in your app. Using the spring features based on AOP, such as declarative transaction management (declarative Transaction Management), also include this jar package in your application.
Externally dependent spring-core,spring-beans,aopalliance,cglib,commons Attributes.

6.spring-context.jar
This jar file provides a number of extensions to the spring core. You can find all the classes you need to use the Spring ApplicationContext feature, Jdni all the classes you need, instrumentation components, and related classes for validating validation.
Externally dependent Spring-core.jar,spring-beans.jar,spring-aop.jar,commons-collections.jar,aopalliance.jar.

7.spring-dao.jar
This jar file contains all the classes of Spring DAO, spring Transaction for data access. In order to use declarative transaction support, you also need to include Spring-aop.jar in your own application.
Externally dependent SPRING-CORE,SPRING-AOP, Spring-context, JTA API.

8.spring-jdbc.jar
This jar file contains all the classes that encapsulate spring's JDBC data access.
Externally dependent Spring-beans,spring-dao.

9.spring-support.jar
This jar file contains classes that support UI templates (Velocity,freemarker,jasperreports), mail services, scripting Services (JRuby), cache caches (EHCache), Task Scheduler scheduling (Uartz).
Externally dependent Spring-context, SPRING-JDBC, Velocity, Freemarker, JasperReports, BSH, Groovy, JRuby, Quartz, EHCache

10.spring-web.jar
This jar file contains the core classes required to use the spring framework when developing Web applications, including classes that automatically load Web application Context features, Struts and JSF integration classes, File upload support classes, Filter classes, and a large number of tool helper classes.
Externally dependent Spring-context, Servlet API, JSP API, JSTL, Commons FileUpload, COS.

11.spring-webmvc.jar
This jar file contains all the classes related to the Spring MVC framework. Includes framework for SERVLETS,WEB MVC Framework, controller and view support. Of course, if your app uses a stand-alone MVC framework, you don't need any classes in this jar file.
Externally dependent Spring-web, Spring-support,tiles,itext,poi.

12.spring-portlet.jar
Spring's own implementation of a framework similar to spring MVC. Includes an MVC framework and controller.
Externally dependent Spring-web, Portlet Api,spring-webmvc.

13.spring-struts.jar
Struts framework support makes it easier and easier to integrate the struts framework.
Externally dependent spring-web,struts.

14.spring-remoting.jar
This jar file contains classes that support EJBS, remotely invoke remoting (RMI, Hessian, Burlap, Http Invoker, Jax-RPC).
External dependent SPRING-AOP, (SPRING-CONTEXT,SPRING-WEB,HESSIAN,BURLAP,JAX-RPC,EJB API).

15.spring-jmx.jar
This jar package provides support classes for JMX 1.0/1.2.
Externally dependent SPRING-BEANS,SPRING-AOP, JMX API.

16.spring-jms.jar
This jar package provides support classes for JMS 1.0.2/1.1.
Externally dependent SPRING-BEANS,SPRING-DAO,JMS API.

17spring-jca.jar
Support for JCA 1.0. JDO (Java Data object) is a new specification for Java object Persistence and a standardized API for accessing objects in a data warehouse.
Externally dependent Spring-beans,spring-dao, JCA API.

18.spring-jdo.jar
Support for the JDO 1.0/2.0. JCA (EE connector architecture, Java Connector Architecture), you can deploy systems with JCA adapters in other languages to the Java EE Application Server
Externally dependent SPRING-JDBC, JDO API, (spring-web).

19.spring-jpa.jar
Support for JPA 1.0.
Externally dependent SPRING-JDBC, JPA API, (spring-web).

20.spring-hibernate2.jar
Support for Hibernate 2.1 is not recommended for use.
Externally dependent Spring-jdbc,hibernate2, (spring-web).

21.spring-hibernate3.jar
Support for Hibernate 3.0/3.1/3.2.
Externally dependent spring-jdbc,hibernate3, (spring-web).

22.spring-toplink.jar
Support for the TopLink framework.
Externally dependent Spring-jdbc,toplink.

23.spring-ibatis.jar
Support for Ibatis SQL maps.
Externally dependent Spring-jdbc,ibatis SQL Maps.

24.spring-mock.jar
This jar file contains the spring set of mock classes to aid in the testing of the application. The Spring test suite uses a large number of these mock classes, which makes testing easier. Simulating the HttpServletRequest and HttpServletResponse classes is convenient for Web application unit testing. And it provides support for JUnit.
Externally dependent Spring-core.

25.spring-aspects.jar
Provides support for ASPECTJ so that aspect-oriented features can be easily integrated into the IDE, such as Eclipse AJDT.
External dependencies.

26.spring-agent.jar
Spring's instrumentationsavingagent (for Instrumentationloadtimeweaver), a device agent package, can refer to JDK1.5 's instrumentation features for more information.
External dependent none (for use at JVM Startup: "-javaagent:spring-agent.jar").

27.spring-tomcat-weaver.jar
Extend the ClassLoader of Tomcat so that it can use the instrumentation (device) class.
External dependent none (for deployment into Tomcat ' s "server/lib" directory).

(Information summary and personal experience, invasion and deletion)

Spring each jar package role and dependencies

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.