Spring框架详解

一、web应用
1.我们生活在web时代,每一分钟都有上百万个网页在生成,包含很多内容
web应用是一种客户端-服务器端的程序
客户端包括用户界面和客户端逻辑,运行环境为web浏览器
2.常见的web应用有:网页邮件,在线销售,在线拍卖,维基,快捷的信息服务
客户端的软件就在网页下载
3.浏览器后还有更多的东西

Spring框架详解

文章插图
 
这些浏览器程序经由web服务器下载下来,很多动态的东西在云端生成,一些应用会用到数据库甚至是外部系统,浏览器需要的技术有:
Spring框架详解

文章插图
 
同时web应用也支持很多种语言:
Spring框架详解

文章插图
 
基础的web开发语言是html和css,客户端编程语言有:JAVAScript,actionScript用于flash,object-c和swift用于IOS的,java用于Android/ target=_blank class=infotextkey>安卓的;服务器端的语言有java,php,perl,Python,ruby,c#,nodejs
二、web应用框架
根本没有,辣鸡
三、Spring-基于java的WAF
1.为甚使用spring
广泛应用于企业级java,高性能,易于测试,可复用性强,简单轻量,模块化比较好,内置单元测试,支持MVC,能很好地支持相关协议,对其他技术有影响力,比如javaEE,hiberate,主动开发,成长中的新项目技术 。
2.spring技术的历史
2002年-2017年spring5.0
Spring框架详解

文章插图
 
3.Spring Framework
Spring Web MVC
Spring框架详解

文章插图
 
(1)浏览器发送请求给调度程序
(2)handlermApping选择controller
(3)FC请求controller
(4)Controller返回model和view
(5)如果“模型和视图”包含视图的逻辑名称,则FC将查询将呈现响应的视图对象的解析程序,纯属废话,就是/home,查询router
4.dependence injection 依赖注入原则
(1)问题所在:
Spring框架详解

文章插图
 
你如果想该你的依赖关系,你就得改你class的源代码,编译的时候必须有依赖实现的具体代码,而且你写的类不能单独测试,因为有直接依赖关系,不能用stubs或者mocks直接修改依赖,类中的代码还重复创建、定位及管理它们之间的依赖 。
(2)我们想要的是什么呢?
Spring框架详解

文章插图
 
解耦合,编译的时候也不用管依赖是怎么实现的,测试的时候能不用依赖,或者用别的依赖关系,移除location依赖的责任
OO Refresh
Spring框架详解

文章插图
 
类的继承
Spring框架详解

文章插图
 
方法参数
Spring框架详解

文章插图
 
最终解决方法:
这就是说drawing这个类不知道shape,只有application类知道,但是drawing这个类,他可以接受任何shape,它假设起其他的类会把shape初始化,appclass是create而不是draw,如果要添加新形状就不用改draw这个类,因为draw这个类没有依赖
POJO: plain old java object
java bean 是什么呢?
1、所有属性为private
2、提供默认构造方法
3、提供getter和setter
4、实现serializable接口
DI的种类
1.基于构造器的DI
2.基于setter的DI
Spring框架详解

文章插图
 
3.接口注入:根本没讲什么鸡儿玩意
Java Containers
Java containers manage Java objects: 管他们的初始化和生命周期
Tomcat servlet container: hosts
Spring beans container: business components/服务
如何初始化一个容器?
【1】想领取java相关知识可以关注我下方评论转发后,私信“资料” 。
【2】部分资料有时间限制,抓紧时间吧~、
感谢大家支持!

【Spring框架详解】


    推荐阅读