Go Spring--jar Package Detailed

Source: Internet
Author: User

Original address: Http://my.oschina.net/huhaoren/blog/300856?p=1

Spring.jar is a single jar package that contains a full release, and the Spring.jar contains all but The contents of all the other jar packages contained in the Spring-mock.jar, because only in the development environment will use the Spring-mock.jar to carry out the auxiliary testing, the formal application system is not used in these classes.

In addition to the Spring.jar file, Spring includes 13 other separate jar packages, each containing a corresponding spring component, which allows the user to choose to assemble their own jar packages, rather than having to introduce all of the Spring.jar's class files.

(1) Spring-core.jar

This jar file contains the basic core tool classes of the spring framework, and the other components of the spring are used in the class of the package, the basic core of other components, and of course you can use these tools in your own application system.

(2) 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.

(3) 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.

(4) 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 that you need, and the UI aspects used with the template (templating) engine such as Velocity, Freemarker, JasperReports integrated classes, and related classes for verifying validation.

(5) 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.

(6) Spring-hibernate.jar

This jar file contains all of the classes that spring encapsulates for Hibernate 2 and Hibernate 3.

(7) Spring-jdbc.jar

This jar file contains all the classes that encapsulate spring's JDBC data access.

(8) Spring-orm.jar

This jar file contains spring to extend the DAO feature set to support IBATIS, JDO, OJB, TopLink, because Hibernate is already in its own package and is now not included in the package. Most of the classes in this jar file depend on the class in Spring-dao.jar, and you need to include the Spring-dao.jar package when using this package.

(9) Spring-remoting.jar

This jar file contains classes that support EJB, JMS, Remote call Remoting (RMI, Hessian, Burlap, Http Invoker, Jax-RPC).

(Ten) Spring-support.jar

This jar file contains classes that support cache caches (Ehcache), JCA, JMX, mail services (Java mail, COS Mail), Task Scheduler scheduling (Timer, Quartz).

(one) 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 the Webapplicationcontext attribute, struts and JSF integration classes, File upload support classes, the filter class, and a large number of tool helper classes.

(Spring-webmvc.jar)

This jar file contains all the classes related to the Spring MVC framework. Contains Freemarker, JasperReports, Tiles, Velocity, and XSLT related classes for internationalization, labeling, Theme, view presentation. Of course, if your app uses a stand-alone MVC framework, you don't need any classes in this jar file.

(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.

How to choose these packages and decide which ones to use is fairly straightforward. If you're building a web app and will use spring all the way, it's best to use a single full Spring.jar file, if your app simply uses a simple inversion of control/dependency injection (ioc/ DI) container, then just Spring-core.jar and Spring-beans.jar, and if you have a high size requirement for the release, then you have to pick it up and take only the jar file that contains the features you want. With a standalone release package you can avoid including all classes that your app doesn't need. Of course, you can use other tools to make the entire application package smaller, and the space-saving focus is to pinpoint the spring dependent classes you need, and then merge the required classes and packages. Eclispe has a plugin called ClassPath helper that can help you find the classes you depend on.

Org.springframework.aop--spring aspect-oriented programming, which provides AOP (aspect-oriented programming) implementation

org.springframework.asm--spring 2.5.6 need asm jar package, spring3.0 start to provide its own independent ASM jar Package

Integration of the ASPECTJ framework provided by org.springframework.aspects--spring

org.springframework.beans--all applications, including access profiles, creation and management of beans, are the basis of the spring IOC implementation.

Extended support for the org.springframework.context.support--spring context for MVC

org.springframework.context--provides extended services on basic IOC capabilities, as well as support for many enterprise-class services, such as mail services, task scheduling, jndi positioning, EJB integration, remote access, caching, and multiple view layer frameworks.

Org.springframework.core--spring Core Toolkit, other packages depend on this package

Org.springframework.expression--spring Expression Language

Org.springframework.instrument.tomcat--spring integration of the Tomcat connection pool

Org.springframework.instrument--spring Agent interface to the server

org.springframework.jdbc--Simple encapsulation of JDBC

org.springframework.jms--simple encapsulation for simplifying the use of the JMS API

org.springframework.orm--integrates third-party ORM implementations, such as HIBERNATE,IBATIS,JDO and the JPA implementations of spring

Org.springframework.oxm--spring support for Object/xml mappings allows you to switch back and forth between Java and XML

org.springframework.test--simple encapsulation of test frameworks such as JUnit

org.springframework.transaction--declarative and simple programmatic transaction management for JDBC,HIBERNATE,JDO and JPA

Enhancements to org.springframework.web.portlet--spring MVC

org.springframework.web.servlet--Support for j2ee6.0 servlet3.0

The support of the org.springframework.web.struts--integrated struts framework makes it easier and easier to integrate the struts framework.

org.springframework.web--contains the core classes required to use the spring framework when developing Web applications, including classes that automatically load Webapplicationcontext features, struts and JSF integration classes, File upload support classes, Filter class and a large number of tool helper classes.

Spring Package Dependency Description:

1) Spring-core.jar need Commons-collections.jar,spring-core.jar is the following other basic.
2) Spring-beans.jar need Spring-core.jar,cglib-nodep-2.1_3.jar
3) Spring-aop.jar need Spring-core.jar,spring-beans.jar,cglib-nodep-2.1_3.jar,aopalliance.jar
4) Spring-context.jar need Spring-core.jar,spring-beans.jar,spring-aop.jar,commons-collections.jar,aopalliance.jar
5) Spring-dao.jar Need Spring-core.jar,spring-beans.jar,spring-aop.jar,spring-context.jar
6) Spring-jdbc.jar need Spring-core.jar,spring-beans.jar,spring-dao.jar
7) Spring-web.jar need Spring-core.jar,spring-beans.jar,spring-context.jar
8) Spring-webmvc.jar need Spring-core.jar/spring-beans.jar/spring-context.jar/spring-web.jar
9) Spring-hibernate.jar need spring-core.jar,spring-beans.jar,spring-aop.jar,spring- Dao.jar,spring-jdbc.jar,spring-orm.jar,spring-web.jar,spring-webmvc.jar
Spring-orm.jar need spring-core.jar,spring-beans.jar,spring-aop.jar,spring- Dao.jar,spring-jdbc.jar,spring-web.jar,spring-webmvc.jar
One) Spring-remoting.jar need spring-core.jar,spring-beans.jar,spring-aop.jar,spring- Dao.jar,spring-context.jar,spring-web.jar,spring-webmvc.jar
12) Spring-support.jar need Spring-core.jar,spring-beans.jar,spring-aop.jar,spring-dao.jar,spring-context.jar,spring-jdbc.jar
Spring-mock.jar need Spring-core.jar,spring-beans.jar,spring-dao.jar,spring-context.jar,spring-jdbc.jar

Go Spring--jar Package Detailed

Related Article

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.