点击蓝色“程序员书单”关注我哟

加个“星标”,每天带你读好书!



经过了10多年的发展,Java Web从开发框架到社区都已经非常成熟,而目前市面上最流行的Java Web框架已然是Spring全家桶,从过去的Spring,SpringMVC,再到SpringBoot。而曾经流行的JSP和servlet,随着前后端分离的趋势,以及Spring这类框架的冲击,也逐渐地淡出了人们的视线,被历史所抛弃。

那么今天如果我们要学习Java Web,应该按照什么样的一个路线去学习呢,其实,而很多技术虽然已经过时,但是我们仍有必要了解一些它们的历史和发展历程,就比如servlet,曾经需要我们显示进行开发,而现在则内嵌在了springMVC框架中,还有Tomcat,干脆直接包在了框架里,但实际上这些技术还是值得我们去学习和了解的。

这份书单将会推荐几本我认为在学习Java Web方面上比较合适的优质书籍,从JavaWeb基础开始,再到SSM框架开发实战,然后是SSM框架的原理解读和源码解析,还有最后一本书,干脆直接叫你写一个Java Web框架,是不是感觉有“从入门到精通”的意思了。不管怎么说,这份书单多少都会对你有一些帮助,赶紧开始看吧。

JavaWeb技术学习必备书单

入门篇

《深入分析Java Web技术内幕》

许令波 著

这本书是Java Web的集大成之作,涵盖了大部分Java Web开发的知识点,作者是资深的淘宝Java工程师,恨不得在一本书里把所有的Java Web知识点丢给讲清楚,不过,一本书显然无法把所有细节都讲完,但是作为Java Web的入门或者进阶书籍来看的话还是很不错的。

市面上Java Web书籍的质量参差不齐,如果要我推荐的话,这一本足矣。

作者介绍:

许令波,毕业于合肥工业大学,获计算机硕士学位。热爱Java Web技术,关注服务端性能优化,热衷开源技术的研究和分享,曾获developerWorks最佳作者称号。2009年进入淘宝工作,目前从事模板渲染框架与MVC框架的开发与应用、Java Web的性能优化、高访问量系统静态化和商品详情系统的业务改造等工作。

《Java EE互联网轻量级框架整合开发》

杨开振,周吉文,梁华辉,谭茂华 著

刚刚我们提到的上面那本书籍,旨在介绍Java Web的技术生态,更多地是在讲解相关的实现原理和技术分析,事实上,JavaWeb这种应用型的技术需要我们想通过实战去学习,于是我找到了这么一本书,把spring,springmvc、mybatis以及Redis进行整合介绍,并且通过高并发场景的秒杀处理实践,让读者对这一类的场景的开发方法有更好的了解。

这本书整体对SSM和Redis都做了介绍,算是偏实战类的基础书籍,而这部分技术栈基本上也是一名Java工程师需要学习的大部分内容了,所以通过这本书去开始JavaWeb的工程实践,确实也是个不错的选择。

作者介绍:

杨开振,拥有十余年一线Java开发工作经验,热衷于Java互联网技术方向研究,目前从事Java互联网技术在线教育,著有畅销书《深入浅出MyBatis技术原理与实战》。

梁华辉,资深Java开发专家,有丰富的企业级应用及Web项目的开发经验。对软件设计模式和代码整洁方面有深入理解,对Spring、Hibernate等主流开源框架有深入研究。

谭茂华,资深Java开发专家,拥有十余年供应链管理、金融、物联网等行业大型系统软件开发经验。热衷于软件架构、软件研发过程控制、Java开源技术(尤其是Spring体系技术)的研究。

《互联网轻量级SSM框架解密》

李艳鹏  著

刚刚介绍的那本书,已经带我们打开了Java Web的实践大门,当你能把商品秒杀功能实现之后,相信你对于SSM框架的使用和开发已经有了一些心得和经验了,当然了,代码量对于一个工程师来说还是很重要的,如果你已经能够熟练掌握这类系统的开发方法,那么进一步的学习就势在必行了。

