什么是Spring
Spring是一个开源框架,Spring 是于 2003 年兴起的一个轻量级的Java 开发框架。Spring是为了解决企业级应用开
发的复杂性而创建的,使用Spring可以让简单的JavaBean实现之前只有EJB才能完成的事情。但是Spring不仅仅局
限于服务器端开发,任何Java应用都能在简单性、可测试性和松耦合性等方面从Spring中获益。
Spring带来的好处
为了降低 Java 开发的复杂性,Spring 采用了以下 4 种关键策略:
1、基于 POJO 的轻量级和最小侵入性编程;
2、通过依赖注入(DI)和面向接口实现松耦合;
3、基于切面(AOP)和惯例进行声明式编程;
4、通过切面和模版减少样式代码;
Spring中有Bean容器,是管理Java对象的容器,
有概念IOC:
控制反转,是面向对象编程的一种设计规则,实例的创建不再由调用者管理,而是由Spring容器创建,Spring会负责控制程序之间的关系,控制权由程序代码转移到了Spring容器中,控制权发生了转移。
**DI:**依赖注入,为bean对象注入依赖属性,实现方法有属性注入和构造方法注入。
import frank.Duck;
import frank.Duck2;
import frank.Duck3;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class Main {
public static void main(String[] args) {
ApplicationContext context = new
ClassPathXmlApplicationContext("applications.xml");
String lhj = (String)context.getBean("lhj");
System.out.println(lhj);
//通过类型获取bean对象,如果该类型有多个对象,就会报错
String lhj1 = context.getBean(String.class);
System.out.println(lhj1);
//自定义类型
Duck duck = (Duck)context.getBean("hhh");
System.out.println(duck);
//有参数的构造方法
Duck2 duck2 = (Duck2)context.getBean("hhh2");
System.out.println(duck2);
//多个对象关联
Duck3 duck3 = (Duck3)context.getBean("dk1");
System.out.println(duck3);
}
}
Spring Boot
什么是 Spring Boot?
Spring Boot 是所有基于 Spring 开发的项目的起点。Spring Boot 的设计是为了让你尽可能快的跑起来 Spring 应
用程序并且尽可能减少你的配置文件。简单来说就是 SpringBoot 其实不是什么新的框架,它默认配置了很多框架
的使用方式,整合了所有的框架。
Spring Boot 的特点
SpringBoot Starter:他将常用的依赖分组进行了整合,将其合并到一个依赖中,这样就可以一次性添加到项
目的 Maven 或 Gradle 构建中。
自动配置:SpringBoot 的自动配置特性利用了 Spring4 对条件化配置的支持,合理地推测应用所需的 bean
并自动化配置他们。
Spring Boot 带来的好处有哪些
不需要配置 web.xml,加载 spring 和 spring mvc
不需要配置数据库连接、配置 spring 事务
不需要 xml 方式注解
SprirngMVC
提供web请求处理的功能
装配Bean的方式(注解)
(1) @Autowired:属于Spring框架,
(2) @Resource: JDK提供的注解,表示资源。JDK只提供了规范,没有提供实现
第一流的公司提供规范,第二流的公司提供技术实现
之前所学的, jdbc和Servlet都是这样的, jdk提供规范,第三方厂商提供具体的实现