Spring简单介绍
一、引言
1.1原生Web开发存在哪些问题
传统Web开发存在硬编码所造成的过度程序耦合(例如:Service中作为属性Dao对象)。
部分Java EE API较为复杂,使用效率低(例如:JDBC开发步骤)。
侵入性强,移植性差(例如:DAO实现的更换,从Connection到SqlSession)。
1.2Spring解决的问题
- 耦合问题:
- 首先Spring就是一个容器
- 可以将一个Dao对象存入到容器中,往后其他Service需要用到Dao对象就不用再new一个新的
- 只需要从容器中找到那个Dao对象使用即可
- 效率问题:
- 在Spring中使用了**JdbcTemplate** 简化了JDBC开发步骤
二、Spring框架
2.1 概念
Spring是一个项目管理框架,同时也是一套Java EE解决方案。
Spring是众多优秀设计模式的组合(工厂、单例、代理、适配器、包装器、观察者、模板、策略)。
Spring并未替代现有框架产品,而是将众多框架进行有机整合,简化企业级开发,俗称"胶水框架"。
2.2 Spring家族
- Spring Framework : Spring一般都是指向这个,是Spring基础
- Spring Boot :因为Spring本身配置过于繁琐推出的
- Spring Data :Spring推出的数据访问方案,可以通过我们定义的名字自动帮我生成代码查找
- Spring Cloud :主流的微服务解决方案,因为阿里巴巴很久没更新,Sptring Cloud后来居上
2.3 官网
- 官方网站:https://spring.io/
三、Spring架构组成
Spring架构由诸多模块组成,可分类为