聊完了实战部分之后,接下来就要深入源码去分析实现原理了,SSM框架到底是如何实现的呢,你有没有思考过这一点,或者是否有去了解过其中的源码知识,如果没有也没关系,这本书把这三个框架的源码都进行了解读,对于我们这类不愿意自己看源码的人来说,确实解决了一个很实在的问题,并且本书对于源码的分析,可以让我们更好地进行应用的开发和调试。

作者介绍:

李艳鹏,高级技术专家,著有《分布式服务架构:原理、设计与实战》和《可伸缩服务架构:框架与中间件》,是“云时代架构”技术社区的发起者,曾经在易宝支付、花旗银行、甲骨文、路透社、新浪微博等大型机构中担任技术负责人和首席架构师。

曲源,资深Java开发者,曾任美图技术经理、易宝支付交易系统技术负责人、当网Java工程师。在电商、支付公司从业近10年,熟悉 相关领域的架构规划和系统研发。

宋杨,爱奇艺技术产品中心架构师,从事互联网支付行业一线开发、架构等工作,熟悉互联网通用技术栈。

《架构探险:从零开始写Java Web框架》

黄勇 著

第一本书帮我们了解了Java Web技术栈整体的内容和一些实现原理,第二本书让我们快速上手SSM的应用开发,而第三本书则带着我们进行了SSM框架的源码解读,这样的学习曲线是比较平滑的,正常来说,到这里就应该结束了,但是我刚好又遇到了这么一本书,不教你怎么使用Java Web,也不带你解读源码,而是干脆带着你重新开发一个Java Web框架,这也可以说是学习Java Web最后的一步了,如果你能开发出一个Java Web框架,那么你对于其中的实现原理和特性一定是再清楚不过了的。

当然了,真的要实现一个Java Web框架并不容易,所以这本书的难度还是比较大的,如果你完成了前三本的学习,觉得还不过瘾的话,那么也许这本书能让你重新认识Java Web的技术栈。

作者介绍:

黄勇,从事近十年的JavaEE应用开发工作,现任阿里巴巴公司系统架构师。对分布式服务架构与大数据技术有深入研究,具有丰富的B/S架构开发经验与项目实战经验,擅长敏捷开发模式。国内开源软件推动者之一,活跃于“开源中国”社区网站,SmartFramework开源框架创始人。热爱技术交流,乐于分享自己的工作经验。

这份Java Web必读书单,值得所有Java工程师一看!的更多相关文章

  1. Java 架构师 -- 必读书单

    “学习的最好途径就是看书“,这是我自己学习并且小有了一定的积累之后的第一体会. 个人认为看书有两点好处: 1.能出版出来的书一定是经过反复的思考.雕琢和审核的,因此从专业性的角度来说,一本好书的价值远 ...

  2. 个人的java web开发书单

    首发至个人博客http://www.zidafone.com/blog/36 以下是对一些读过的书和一些买后随便翻了翻的书的个人感觉.都是java web开发的程序员可能接触的书,其他的如设计/手机开 ...

  3. [Java Web 王者归来]读书笔记2

    第二篇 基础篇 第三章 深入Servlet技术 1 浏览器的request http数据报中包含一些关键信息,如访问方式.所用的http版本.所用的浏览器.当前的页面地址等信息 2 http查询数据方 ...

  4. [Java Web 王者归来]读书笔记3

    第四章 JSP JSP基本语法 1 JSP中嵌入Java 代码 <% Java code %> 2 JSP中输出 <%= num %> 3 JSP 中的注释 <%-- - ...

  5. [Java Web 王者归来]读书笔记1

    第一章 Java web 开发概述 1 WEB服务器运行时一直在TCP 80(默认端口)监听, 若使用其他端口在url中需要显示标注端口号(例如:8080) 2 WEB服务器:微软的IIS.Apach ...

  6. java web 学习 --第十天(Java三级考试)

    第九天学习内容:http://www.cnblogs.com/tobecrazy/p/3470195.html 需求概述 创建程序模块,读取并显示数据库中的书籍信息.当前有如下需求:需要显示数据库中所 ...

  7. Java Web学习总结(32)——Java程序员最亲睐的Web框架

    这一次,我们要讨论的是web框架. 只有少数几种语言像Java一样提供了各种各样的web框架,上面的统计图就是一个证据.下面是其他开发者所使用web框架列表: spring MVC/Spring Bo ...

  8. Java Web学习总结(29)——Java Web中的Filter和Interceptor比较

    1. 背景 在设计web应用的时候,用户登录/注册是必不可少的功能,对用户登录信息进行验证的方法也是多种多样,大致可以认为如下模式:前端验证+后台验证.根据笔者的经验,一般会在前端进行一些例如是否输入 ...

  9. 循序渐进看Java web日志跟踪(2)-Java日志API认识

    接触过Java的朋友应该都会知道,java的开源框架百花齐放,实现同样的功能,总能找到几个强大的开源框架来进行选择.在日志方面,Java同样不逊色.除了JDK本身自带的简单的日志工具,java还有如l ...

