1、Spring框架简介

平面设计培训,网页设计培训,美工培训,游戏开发,动画培训

Spring是一个开源框架,Spring是在2003年兴起的一个轻量级的开源框架,由Rod johnson创建。主要对JavaBean的生命周期进行管理的轻量级框架,Spring给JavaEE带来了春天。

2、Spring框架特点

√ 轻量级:不是说他的文件大小很小,指的Spring是非侵入性。
  知识点:轻量级框架和重量级框架的区别
      轻量级和重量级的框架是以启动程序所需要的资源所决定,比如EJB在启动程序的时候需要消耗大量的资源,内存和CPU,所以是重量级。
√ 依赖注入:IOC(DI)和面向切面编程:AOP
√ 容器:Spring是一个容器,因为它包含并且管理应用对象的生命周期
√ 框架:Spring实现了使用简单的组件配置组合成一个复杂的应用。
√ 一站式:在IOC和AOP的基础上可以整合各种企业应用的开源框架和优秀的第三方类库

3、Spring架构

平面设计培训,网页设计培训,美工培训,游戏开发,动画培训

Test:Spring支持Junit单元测试
Core Container(核心容器):里面能看到有4个核心的内容,也就是如果需要使用Spring,这4个jar包是绝对不能少的。
  ① spring-beans-4.3.6.RELEASE.jar (Beans):Bean工厂,创建对象
  ② spring-core-4.3.6.RELEASE.jar (Core):核心的基础
  ③ spring-context-4.3.6.RELEASE.jar(Context):上下文ApplicationContext
  ④ spring-expression-4.3.6.RELEASE.jar(SpEL:Spring的EL表达式)
  知识点:还有一个jar包也是必须的,因为Spring使用了它
  ⑤ commons-logging-1.2.jar
AOP:面向切面编程
Transactions:声明式事务
ORM、JDBC:可以整合hibernate和mybatis
Web、Servlet:可以整合Stucus2和Spring MVC

4、创建一个HelloWorld项目(博客园最纯净、最简单版本)

下载spring的jar包:http://repo.spring.io/release/org/springframework/spring

为了更好的理解Spring的jar包依赖,我们不用maven创建。我们也不用web.xml文件来初始化加载spring容器,完全原始打造。主要目的就是为了理解一下最纯净最简单的spring项目是什么样子的。

①、首先创建引入jar包,上面5个jar包进入即可 

平面设计培训,网页设计培训,美工培训,游戏开发,动画培训

看到了吗?5个jar就可以创建了。是创建helloworld的最小基本单元了。再少就不能运行了。

②、创建一个HelloWorld.class

平面设计培训,网页设计培训,美工培训,游戏开发,动画培训

 1 public class HelloWorld { 2     private String name; 3     public void setName(String name) { 4         System.out.println("调用了设置属性"); 5         this.name = name; 6     } 7     public HelloWorld(){ 8         System.out.println("初始化构造器"); 9     }10     public void hello(){11         System.out.println("Hello: " + name);12     }13 }

平面设计培训,网页设计培训,美工培训,游戏开发,动画培训

③ 创建一个Spring的配置文件applicationContext.xml

1 <bean id="helloworld" class="HelloWorld">2     <property name="name" value="Spring"></property>3 </bean>

④ 创建一个Main.class(主函数入口)

平面设计培训,网页设计培训,美工培训,游戏开发,动画培训

1 public static void main(String[] args) {2         //1、创建Spring的IOC容器的对象3         ApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml");4         //2、从IOC的容器中获取Bean的实例5         HelloWorld helloWorld = (HelloWorld) ctx.getBean("helloworld");6         //3、调用hello方法7         helloWorld.hello();8     }

平面设计培训,网页设计培训,美工培训,游戏开发,动画培训

输出结果:
  初始化构造器
  调用了设置属性
  Hello: Spring


思考一下,如果上面main里的方法我把获取Bean的实例和调用hello方法的都注释掉(即把2和3的全注释掉),那么结果应该是什么?
输出结果:
  初始化构造器
  调用了设置属性

 说明了在创建SpringIOC容器的时候,就已经对类进行了实例化并对属性进行了赋值

---------------------------------------------------------------------------------

跟着刚哥学习Spring框架系列:

跟着刚哥学习Spring框架--创建HelloWorld项目(一)

跟着刚哥学习Spring框架--Spring容器(二)

跟着刚哥学习Spring框架--通过XML方式配置Bean(三)

跟着刚哥学习Spring框架--通过注解方式配置Bean(四)

跟着刚哥学习Spring框架--AOP(五)

跟着刚哥学习Spring框架--JDBC(六)

跟着刚哥学习Spring框架--事务配置(七)

http://www.cnblogs.com/hzg110/p/6760653.html

延伸阅读

PreSkool第一阶段项目总结-Java培训,做最负责任的教育,学习改变命运,软件学习,再就业,大学生如何就业,帮大学生找到好工作,lphotoshop培训,电脑培训,电脑维修培训,移动软件开发培训,网站设计培训,网站建设培训PreSkool第一阶段项目总结