初学Spring有没有适合的书
再说了,如果一上手就是源码?难道你没有注意到Spring的类有多少个吗?各个模块之间的组织模式么?所以我想说那些说看源码的人,完全是不负责任的。如果楼主能看懂源码就不会问这样的问题。
个人推荐:
Spring 3.x企业开发实战: 非常基础,但是对知识点都有涉及。
工作之后,因为公司也使用了Spring,所以为了工作,你不得不自己学,上班的时候好好的看已经写好的代码,不懂的就去网上查,下班后就自己搭建Spring的项目,这种状况持续了两个月,不知道搭建了多少次环境后,终于达到了一看控制台就基本上明白是哪里出错了。
之后,一个小功能需要我独立完成,我就把SpringMVC直接引入,不会的依旧去网上查,一段时间后终于开始慢慢熟悉了。这个时候也对Spring慢慢的熟悉起来了。
所以,项目驱动是最好的老师
比如你要学Spring,首先其他的不说,先来一个用户的增删改查,做完后,什么数据绑定、数据验证、拦截器、mvc、jdbcTemplate、、、、都自然而然的熟悉起来了。
到了这个时候,就开始慢慢的深入了,比如SpringMVC的流程、bean实例化步骤以及生命周期等等。
等你拿着Spring官方文档的目录,能把上面的东西说出来的时候,基本上就算熟悉了Spring了,所谓熟悉就是出了问题基本上能通过看控制台或者找资料能解决。
再进一步,你就开始需要学习设计模式之类的,什么工厂模式、模板模式、适配器模式等。
等熟悉了设计模式了,开始学gradle之类的构建技术(Spring就是用他来进行构建的),学得一般般之后,就可以开始熟悉Spring源码了。
不过Spring源码很大,而且很多功能基本上只是为了保持向上兼容,所以要完全熟悉是需要大量的时间的。
真到了那一步,基本上,任何一个框架拿过来,就可以真正拿着官方文档就可以开始做项目了。
然后基本可以靠文档解决大部分问题了!
我不反对一上来就看文档,但是初学者可能基本概念,spring的applicationContext.xml如何配置都不一定熟悉,spring启动报错都不一定看的明白!
之后进阶就是《Spring In Action》和官方文档了
1. 官方文档
2. 官方示例
3. Github上各种sample
4. 同时总结思考
初学Spring有没有适合的书的更多相关文章
- 初学 Spring boot 报错 Whitelabel Error Page 404
按照教程,写了个最简单的 HelloWorld,尼玛报错 -->Whitelabel Error Page 404. 网上99%都是项目结构不对,说什么 Application放在父级 pack ...
- 初学 Spring MVC(基于 Spring in Action)
Spring MVC(Model-View-Controller) 当你看到本博文时,我猜你可能正面临着我已探索过的问题. 同其他博主一样,我先按照书上详细的介绍一下 Spring MVC,也是为了自 ...
- spring整合hibernate之买书小测试
spring来整合hibernate就是用spring来管理hibernate的sessionFactory和让hibernate来使用spring的声明式事务. 一:加入相应的jar包. 二:写hi ...
- 初学Spring
Spring是当今最流行的框架,今天开始,dayday同学要正式开始学习Spring了,加油 以下是一个简单的应用Spring框架的java程序 src\dayday\HelloSpring.java ...
- spring源码分析的书到了
现在写java后台可以说都能用上spring 在原有的spring基础上,加上自己定制的一些功能,能够使编程变得非常简化. 我也准备在我的毕业设计中写一些spring改造的东西.用来简化开发. 就拿连 ...
- 初学spring boot踩过的坑
一.搭建spring boot环境 maven工程 pom文件内容 <project xmlns="http://maven.apache.org/POM/4.0.0" xm ...
- 记录初学Spring boot中使用GraphQL编写API的几种方式
Spring boot+graphql 一.使用graphql-java-tools方式 <dependency> <groupId>com.graphql-java-kick ...
- 初学 spring
1.spring 开发环境,包含eclipse https://spring.io/tools3/sts/all/
- 初学spring(二)
1.spring推荐使用接口编程,配合di可以达到层与层之间解耦
随机推荐
- [Tool] 配置文件之Web.config
开发人员工具: 安装完vs后,(如2013:C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\Tools\Shortcuts\VS ...
- IStream 接口
IStream 接口 https://msdn.microsoft.com/en-us/library/windows/apps/aa380034 IStream接口允许您读取和写入 stream ...
- Emit学习(3) - OpCodes - 动态添加属性、构造函数、方法
上一篇介绍了 IL 的部分, 基础的部分, 暂时就介绍到那里了, 接下来要进入代码编写阶段了. 今天的主题是 在代码运行的过程中, 去动态的创建类, 属性, 方法. 来源:http://www.cnb ...
- C#控件绑定数据源方式
1:控件数据源绑定泛型Dictionary<string,string> ): Dictionart<string,string> D=new Dictionary(strin ...
- MVP的PV模式与SC模式
MVC是现今挺被推崇的一种架构模式,而MVP在MVC的基础对视图与模型上再解耦,使结构和各自的功能也有所改变.在去年鄙人也尝试了一下使用MVP做了一个小Demo,作为了MVC的一个变体,MVP还分了两 ...
- Hibernate框架之双向多对多关系映射
昨天跟大家分享了Hibernate中单向的一对多.单向多对一.双向一对多的映射关系,今天跟大家分享下在Hibernate中双向的多对多的映射关系 这次我们以项目和员工举个栗子,因为大家可以想象得到,在 ...
- ubuntu16.4下用jexus部署asp.net core rtm
上篇文章介绍了下用vs发布部署到iis环境,今天说下ubuntu 下部署asp.net core,不需要安装.net core sdk,自带运行时方式部署,利用jexus服务器转发请求到asp.net ...
- C语言文件方式输入与输出(最简洁方便实用的一种方式)
freopen("inputfile.txt", "r", stdin); freopen("outputfile.txt", " ...
- 树链剖分求LCA
树链剖分中各种数组的作用: siz[]数组,用来保存以x为根的子树节点个数 top[]数组,用来保存当前节点的所在链的顶端节点 son[]数组,用来保存重儿子 dep[]数组,用来保存当前节点的深度 ...
- Guava学习笔记:Ordering犀利的比较器
Ordering是Guava类库提供的一个犀利强大的比较器工具,Guava的Ordering和JDK Comparator相比功能更强.它非常容易扩展,可以轻松构造复杂的comparator,然后用在 ...