随机推荐

  1. 项目中 关于localstorage、cookie的坑?明明设置了本地存储为什么没生效

    1.简单的介绍一下localStorage,sessionStorage,cookie localStorage:仅在客户端存储不参与服务器通信,存储大小一般为5M,如果不是人为清除,那么即使是关闭浏 ...

  2. 深入解析Underscore.js源码架构

    Underscore.js是很有名的一个工具库,我也经常用他来处理对象,数组等,本文会深入解析Underscore源码架构,跟大家一起学习下他源码的亮点,然后模仿他写一个简单的架子来加深理解.他的源码 ...

  3. JavaScript数组排序(冒泡排序、选择排序、桶排序、快速排序)

    * 以下均是以实现数组的从小到大排序为例 1.冒泡排序 先遍历数组,让相邻的两个元素进行两两比较 .如果要求小到大排:最大的应该在最后面,如果前面的比后面的大,就要换位置: 数组遍历一遍以后,也就是第 ...

  4. axios Api介绍

    1.Performing a GET request axios.get('/user?ID=12345') .then(function (response) { // handle success ...

  5. 零售CRM系统开发的核心功能

    在零售行业中,客户关系管理系统是一个包含销售,市场营销和客户服务流程的中央枢纽.它为企业所有者提供了一种可以结合所有与销售有关的问题并管理销售流程的有效工具.零售CRM可以留住客户,提供个性化的一流客 ...

  6. 2020kali浏览器汉化等配置

    0.修改搜索引擎 1. 2. 3.点击左侧搜索,输入language因为我已经修改为中文所以没有查询到结果 4点击搜索更多语言(未汉化未英文)找到chinese后添加 5.要将chinese上移到第一 ...

  7. django缓存和跨域解决和短信验证码的使用

    缓存 在实际项目中,存在大量的数据检索,比如我们刷微博的时候,刚开始加载速度慢一点,然后第一次加载完毕之后,如果你此时的手机没有网络,但是你发现你的微博还是可以照样刷,但是刷到一定的页面就走不动了,那 ...

  8. Servlet(五)----ServletContext对象

    ##  ServletContext对象 1.概念:代表整个web应用,可以和程序的容器(服务器)来通信 2.获取: 1.通过request对象获取 request.getServletContext ...

  9. node 模块载入原理【1】

    简单介绍 我们会从简单的模块载入原理来开始,尝试阅读下 Node.js 源代码.首先我们知道 Node.js 的源代码主要是由 C++ 和 JavaScript 编写的,JS 部分主要在 lib 目录 ...

  10. 老板说,Vim宏都不会用,你的工作效率太低啦~

    工作中,对于文本文件的编辑我们经常有这样的需求: 多次重复输入一段相同文本: 生成一段序列化的文本: 每行文本插入一句相同的文本. 除此之外,还有很多需要重复操作的动作.对于这些需求,如果我们人工去操 ...