这份Java Web必读书单,值得所有Java工程师一看!
点击蓝色“程序员书单”关注我哟
加个“星标”,每天带你读好书!
经过了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开源框架创始人。热爱技术交流,乐于分享自己的工作经验。

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
-
上一篇
HBase2.0 procedureV2原理简析
总体流程图 就绪区: 这部分的核心实现类是MasterProcedureScheduler,主要的作用就是对Procedure进行调度; 从排队的角度看,可以认为存在三层队列调度; type队列: type包含meta、server、table,,三者之间存在优先级:meta>server>table,这里需要注意的是,所谓type队列是逻辑上来说的,worker在获取任务时会按优先级依次进行尝试; entity队列: 上述每种类型都对应一个FairQueue,该队列中的元素代表与某个实体相关的一组proc,这里称为proc队列,worker获取任务时,是从entity队列中获取的,所以只有存在于entity队列中的proc队列才有运行机会; proc队列: 这个队列中存放的就是具体的proc了,队列内部元素数量和锁状态的变化,决定了其是否存在于entity队列中,也即是否有运行机会,以下时机会对此产生影响; 将proc队列放入entity队列的时机: 往proc队列里面添加proc; worker执行完一个proc; 将proc队列从entity队列删除的时机: work...
-
下一篇
10大主流压力测试工具
市面上流行的压力/负载/性能测试工具多是来自国外,近年来国内的性能测试工具也如雨后春笋崛起。同时由于开发的目的和侧重点不同,其功能也有很大差异,下面就为您简单介绍10款目前最常见的测试产品。 1、LoadRunner(商用版)是一款C/S架构的商业版性能测试工具,在国内存在的时间较早,在国内在使用较广泛,知名度较高。该工具免费开放了50个虚拟用户,可供学习和使用。在国内的网站上有破解版本,但是到了最新的12版本,不再有破解版。破解版的仿真度较差,HTTP的瀑布图是按两个两个并发(与浏览器行为不一样),最新版本的仿真相对提高很多,对于HTTP静态请求相似度请求提高到80%,而动态请求就要差很多。由于loadRunner起步早,支持的协议很多,很多不常用的协议都支持,如电子邮件相关协议都支持。但对一些视频协议支持的不太好。loadrunner目前对浏览器最新版支持的不太好,最新的loadrunner12只支持ie11,对其它浏览器如谷歌、火狐等支持的较差。在脚本录制方面有些网站录制不了。价格上比较昂贵,一般小企业无力承担。 LoadRunner官网:https://saas.hpe.com...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- MySQL8.0.19开启GTID主从同步CentOS8
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装