跟着《SpringInAction》学Spring——入门篇
来源:互联网 发布:2016年网络诈骗追回率 编辑:程序博客网 时间:2024/05/16 12:24
入行半年,菜鸟一枚。俗话,好记性不如烂笔头,仅以此文开启自己的程序员生涯,也望能结交同行好友。
最近学习Spring,在看一本叫《Spring实战》的书,故,此文集中的文章,都是跟这本书的学习。废话不多说,开始写了。
首先,写写这本书的大概:
第一部分:Spring框架的核心,DI/IOC/AOP
第二部分:Spring在WEB层的应用,SpringMVC
第三部分:Spring在持久层的应用
第四部分:Spring与其他系统的集成
从书的组成结构来看,Spring为JAVA开发人员在对象的管理,WEB层,持久层和系统集成等方面提供了帮助。
第一部分:
——第一章Spring之旅
概述:
1、这一章主要介绍了Spring为了降低JAVA开发的复杂性,总的采取的4种关键的策略:
1.1、基于POJO的轻量级和最小侵入性变成
1.2、通过依赖注入和面向接口实现松耦合
1.3、切面和惯例进行声明式编程
1.4、通过切面和模板减少样式代码
围绕这四个策略,做出了详细的解释。
2、如何加载配置文件,以及上下文的概念,bean的生命周期
3、Spring全部功能介绍
4、Spring的新功能
一、4种关键的策略
1、非侵入式编程:不同于Structs2/WebWork/Tapestry等框架,Spring框架不会强迫开发人员实现Spring规范的接口或者继承Spring规范的类,在Spring框架构建的应用中,它的类没有任何痕迹表明了使用了Spring。这意味着这个类在Spring应用和非应用中都可以发挥同样的作用。
2、依赖注入(DI)
优点:实现对象的松耦合
code1.1
package com.springinaction.knights;public class DamselRescuingKnight implements Knight {private RescueDaselQuest quest;public DamselRescuingKnight(){this.quest = new RescueDamselQuest();//与RescueDamselQuest紧耦合}public void embarkOnQuest(){quest.embark();}}code1.2
package com.springinaction.knights;public class BraveKnight implements Knight {private Quest quest;public BraveKnight(Quest quest){ //Quest被注入进来this.quest = quest;}@Overridepublic void embarkOnQuest() {quest.embark();}}
通过DI,对象的依赖关系将由系统中负责协调对象的第三方组件在创建对象的时候进行设定,对象无需自行创建或管理它们的依赖关系,依赖关系将被自动注入到它所需要的对象中去。
1.1中的代码就是传统开发过程,对象负责创建、管理、协调与自己相互写作的对象,这会导致高度耦合。看1.2中的代码,Quest是一个接口,通过Quest接口表明依赖关系,将需要的对象注入到方法中。
Spring作为一个管理对象的容器,它会帮我们创建对象、管理对象、装配对象,实现对象之间的松耦合。
如果一个对象只通过接口来表明依赖关系,那么这种依赖就能够在对象本身不知情的情况下用不同的具体实现进行替换。
- 跟着《SpringInAction》学Spring——入门篇
- 跟着柴毛毛学Spring(1)——纵观Spring
- 跟着柴毛毛学Spring(2)——Bean的配置
- 跟着柴毛毛学Spring(3)——简化Bean的配置
- 跟着柴毛毛学Spring(4)——面向切面编程
- Spring MVC入门 —— 学SpringMVC
- 跟着正哥0基础学C++——开始篇
- 命令模式——跟着cc学设计系列
- 桥接模式——跟着cc学设计系列
- 跟着Google学Android —— 1.1 搭建开发环境
- 跟着Google学Android —— 1.4 跳转吧!界面!
- 跟着远叔学Spring系列(二)——Spring概述
- SpringInAction:在Spring中应用切面
- SpringInAction.4th.面向切面的Spring
- 第二章 Spring MVC入门 —— 学SpringMVC
- 第一章:Spring Web MVC入门——深入浅出学Spring Web MVC
- 第一章:Spring Web MVC入门——深入浅出学Spring Web MVC
- 第一章:Spring Web MVC入门——深入浅出学Spring Web MVC
- BZOJ1015 [JSOI2008]星球大战starwar
- spark基本概念与架构设计
- 二分图匹配
- LDA的使用记录--gensim库
- 51nod 1806 wangyurzee的树[purfer][容斥]
- 跟着《SpringInAction》学Spring——入门篇
- linux .bz2文件 解压缩命令的简单使用
- 输出学生信息
- 傻傻分不清的那些“报告”
- 浅谈数据仓库和大数据
- 第十八课(二)、 C指针(深入)
- 【笔记】串及其应用
- 轻松搞懂WebService工作原理
- 面试笔记整理