概述
Spring 是轻量级的开源的 Java 框架,目的是解决企业应用开发的复杂性。核心是控制反转(IOC)和面向切面(AOP),针对于开发的WEB层(springMvc)、业务层(Ioc)、持久层(jdbcTemplate)等都提供了多种配置解决方案;
特点
轻量级:Spring 是轻量的,基本的版本大约 2MB。
控制反转(IOC):Spring 通过控制反转实现了松散耦合,对象们给出它们的依赖,而不是创建或查找依赖的对象们。
面向切面(AOP):Spring 支持面向切面的编程,并且把应用业务逻辑和系统服务分开。
容器:Spring 包含并管理应用中对象的生命周期和配置。在这个意义上它是一种容器
框架集合:Spring 的 WEB 框架是个精心设计的框架,是 Web 框架的一个很好的替代品。
事务管理:Spring 提供一个持续的事务管理接口,可以扩展到上至本地事务下至全局事务(JTA)。
异常处理:Spring 提供方便的API把具体技术相关的异常(比如由JDBC,Hibernate or JDO 抛出的)转化为一致的 unchecked 异常。
优点
(1)方便解耦,简化开发
(2)Aop 编程支持,从而提供更好的复用。
(3)方便程序测试
(4)方便和其他框架进行整合
(5)方便进行事务操作
(6)降低 API 开发难度
(7)spring属于低侵入设计,代码污染度极低
主要结构
简单的入门案例
1.打开 idea 工具,配置环境
2.创建普通类,在这个类创建普通方法
package spring;
public class User {
public void add() {
System.out.println("Hello......");
}
}
3.创建 Spring 配置文件,在配置文件配置创建的对象
(1)Spring 配置文件使用 xml 格式
(2)创建对象
<?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">
<!--配置 User 对象创建-->
<bean id="user" class="spring.User"></bean>
</beans>
其中
id表示给类创建对象所起的名字
class表示你所创建类的全路径。此时我创建的User类全路径为spring.User
4.进行测试代码编写
public class TestSpring {
@Test
public void testAdd() {
//1 加载 spring 配置文件
ApplicationContext context =
new ClassPathXmlApplicationContext("bean1.xml");
//2 获取配置创建的对象
User user = context.getBean("user", User.class);
System.out.println(user);
user.add();
}
}
结果为:
我们学习Spring框架主要从以下几个方面入手
1、IOC 容器
(1)IOC 底层原理
(2)IOC 接口(BeanFactory)
(3)IOC 操作 Bean 管理(基于 xml)
(4)IOC 操作 Bean 管理(基于注解)
2、Aop
3、JdbcTemplate
4、事务管理