zoukankan
html css js c++ java
Spring学习1-初识Spring
一、简介
1、Spring是一个开源的控制反转(Inversion of Control ,IoC)和面向切面(AOP)的容器框架.它的主要目得是简化企业开发.
2、为何要使用Spring?
i:降低组件之间的耦合度,实现软件各层之间的解耦。
ii:可以使用容器提供的众多服务,如:事务管理服务、消息服务等等。当我们使用容器管理事务时,开发人员就不再需要手工控制事务.也不需处理复杂的事务传播。
i3:容器提供单例模式支持,开发人员不再需要自己编写实现代码。
i4:容器提供了AOP技术,利用它很容易实现如权限拦截、运行期监控等功能。
i5:容器提供的众多辅作类,使用这些类能够加快应用的开发,如: JdbcTemplate、 HibernateTemplate。
i6:Spring对于主流的应用框架提供了集成支持,如:集成Hibernate、JPA、Struts等,这样更便于应用的开发。
3、
对于Spring的下载我们可以到官网:
http://www.springsource.org/download
(提示是注册下载,其实可以不用注册的,下面有选项)
下载spring,
然后进行解压缩。
目录结构:
Docs:该目录下面是开发帮助文档
Libs:该目录下面是spring框架的组件包,从3.X后被包被详细的区分
Schema:该目录下面是应用于未联网状态下需要引入的XML配置文件提示概要文件。
二、Spring部分jar包详解
(
红题字一般是必导jar包
)
Spring 3.1与之前的 2.X 的不一样,新版本把原来的包分解了,功能分工明确:
org.springframework.aop-3.1.1.RELEASE.jar
---- ----spring 的面 向切面编程,提供AOP(面向切面编程)实现。
Spring配置文件applicationContext
.xml
中schema:xmlns:aop="http://www.springframework.org/schema/aop"验证会使用到该jar,如果没有此jar包
applicationContext
.xml
将无法解析
org.springframework.asm-3.1.1.RELEASE.jar ---- ---- Spring独立的asm程序, Spring2.5.6的时候需要asmJar 包,3.0开始提供他自己独立的asm.jar 。ASM是小巧轻便的 Java 字节码操控框架 ,它能方便地生成和改造 Java 代码。 Hibernate 和 Spring 在底层都用到了 ASM(CgLib 底层用的 asm)。
org.springframework.aspects-3.1.1.RELEASE.jar ---- ---- spring整合了aspectjrt.jar,也可以使用aspectjrt.jar来代替。
org.springframework.beans-3.1.1.RELEASE.jar
---- ---- springIoC(依赖注入)的基础实现,所有应用都要用到的,它包含访问配置文件、创建和 管理bean以及进行Inversion of Control / Dependency Injection(IoC/DI)操作相关的所有类。
org.springframework.context.support-3.1.1.RELEASE.jar ---- ---- spring-context 的扩展支持,包含支持缓存Cache(ehcache)、JCA、JMX、邮 件服务(Java Mail、COS Mail)、任务计划Scheduling(Timer、Quartz)方面的类。
org.springframework.context-3.1.1.RELEASE.jar
---- ----spring 提供在基础 IoC 功能上的扩展服务,此外还提供许多企业级服务的支持,如 邮件 服务、任务调度、JNDI定位、EJB 集成、远程访问、 缓存以及各种视图层框架的封装等。
org.springframework.core-3.1.1.RELEASE.jar
---- ---- 包含Spring框架基本的核心工具类,Spring其它组件要都要使用到这个包里的类,是其它组 件的基本核心。
org.springframework.expression-3.1.1.RELEASE.jar
---- ----spring 表达式语言。
org.springframework.instrument.tomcat-3.1.1.RELEASE.jar ---- ----spring3.1 对 Tomcat 的连接池的基成。
org.springframework.instrument-3.1.1.RELEASE.jar ---- ----spring3.1 对服务器的代理接口。
org.springframework.jdbc-3.1.1.RELEASE.jar ---- ----包含对Spring对JDBC数据访问进行封装的所有类。
org.springframework.jms-3.1.1.RELEASE.jar ---- ----提供了对JMS 1.0.2/1.1的支持类。
org.springframework.orm-3.1.1.RELEASE.jar ---- ----包含Spring对DAO特性集进行了扩展,使其支持 iBATIS、JDO、OJB、TopLink,因为Hibernate 已经独立成包了,现在不包含在这个包里了。这个jar文件里大部分的类都要依赖spring-dao.jar里的类,用这个包时你需要同时包含spring-dao.jar包 。
org.springframework.oxm-3.1.1.RELEASE.jar ---- ----spring 对Object/XMI 的映射的支持,可以让JAVA与XML之间来回切换。
org.springframework.test-3.1.1.RELEASE.jar ---- ----spring 对Junit 等测试框架的简单封装。
org.springframework.transaction-3.1.1.RELEASE.jar ---- ----为为JDBC、Hibernate、JDO、JPA等提供的一致的声明式和编程式事务管理。
org.springframework.web.portlet-3.1.1.RELEASE.jar ---- ----springMVC 的增强,支持portlet标准(JSR168/JSR286)。
org.springframework.web.servlet-3.1.1.RELEASE.jar ---- ----对 J2EE6.0 Servlet3.0 的支持。
org.springframework.web.struts-3.1.1.RELEASE.jar ---- ---- 整合 Struts 的支持。
org.springframework.web-3.1.1.RELEASE.jar
---- ----包含Web应用开发时,用到Spring框架时所需的核心类,包括自动载入WebApplicationContext 特性的类、Struts与JSF集成类、文件上传的支持类、Filter类和大量工具辅助类。
Spring-tx.jar
Spring的事务处理类
Spring配置文件applicationContext
.xml
中xmlns:tx="http://www.springframework.org/schema/tx"验证会使用到该jar,如果没有此jar包
applicationContext
.xml
将无法解析
Commons-logging.jar
三
、spring的配置文件模版
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">
…………
</beans>
该配置模版可以从spring的参考手册或spring的例子中得到(
打开spring-3.2.0.M2docs eferencehtml下的beans.html,然后搜索
<beans 即可看到该文件模板
)。
配置文件的取名可以任意
,文件可以存放在任何目录下,但考虑到通用性,
一般放在类路径下
。
查看全文
相关阅读:
[转]C#进阶系列——WebApi 接口参数不再困惑:传参详解
Netty中的三种Reactor(反应堆)
I/O模型之三:两种高性能 I/O 设计模式 Reactor 和 Proactor
【转】第8章 前摄器(Proactor):用于为异步事件多路分离和分派处理器的对象行为模式
mysql 数据库 自动截取数据的问题---mysql的sql_model的四种模式:宽松模式、严格模式
spring-session之四:Spring Session下的Redis存储结构
Mysql auto_increment总结
mysql实战优化之一:sql优化
mysql字符集和校对规则(Mysql校对集)
Oracle B-tree、位图、全文索引三大索引性能比较及优缺点汇总
原文地址:https://www.cnblogs.com/kabi/p/5182022.html
最新文章
Ubuntu系统里下载安装配置redis-2.2.13.tar.gz
Beam编程系列之Apache Beam WordCount Examples(MinimalWordCount example、WordCount example、Debugging WordCount example、WindowedWordCount example)(官网的推荐步骤)
[转]SQL Server 2008- Get table constraints
[转]How can I list all foreign keys referencing a given table in SQL Server?
[转]Using Browser Link in Visual Studio 2013
[转]UTF-8 encoding support for the BCP utility and BULK INSERT Transact-SQL command in SQL Server 2014 SP2
[转]Configure Network Drive Visible for SQL Server During Backup and Restore Using SSMS
[转]使用BCP导出导入数据
[转]How to Import a Text File into SQL Server 2012
[转]SQL SERVER中openrowset与opendatasource的区别
热门文章
[转]SQL Server如何启用xp_cmdshell组件
[转]微信小程序之购物车 —— 微信小程序实战商城系列(5)
[转]微信小程序之购物车功能
[转]微信小程序之购物数量加减 —— 微信小程序实战商城系列(3)
[转]高颜值、好用、易扩展的微信小程序 UI 库,Powered by 有赞
[转]微信小程序支付简单小结与梳理
[转]微信支付 支付结果通用通知
[转]微信小程序 c#后台支付结果回调
[转]微信支付模式
[转]穷忙的人生
Copyright © 2011-2022 走看看