Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架,他的主要目的是为了解决企业应用开发的复杂性而诞生的: – 目的:解救企业应用开发的复杂性 – 功能:使用基本的JavaBean代替EJB – 范围:任何Java应用
Spring的存在是因为它自身有着得天独厚的优势: – 它定位的领域是许多其他流行的framework没有的 – Spring是全面的和模块化的 – 它的设计从底部帮助你编写易于测试的代码 – Spring是潜在的一站式解决方案
优点: – 低侵入式设计,代码污染极低 – Write Once,Run Anywhere – DI有效的降低了耦合度 – AOP提供了通用任务的集中管理 – ORM和DAO简化了数据库访问 – 高度开放性,并不强制
Spring的优点给开发带来的好处: – 可以有效组织中间层对象 – 使用统一的配置文件 – 促进良好编程习惯,减少编程代价 – 易于简单单元测试 – 使EJB成为一种备选 – 为数据存取提供了一致的框架
Spring特点: – 方便解耦,简化开发 – AOP编程的支持 – 声明式事务的支持 – 方便程序的测试 – 方便集成各种优秀框架 – 降低JavaEE API的使用难度 – Spring的源码是经典学习范例
初学者开始创建一个Spring程序:
– Spring开发环境搭建 – Spring开发包介绍 – 创建示例工程
Spring是运行在java环境下的开发环境,因此在开发前需要准备:
– JDK 7或者以上 – Eclipse 4 或者以上 – Spring Framework 相关软件包3或者3以上版本
Spring开发包的介绍(核心开发包)
Spring CoreSpring BeansSpring AOPSpring Context提供各种企业级服务的包
Spring AspectsSpring Context SupportSpring ExpressionSpring Framework Bom(使用maven需要的包)Spring Instrument TOmcatSpring JDBCSpring InstrumentSpring JMSSpring ormSpring oxmSpring StrutsSpring testSpring txSpring webSpring webmvcSpring webmvc portlet引用地址:—————————————————————————-
实体类:
package entity; public class Person { private String name; public String getName() { return name; } public void setName(String name) { this.name = name; } }spring.xml
<?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.xsd"> <bean id="person" class="entity.Person"></bean> </beans>测试:
package JUnitTest; import org.springframework.beans.factory.BeanFactory; import org.springframework.context.support.ClassPathXmlApplicationContext; import entity.Person; public class test01 { public static void main(String[] args) { BeanFactory beanFactory = new ClassPathXmlApplicationContext( "spring.xml"); Person person=(Person) beanFactory.getBean("person"); person.setName("Hello Spring!"); System.out.println(person.getName()); } }结果:Hello Spring!
需要导入的jar包: