一、Spring的概述
1.Spring是什么?
Spring是分层的Java SE/EE应用 full-stack全栈式的轻量级开源框架,以IOC(Inverse Of Control:控制反转)和AOP(Aspect Oriented Programming:面向切面编程)为内核,提供了展现层Spring MVC和持久层 Spring JDBC 以及业务层事物管理等众多的企业级应用技术,还整合了众多第三方框架和类库,逐渐成为使用最多的Java EE企业应用开源框架。
2.Spring的两大核心
3.Spring的发展历程和优势
Spring的优势
1.方便解耦,简化开发
通过spring提供的IOC容器,可以将对象间的依赖关系交由spring控制,避免硬编码所造成的过度耦合。
2.AOP编程的支持
通过Spring的AOP功能,方便进行面向切面编程,许多不容易用传统oop实现的功能可以用AOP轻松实现
3.声明式事物的支持
声明式:就是通过配置的方式来实现事物控制
通过声明式方式灵活的进行事物的管理,提高开发效率和质量。
4.方便程序的测试
5.方便集成各种优秀框架
struts、Hibernate、Hessian、Quartz
6.降低 Java EE API的使用难度
比如spring对Java EE API如:JDBC、JavaMail、远程调用进行了薄薄的封装
struts Hibernate Quartz
7.spring源码是经典的学习案例
4.Spring体系结构
pom.xml引入spring的maven坐标
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>5.2.3.RELEASE</version>
</dependency>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
<version>1.6.11</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.6</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.13</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>5.2.3.RELEASE</version>
</dependency>
<dependency>
<groupId>commons-dbutils</groupId>
<artifactId>commons-dbutils</artifactId>
<version>1.4</version>
</dependency>
<dependency>
<groupId>c3p0</groupId>
<artifactId>c3p0</artifactId>
<version>0.9.1.2</version>
</dependency>
</dependencies>