Spring框架系列_创建HelloWorld项目_纯净版(一)

Spring框架简介

诞生背景:Spring还未诞生之时,Java企业开发一直采用Sun 公司的EJB(Enterprise Java Bean)框架,但EJB本身过于庞大,又有着非常多的开发规范,开发起来十分麻烦,更为人诟病的是很多时候大材小用,一个小型web程序根本用不着EJB的繁杂功能。

Spring是在2003年兴起的一个轻量级的开源框架,由Rod johnson创建。主要对JavaBean的生命周期进行管理的轻量级框架,Spring给JavaEE带来了春天。
Spring致力于J2EE应用的各层的解决方案,而不是仅仅专注于某一层的方案。可以说Spring是企业应用开发的“一站式”选择的框架,并贯穿表现层、业务层及持久层。并且Spring可以与其他框架无缝地整合。

Spring是为了解决企业应用开发的复杂性而创建的。Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅限于服务器端的开发。从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。

简单来说,Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的JavaBean容器框架。

Spring框架特点

  1. 轻量级:不仅仅他的文件大小很小,而且Spring是非侵入性。
  2. 依赖注入:IOC(DI)和面向切面编程:AOP
  3. 容器:Spring是一个容器,因为它包含并且管理应用对象的生命周期
  4. 框架:Spring实现了使用简单的组件配置组合成一个复杂的应用。
  5. 一站式:在IOC和AOP的基础上可以整合各种企业应用的开源框架和优秀的第三方类库

  知识点:轻量级框架和重量级框架的区别
      轻量级和重量级的框架是以启动程序所需要的加载资源所决定,比如EJB在启动程序的时候需要消耗大量的资源,
                   内存和  CPU,所以是重量级。

Spring架构体系

Spring框架系列_创建HelloWorld项目_纯净版(一)_第1张图片

创建一个最简单Sring的HelloWorld项目

不用maven创建。也不用web.xml文件来初始化加载spring容器,完全原始撸代码

创建helloworld的最小基本单元需要使用sping的Core Container模块即可,再少就无法运行spring了,

所以需要引入的Jar为:

Spring框架系列_创建HelloWorld项目_纯净版(一)_第2张图片

由于Spring 默认使用commons-logging日志框架(spring-core.jar依赖它)也需要导入commons-logging.jar

下面开始搭建最小Spring项目:

演示项目目录结构:

Spring框架系列_创建HelloWorld项目_纯净版(一)_第3张图片

创建一个HelloWorld.java:

package com.dk.dev.demo;

public class HelloWorld {
	private String name;

	public void setName(String name) {
		System.out.println("调用了设置属性");
		this.name = name;
	}

	public HelloWorld() {
		System.out.println("初始化构造器");
	}

	public void hello() {
		System.out.println("Hello: " + name);
	}
}

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




	
		
	

创建一个Main.java(主函数启动入口)

package com.dk.dev.demo;

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

public class Main {

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

 

执行main方法启动Spring容器后,控制台输出:

Spring框架系列_创建HelloWorld项目_纯净版(一)_第4张图片

我们把获取Bean的实例和调用hello方法的都注释掉(即把2和3的全注释掉),那么结果应该是什么? 

Spring框架系列_创建HelloWorld项目_纯净版(一)_第5张图片

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

一个最简单版的spring项目演示就完成了! 

你可能感兴趣的:(spring,SpringMVC开发必备技能)