Spring release package details

Source: Internet
Author: User

The original author of this article cannot be found, and the source cannot be indicated here. Please forgive me. If you have any problems or infringe on your interests, please contact me.

Spring 2.0.2 is used as the description here. The spring2.0 framework requires j2se 1.3 and J2EE 1.3 (servlet 2.3, JSP 1.2, JTA 1.0, and EJB 2.0 ). JDK 1.5 is required during compilation; aspectj is required to compile the full version including all aspects (aspects. When spring's JSP tag library or EJB is not used, J2EE 1.2 (servlet 2.2, JSP 1.1) can meet the running requirements. Spring2.0 provides log4j 1.2, cglib 2.1, Jakarta commons attributes 2.1/2.2, aspectj 5, JMX 1.0/1.2, JCA 1.0, Hibernate 2.1/3.0/3.1/3.2, toplink 9.0.4/10.1.3, JDO 1.0/2.0, JPA 1.0, ibatis SQL maps 2.1/2.2/2.3, Caucho's Hessian & burlap 2.1/3.0, JAX-RPC 1.1, quartz 1.5/1.6, ehcache 1.2, jstl 1.0/1.1, velocity 1.4, freemarker 2.3, jasperreports 1.2, struts/tiles 1.1/1.2/1.3, JSF 1.1/1.2, Jakarta commons fil Integration capabilities of eupload 1.1 and other frameworks. Spring2.0 compressed Package content spring2.0 compressed package directory description aspectj directory is the use of aspectj source code and test program files under the Spring framework. Aspectj is the earliest application framework for providing AOP in Java. The Dist directory contains the spring release package. The release package is described in detail below. The docs directory contains related documents, including javadoc with spring API, reference Reference Guide, spring label library usage file, and MVC-step-by-step instructions and examples of spring MVC. They are all good documents. It is worth studying. The lib directory is the third-party open source package on which spring depends. The mock directory is the mock source program for spring-assisted application testing. The sample source code of spring and sample configuration of the simple webapp sample framework under the samples directory are worth learning about jpetstore and petclinic, of course, other countries, imagedb, and tiles-example can also be referenced. The src directory is the source program of spring. Spring unit test source program under the test directory. The tiger directory is for source programs and test programs that use Java 1.5 in the Spring framework. Tiger is the development code of JDK 1.5. The other files in the root directory are compilation and description files. If you are good at English, you can see the readme.txt file. Don't say I didn't remind you, hey. The following describes the structure of the spring package. The jar package in the DIST directory is described in detail. Understanding this helps us reduce the size of the release package and increase our understanding of the spring architecture. Spring. jar is a single jar package that contains a complete release module. But does not include mock. jar, aspects. jar, spring-portlet.jar, and spring-hibernate2.jar. Spring-src.zip is all the source code compressed package. Except spring. JAR file. Spring also includes 21 other independent jar packages, each containing the corresponding spring components. You can choose to combine your own jar packages as needed, instead of introducing the entire spring. jar. Spring-core.jar this jar file contains the basic Spring framework core tool class. Other components of spring must use the class in this package, which is the basic core of other components. Of course, you can also use these tool classes in your own application system. The external dependency is commons logging (log4j ). Spring-beans.jar this jar file is used by all applications, it contains access to the configuration file, create and manage beans and conduct inversion of control/dependency injection (IOC/di) all operation-related classes. If the application only requires basic IOC/di support, introduce spring-core.jar and spring-beans.jar files. The external dependency is spring-core, (cglib ). The spring-aop.jar jar package contains class and source code-level metadata support required when spring's AOP features are used in applications. Use spring features based on AOP, such as declarative transaction management, to include the jar package in the application. The external dependency is spring-core, (spring-beans, AOP alliance, cglib, commons attributes ). Spring-context.jar this jar file provides a lot of extensions for the spring core. You can find all the classes required to use the spring applicationcontext feature, all the classes required by jdni, the instrumentation component, and related classes for validation. The external dependency is spring-beans (spring-AOP ). Spring-dao.jar this jar file contains all the classes for spring Dao, Spring transaction for data access. To use declarative transaction support, you also need to include spring-aop.jar in your own applications. The external dependency is spring-core, (spring-AOP, spring-context, jta api ). Spring-jdbc.jar this jar file contains all classes that encapsulate spring's JDBC data access. The external dependency is spring-beans and spring-Dao. Spring-support.jar this jar file contains support for UI templates (velocity, freemarker, jasperreports), mail services, script services (jruby), cache (ehcache), Task Scheduler Scheduling (uartz) class. External Dependency on spring-context, (spring-JDBC, velocity, freemarker, jasperreports, bsh, groovy, jruby, quartz, ehcache) spring-web.jar this jar file contains web application development, core classes required when using the Spring framework, including classes that automatically load the web application context feature, Struts and JSF integration classes, file upload support classes, filter classes, and a large number of tool-assisted classes. The external dependency is spring-context, Servlet API, (jsp api, jstl, commons fileupload, cos ). Spring-webmvc.jar this jar file contains all classes related to the spring MVC framework. Includes the framework Servlets, Web MVC Framework, controller and view support. Of course, if your application uses an independent MVC framework, you do not need any classes in the jar file. The external dependency is spring-web, (spring-support, tiles, itext, poi ). Spring-portlet.jarspring self-implemented a framework similar to spring MVC. Includes an MVC Framework and controller. The external dependency is spring-web and Portlet API (spring-webmvc ). Spring-struts.jarStruts framework support makes it easier to integrate Struts frameworks. The external dependency is spring-web and struts. Spring-remoting.jar this jar file contains classes supporting EJB, remote call remoting (RMI, Hessian, burlap, HTTP invoker, JAX-RPC. External Dependency spring-AOP, (spring-context, spring-web, Hessian, burlap, JAX-RPC, ejb api ). Spring-jmx.jar this jar package provides a support class for JMX 1.0/1.2. External dependencies include spring-beans, spring-AOP, and JMX APIs. Spring-jms.jar this jar package provides a support class for JMS 1.0.2/1.1. External dependencies include spring-beans, spring-Dao, and JMS APIs. Spring-jca.jar support for JCA 1.0. The external dependency is spring-beans, spring-Dao, and JCA APIs. Spring-jdo.jar support for JDO 1.0/2.0. The external dependency is spring-JDBC, jdo api, (spring-Web ). Spring-jpa.jar support for JPA 1.0. The external dependency is spring-JDBC, jpa api, (spring-Web ). Spring-hibernate2.jar support for hibernate 2.1, is no longer recommended. The external dependency is spring-JDBC, hibernate2, (spring-Web ). Spring-hibernate3.jar support for hibernate 3.0/3.1/3.2. The external dependency is spring-JDBC, hibernate3, (spring-Web ). Spring-toplink.jar support for the toplink framework. The external dependency is spring-JDBC and toplink. Spring-ibatis.jar support for ibatis SQL maps. The external dependency is spring-JDBC and ibatis SQL maps. The other two packages. Spring-mock.jar this jar file contains spring a set of mock classes to assist in application testing. The Spring Test Suite uses a large number of mock classes, making testing easier. It is convenient to simulate the httpservletrequest and httpservletresponse classes in Web application unit testing. And provides support for JUnit. The external dependency is spring-core. The spring-aspects.jar provides support for aspectj so that you can easily integrate aspect-oriented features into the IDE, such as Eclipse ajdt. External Dependency. Weaver jars (Dist/weavers) description. Spring-agent.jarSpring instrumentationsavingagent (for instrumentationloadtimeweaver), a device agent package, can refer to the jdk1.5 instrumentation function for more information. External Dependency none (for use at JVM startup: "-javaagent: spring-agent.jar "). The spring-tomcat-weaver.jar extends Tomcat's classloader so that it can use the instrumentation (device) class. External Dependency none (for deployment into Tomcat's "server/lib" directory ). To use JSP as the parameter of spring's Web MVC tags, JSP 2.0 is required. Or select jstl (standard. Jar) of Jakarta ). The selection of these release packages is actually quite simple. If you are building a web application and using spring throughout the process, it is best to use a single whole spring. JAR file; if your application only uses a simple inversion of control/dependency injection (IOC/di) container, you only need to spring-core.jar and spring-beans.jar; if you have high requirements for release size, you have to carefully select the JAR file that contains the features you need. With an independent release package, you can avoid including all the classes that your application does not need. Of course, you can use other tools to make sure that the entire application package is smaller. The focus of space saving is to find out the spring dependency classes you need accurately, then merge the required classes and packages. Eclispe has a plug-in named classpathhelper to help you find the dependent classes.

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.