Spring 深入学习概要

概述

Spring 是最受欢迎的企业级 Java 应用程序开发框架,数以百万的来自世界各地的开发人员使用 Spring 框架来创建性能好、易于测试、可重用的代码。

Spring 框架是一个开源的 Java 平台,它最初是由 Rod Johnson 编写的,并且于 2003 年 6 月首次在 Apache 2.0 许可下发布。

Spring 是轻量级的框架,其基础版本只有 2 MB 左右的大小。

Spring 框架的核心特性是可以用于开发任何 Java 应用程序,但是在 Java EE 平台上构建 web 应用程序是需要扩展的。 Spring 框架的目标是使 J2EE 开发变得更容易使用,通过启用基于 POJO 编程模型来促进良好的编程实践。

框架模型

三层架构

  • 表现层web层resource 文件夹下的网页
  • 业务层 Controller 层 业务接口‘
  • 持久层 dao数据类以及数据库连接类

体系架构

Spring体系模块允许我们只挑选需要使用的模块:

体系

Spring Ioc 容器

Inversion of control ,控制反转。一种面向对象的设计模式,主要的作用是用来降低项目代码的高耦合。一种是 Dependency Injection(简称DI),在我们常规开发的过程当中,如果要在对象A 中使用到对象B的实例,那么需要new 一个,但是依赖注入的话,就只需要再对象A中添加一个getter方法,然后去从外部获取一个实例B的引用给A。另外一种是Dependency Lookup(简称DL),一般思路是对象A中需要使用到对象B的实例,通过spring内部方法来查找已经存在以来的对象实例B.

DI 实例

bean 对象

1
2
3
4
5
6
7
8
9
10
public class user{
private String name;

private String getName(){

return name;
}

private void setName
}

bean 配置文件

1
2
3
4
5
6
7
8
9
10
11
<?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">

<bean id="user" class="cn.lansus.timemanagement.bean.User">
<property name="name" value="wangjun"/>
</bean>

</beans>

测试获取对象

1
2
3
4
5
public static  void main (String[] args){
XmlBeanFactory factory=new XmlBeanFactory(new ClassPathResource(("/generate/hello.xml")));
User user= (User) factory.getBean("user");
System.out.println(user.getName());
}

本部分是使用容器XmlBeanFactory 来装填对象的,现在已经被弃用了,还有另一给容器是 SpringApplicationContext容器:

1
2
3
4
5
6
7
8

public static void main(String[] args) {
ApplicationContext context = new FileSystemXmlApplicationContext
("C:/Users/ZARA/workspace/HelloSpring/src/Beans.xml");
HelloWorld obj = (HelloWorld) context.getBean("helloWorld");
obj.getMessage();
}
}

方法类似。

Copyright © 2016 - 2020 Life-long Learning All Rights Reserved.

UV : | PV :