架构探险从零开始写javaweb框架pdf扫描版
分享到:
想要学习java,就得学好三种框架。常说的三大框架指:SSH。即:Spring、Struts、Hibernate。Spring:功能强大的组件粘合济,能够将你的所有的java功能模块用配置文件的方式组合起来(还让你感觉不到spring的存在)成为一个完成的应用。Struts:不说了,大名鼎鼎的功能强大的MVC架构。Hibernate:强大的ORM工具,然后很方便将数据库记录转化为java的实体实例,将java的实体实例很容易的保存到数据库中,如果你不需要很复杂的数据库访问,利用它你根本就不用了解数据库的细节一般用于开发JAVA.WEB。这里小编给大家推荐一本入门书籍架构探险从零开始写javaweb框架是一本关于java.web框架编写的优秀教材,由阿里巴巴公司系统架构师黄勇编著。架构探险从零开始写javaweb框架从开发工具着手,让读者们娴熟的使用IDE,让读者一步一步熟悉Servlet到搭建轻量级框架,通熟易懂,由类加载器到实现请求转发,使读者了解到了Servlet生命周期及请求过程,夯实基础,提高了学习能力,结合附录中提供的项目构建工具与IDE,十分节约了读者时间。站在读者的角度考虑。架构探险从零开始写javaweb框架由浅入深讲解精细,不仅适合于初级Java开发学习基础,而已适合中级甚至高级Java攻城狮巩固基础,并且可以通过借鉴来提高自己。有需要的朋友欢迎来3322软件站免费下载阅读。
ISBN:9787121268298
版次:1
商品编码:11753276
品牌:Broadview
包装:平装
开本:16开
出版时间:2015-08-01
用纸:胶版纸
页数:364
正文语种:中文
——开源中国COO 王永和
勇哥,您好!您的书我看到第三章了,写的非常好,收获很多,谢谢!本书内容通俗易懂,由浅入深,一步一步引领着我们实现自己的Java Web框架,MVC、IOC、AOP、事务控制等面面俱到。不想当将军的士兵不是好士兵,不想当架构师的程序员不是好程序员,本书是通往架构师之路不能不读的一部佳作。
——开源中国网友 陈浩
这本书由表及里讲解精细,既适合于初级Java开发学习基础,又适合中级甚至高级Java攻城狮巩固基础,通过借鉴来提高自己。因为该书是回归基础,从简单的Servlet开始剖析一些我们经常用到的知识点或者框架比如代理模式,、AOP、CXF等等,抛开了复杂的SSH,很喜欢也很受用,希望看完以后能够让自己的水平有个质的飞跃。感谢作者能够毫不保留的分享自己的经验。
——开源中国网友 康良
书中从开发工具入手,不仅让我们熟练使用IDE,更让我们一步一步熟悉Servlet到搭建轻量级框架,精简易懂,由类加载器到实现请求转发,使我们更清楚理解Servlet生命周期及请求过程,夯实基础,提高学习能力,以及附录中提供的项目构建工具与IDE结合在一起,更能节约读者时间。
——开源中国网友 何银
作为一名开发人员,我们学习的并不应该是一个架构,而是开发这个架构的过程,已经在这个过程当中我们所需要具体的知识和能力,最后为编写一个适合自己的架构,这才叫一个完整的学习,相信也是作者出书的目的,这也叫做授人以鱼不如授人以渔。
——CSDN网友 kliang77
不要重复制造轮子不代表不需要知道轮子是怎么制造的。在“重复”制造轮子的过程中对知识的掌握,对技术的提升又会一个新的高度,自己写一个框架是对已有框架理解深刻的方式。写一个完整的框架这需要丰富的经验和技术积淀,不是每个人有能力去做的,前提当然是已经会使用已有的框架并知道其大概的实现,并在自己的使用过程中根据实际情况定制自己的框架。
——CSDN网友 cauchyweierstrass
架构、框架,其阐述的主要是一种思想,造轮子的思想,至于这个轮子该造成汽车的还是自行车的,根据实际需要选用合适的材料(例如Hibernate、iBatis等),LZ的书也是想通过对架构、框架这么多年的经验积累来讲讲如何去掌握这种思想,探索适合企业、个人的架构方法。
——CSDN网友 xiaoyaocao2000
使用IDEA搭建并开发Java项目;
使用Maven自动化构建Java项目;
使用Git管理项目源代码。
1.1 使用IDEA创建Maven项目 3
1.1.1 创建IDEA项目 3
1.1.2 调整Maven配置 3
1.2 搭建Web项目框架 5
1.2.1 转为Java Web项目 5
1.2.2 添加Java Web的Maven依赖 6
1.3 编写一个简单的Web应用 10
1.3.1 编写 Servlet类 10
1.3.2 编写JSP页面 11
1.4 让Web应用跑起来 12
1.4.1 在IDEA中配置Tomcat 12
1.4.2 使用Tomcat的Maven插件 13
1.4.3 以Debug方式运行程序 13
1.5 将代码放入Git仓库中 14
1.5.1 编写.gitignore文件 14
1.5.2 提交本地 Git 仓库 15
1.5.3 推送远程Git仓库 15
1.5.4 总结 16
第2章 为Web应用添加业务功能 17
如何进行需求分析;
如何进行系统设计;
如何编写应用程序。
2.1 需求分析与系统设计 19
2.1.1 需求分析 19
2.1.2 系统设计 19
2.2 动手开发Web应用 21
2.2.1 创建数据库 22
2.2.2 准备开发环境 22
2.2.3 编写模型层 23
2.2.4 编写控制器层 25
2.2.5 编写服务层 27
2.2.6 编写单元测试 28
2.2.7 编写视图层 31
2.3 细节完善与代码优化 31
2.3.1 完善服务层 32
2.3.2 完善控制器层 59
2.3.3 完善视图层 60
2.4 总结 65
第3章 搭建轻量级Java Web框架 66
您将通过本章的学习,掌握如下技能:
如何快速搭建开发框架;
如何加载并读取配置文件;
如何实现一个简单的IOC容器;
如何加载指定的类;
如何初始化框架。
3.1 确定目标 68
3.2 搭建开发环境 70
3.2.1 创建框架项目 70
3.2.2 创建示例项目 73
3.3 定义框架配置项 74
3.4 加载配置项 75
3.5 开发一个类加载器 78
3.6 实现Bean容器 87
3.7 实现依赖注入功能 90
3.8 加载Controller 93
3.9 初始化框架 97
3.10 请求转发器 98
3.11 总结 109
第4章 使框架具备AOP特性 110
在本章中,读者将学到大量有用的技术,具体包括:
如何理解并使用代理技术;
如何使用Spring提供的AOP技术;
如何使用动态代理技术实现AOP框架;
如何理解并使用ThreadLocal技术;
如何理解数据库事务管理机制;
如何使用AOP框架实现事务控制。
4.1 代理技术简介 112
4.1.1 什么是代理 112
4.1.2 JDK动态代理 114
4.1.3 CGlib动态代理 116
4.2 AOP技术简介 118
4.2.1 什么是AOP 118
4.2.2 写死代码 119
4.2.3 静态代理 120
4.2.4 JDK动态代理 121
4.2.5 CGLib动态代理 122
4.2.6 Spring AOP 124
4.2.7 Spring + AspectJ 136
4.3 开发AOP框架 142
4.3.1 定义切面注解 142
4.3.2 搭建代理框架 143
4.3.3 加载AOP框架 150
4.4 ThreadLocal简介 158
4.4.1 什么是ThreadLocal 158
4.4.2 自己实现ThreadLocal 161
4.4.3 ThreadLocal使用案例 163
4.5 事务管理简介 172
4.5.1 什么是事务 172
4.5.2 事务所面临的问题 173
4.5.3 Spring的事务传播行为 175
4.6 实现事务控制特性 178
4.6.1 定义事务注解 178
4.6.2 提供事务相关操作 181
4.6.3 编写事务代理切面类 182
4.6.4 在框架中添加事务代理机制 184
4.7 总结 185
第5章 框架优化与功能扩展 186
如何优化Action参数;
如何实现文件上传功能;
如何与Servlet API完全解耦;
如何实现安全控制框架;
如何实现Web服务框架。
5.1 优化Action参数 188
5.1.1 明确Action参数优化目标 188
5.1.2 动手优化Action参数使用方式 188
5.2 提供文件上传特性 191
5.2.1 确定文件上传使用场景 191
5.2.2 实现文件上传功能 194
5.3 与Servlet API解耦 214
5.3.1 为何需要与Servlet API解耦 214
5.3.2 与Servlet API解耦的实现过程 215
5.4 安全控制框架――Shiro 219
5.4.1 什么是Shiro 219
5.4.2 Hello Shiro 220
5.4.3 在Web开发中使用Shiro 224
5.5 提供安全控制特性 230
5.5.1 为什么需要安全控制 230
5.5.2 如何使用安全控制框架 231
5.5.3 如何实现安全控制框架 242
5.6 Web服务框架――CXF 261
5.6.1 什么是CXF 261
5.6.2 使用CXF开发SOAP服务 262
5.6.3 基于SOAP的安全控制 278
5.6.4 使用CXF开发REST服务 291
5.7 提供Web服务特性 308
5.8 总结 329
附录A Maven快速入门 330
附录B 将构件发布到Maven中央仓库 342
其实一开始黄勇找我为他的处女作写序的时候,我是拒绝的。因为你不能让我写,我马上就写。我要先看一下书,因为我不愿意写完后发现书很烂,然后读者来骂我乱推荐。
黄勇一直是开源中国非常活跃的会员,非常积极地回答各种问题和分享自己所擅长的知识。本身也是Smart.Framework框架的作者,积分居然过千,要知道开源中国上超过1000积分的会员寥寥无几。我和黄勇并没有见过面,仅通过线上的信息大概觉得他是一个热情、虚怀若谷又非常接地气的技术牛人。
回归正题,2015年是Java的20周年。Java是一门让我们又爱又恨的编程语言,在编程语言界里算是一棵老树,关键是这棵老树还频频长出新枝。Java8的出现使其具备了各种流行的编程理念,而全新的Java9也已经奠定了Java发展的里程碑并将于2016年下半年发布正式版本。说起又爱又恨,在Java最火热的那几年里,满世界的SSH(Struts+Spring+Hibernate),所有人都在讨论SSH框架里的奇技淫巧,也出现了各种图书和培训教程。很多初学者认为Java=SSH,学Java就是学SSH,以至于很多人用SSH做了不少项目,但依然对Java、HTTP等基础知识一知半解、不甚了了。
在 Web 开发方面,Java 经历了这么几个阶段,从最开始使用大量 Servlet 来处理各种业务逻辑,然后出现了著名的 Struts 框架,大大简化了 Web 应用的开发以及配置,而后是 Hibernate 和 Spring 的出现,使这三者成为三驾马车,并一直流行到现在。
而如今,确切地说应该是最近几年,Java用户开始回归理性。由于SSH在不断发展的同时,体积也变得越来越庞大,很多人在使用的过程中被各种配置、注解弄得头昏脑涨。而前些年Ruby.on.Rails框架以其“惯例优于配置”的理念让我们猛然清醒——原来Web的开发就应该这么简单。于是越来越多的 Java 开发者开始考虑轻量级框架解决方案。而黄勇的 Smart Framework 就是这种轻量级解决方案之一。
Java的世界从来不缺乏各种优秀的开源软件,理念成熟后大量的轻量级Web框架如雨后春笋般出现在我们眼前。在开源中国网站上你会发现Java的Web框架有超过300款之多。那么多的框架对初学者来说简直是噩梦。于是三年前我写了一篇文章《初学JavaWeb开发,请远离各种框架,从Servlet开发》,今天一看,这篇文章居然超过了21万阅读量。这篇文章是针对Java初学者的,因为很多人为了学习各种框架而疲于奔命,但却从来没有思考为什么同样是做开发的,自己要比别人更累。最根本原因在于方法不对,事倍功半!
在招聘Java开发人员时我最爱问的一个问题是:请解释一下Session的工作原理,从而来判断应聘者对基础知识的掌握情况。那么什么才是初学者学习Web开发的好方法呢?其实我在前面提到的文章里包含了详细的步骤,简单地说就是先要熟悉Java.EE里关于Servlet.API中的常用类和方法。在这个基础上再去学习某个框架的使用,最后是阅读HTTP协议的内容。想成为高手必须对HTTP协议有着深入的了解。一旦掌握了这些基础的内容,你会发现使用框架甚至是开发一个适合自己业务的框架是多么的容易。
而黄勇的这本书,虽然我只是看到书的目录以及前面两三章的内容,但相信这是一本对初学者非常好的书,没有华丽的词藻,实实在在地讲述了整个开发流程。这本书不是在教你怎么用Smart.Framework,而是展示了作者开发这个框架的整个心血历程,包括设计一个框架所用到的各种技术,还涉及了很多底层的 Java 技术,如类加载器、依赖注入、线程本地、事务管理和安全控制,等等。
不管是学习还是在实际的开发中,少问怎么做,多问问为什么要这么做。或许,这就是黄勇想要告诉大家的吧。
红薯
开源中国(oschina.net)创始人
2015年6月12日
于北京到上海的 G123 列车上
架构探险从零开始写javaweb框架禁用于商业用途!如果您喜欢《架构探险从零开始写javaweb框架》,请购买正版,谢谢合作。
爱学习,请到3322软件站 / 查找资源自行下载!
1、下载并解压,得出pdf文件
2、如果打不开本文件,请务必在3322软件站选择一款阅读器/zt/430.html下载
3、安装后,在打开解压得出的pdf文件
4、双击进行阅读
方法二:
1、在手机里下载3322软件站中的阅读器和百度网盘
2、直接将pdf传输到百度网盘
3、用阅读器打开即可阅读
架构探险从零开始写javaweb框架内容简介:
架构探险从零开始写javaweb框架首先从一个简单的Web应用开始,让读者学会如何使用IDEA、Maven、Git等开发工具搭建Java.Web应用;接着通过一个简单的应用场景,为该Web应用添加若干业务功能,从需求分析与系统设计开始,带领读者动手完成该Web应用,完善相关细节,并对已有代码进行优化;然后基于传统Servlet框架搭建一款轻量级Java.Web框架,一切都是从零开始,逐个实现类加载器、Bean容器、IoC框架、MVC框架,所涉及的代码也是整个框架的核心基础。为了使框架具备AOP特性,从代理技术讲到AOP技术,从Thread.Local技术讲到事务控制技术。最后对框架进行优化与扩展,通过对现有框架的优化,使其可以提供更加完备的功能,并以扩展Web服务插件与安全控制插件为例,教会读者如何设计一款可扩展的Web应用框架。非常适合具备 Java 基础知识,熟悉 Web 相关理论,并想成为架构师的程序员阅读。架构探险从零开始写javaweb框架简介:
出版社: 电子工业出版社ISBN:9787121268298
版次:1
商品编码:11753276
品牌:Broadview
包装:平装
开本:16开
出版时间:2015-08-01
用纸:胶版纸
页数:364
正文语种:中文
架构探险从零开始写javaweb框架作者简介:
黄勇,从事近十年的JavaEE应用开发工作,现任阿里巴巴公司系统架构师。对分布式服务架构与大数据技术有深入研究,具有丰富的B/S架构开发经验与项目实战经验,擅长敏捷开发模式。国内开源软件推动者之一,活跃于“开源中国”社区网站,SmartFramework开源框架创始人。热爱技术交流,乐于分享自己的工作经验。实战Gradle精彩评论:
这年头出一本关于Java的书需要勇气,因为很容易会被归类到“烂大街”的分类里头,市面上不凡“XXX深入浅出”、“21天精通Java”之类。推荐下面这本书的主要原因是该书的作者是我的朋友,众所周知我的朋友必须是大牛——来自阿里巴巴系统架构师黄勇,同时也是Java开源框架Smart.Frame.work的作者。本书从Java基础讲起,到IDE开发环境,到应用实践,难得的是还花了大量篇幅把基于Java架构系统常用的开源软件也以架构师的角度逐一介绍了,吃Java这碗饭的同学可以拜读一下。——开源中国COO 王永和
勇哥,您好!您的书我看到第三章了,写的非常好,收获很多,谢谢!本书内容通俗易懂,由浅入深,一步一步引领着我们实现自己的Java Web框架,MVC、IOC、AOP、事务控制等面面俱到。不想当将军的士兵不是好士兵,不想当架构师的程序员不是好程序员,本书是通往架构师之路不能不读的一部佳作。
——开源中国网友 陈浩
这本书由表及里讲解精细,既适合于初级Java开发学习基础,又适合中级甚至高级Java攻城狮巩固基础,通过借鉴来提高自己。因为该书是回归基础,从简单的Servlet开始剖析一些我们经常用到的知识点或者框架比如代理模式,、AOP、CXF等等,抛开了复杂的SSH,很喜欢也很受用,希望看完以后能够让自己的水平有个质的飞跃。感谢作者能够毫不保留的分享自己的经验。
——开源中国网友 康良
书中从开发工具入手,不仅让我们熟练使用IDE,更让我们一步一步熟悉Servlet到搭建轻量级框架,精简易懂,由类加载器到实现请求转发,使我们更清楚理解Servlet生命周期及请求过程,夯实基础,提高学习能力,以及附录中提供的项目构建工具与IDE结合在一起,更能节约读者时间。
——开源中国网友 何银
作为一名开发人员,我们学习的并不应该是一个架构,而是开发这个架构的过程,已经在这个过程当中我们所需要具体的知识和能力,最后为编写一个适合自己的架构,这才叫一个完整的学习,相信也是作者出书的目的,这也叫做授人以鱼不如授人以渔。
——CSDN网友 kliang77
不要重复制造轮子不代表不需要知道轮子是怎么制造的。在“重复”制造轮子的过程中对知识的掌握,对技术的提升又会一个新的高度,自己写一个框架是对已有框架理解深刻的方式。写一个完整的框架这需要丰富的经验和技术积淀,不是每个人有能力去做的,前提当然是已经会使用已有的框架并知道其大概的实现,并在自己的使用过程中根据实际情况定制自己的框架。
——CSDN网友 cauchyweierstrass
架构、框架,其阐述的主要是一种思想,造轮子的思想,至于这个轮子该造成汽车的还是自行车的,根据实际需要选用合适的材料(例如Hibernate、iBatis等),LZ的书也是想通过对架构、框架这么多年的经验积累来讲讲如何去掌握这种思想,探索适合企业、个人的架构方法。
——CSDN网友 xiaoyaocao2000
架构探险从零开始写javaweb框架目录:
第1章 从一个简单的Web应用 1使用IDEA搭建并开发Java项目;
使用Maven自动化构建Java项目;
使用Git管理项目源代码。
1.1 使用IDEA创建Maven项目 3
1.1.1 创建IDEA项目 3
1.1.2 调整Maven配置 3
1.2 搭建Web项目框架 5
1.2.1 转为Java Web项目 5
1.2.2 添加Java Web的Maven依赖 6
1.3 编写一个简单的Web应用 10
1.3.1 编写 Servlet类 10
1.3.2 编写JSP页面 11
1.4 让Web应用跑起来 12
1.4.1 在IDEA中配置Tomcat 12
1.4.2 使用Tomcat的Maven插件 13
1.4.3 以Debug方式运行程序 13
1.5 将代码放入Git仓库中 14
1.5.1 编写.gitignore文件 14
1.5.2 提交本地 Git 仓库 15
1.5.3 推送远程Git仓库 15
1.5.4 总结 16
第2章 为Web应用添加业务功能 17
如何进行需求分析;
如何进行系统设计;
如何编写应用程序。
2.1 需求分析与系统设计 19
2.1.1 需求分析 19
2.1.2 系统设计 19
2.2 动手开发Web应用 21
2.2.1 创建数据库 22
2.2.2 准备开发环境 22
2.2.3 编写模型层 23
2.2.4 编写控制器层 25
2.2.5 编写服务层 27
2.2.6 编写单元测试 28
2.2.7 编写视图层 31
2.3 细节完善与代码优化 31
2.3.1 完善服务层 32
2.3.2 完善控制器层 59
2.3.3 完善视图层 60
2.4 总结 65
第3章 搭建轻量级Java Web框架 66
您将通过本章的学习,掌握如下技能:
如何快速搭建开发框架;
如何加载并读取配置文件;
如何实现一个简单的IOC容器;
如何加载指定的类;
如何初始化框架。
3.1 确定目标 68
3.2 搭建开发环境 70
3.2.1 创建框架项目 70
3.2.2 创建示例项目 73
3.3 定义框架配置项 74
3.4 加载配置项 75
3.5 开发一个类加载器 78
3.6 实现Bean容器 87
3.7 实现依赖注入功能 90
3.8 加载Controller 93
3.9 初始化框架 97
3.10 请求转发器 98
3.11 总结 109
第4章 使框架具备AOP特性 110
在本章中,读者将学到大量有用的技术,具体包括:
如何理解并使用代理技术;
如何使用Spring提供的AOP技术;
如何使用动态代理技术实现AOP框架;
如何理解并使用ThreadLocal技术;
如何理解数据库事务管理机制;
如何使用AOP框架实现事务控制。
4.1 代理技术简介 112
4.1.1 什么是代理 112
4.1.2 JDK动态代理 114
4.1.3 CGlib动态代理 116
4.2 AOP技术简介 118
4.2.1 什么是AOP 118
4.2.2 写死代码 119
4.2.3 静态代理 120
4.2.4 JDK动态代理 121
4.2.5 CGLib动态代理 122
4.2.6 Spring AOP 124
4.2.7 Spring + AspectJ 136
4.3 开发AOP框架 142
4.3.1 定义切面注解 142
4.3.2 搭建代理框架 143
4.3.3 加载AOP框架 150
4.4 ThreadLocal简介 158
4.4.1 什么是ThreadLocal 158
4.4.2 自己实现ThreadLocal 161
4.4.3 ThreadLocal使用案例 163
4.5 事务管理简介 172
4.5.1 什么是事务 172
4.5.2 事务所面临的问题 173
4.5.3 Spring的事务传播行为 175
4.6 实现事务控制特性 178
4.6.1 定义事务注解 178
4.6.2 提供事务相关操作 181
4.6.3 编写事务代理切面类 182
4.6.4 在框架中添加事务代理机制 184
4.7 总结 185
第5章 框架优化与功能扩展 186
如何优化Action参数;
如何实现文件上传功能;
如何与Servlet API完全解耦;
如何实现安全控制框架;
如何实现Web服务框架。
5.1 优化Action参数 188
5.1.1 明确Action参数优化目标 188
5.1.2 动手优化Action参数使用方式 188
5.2 提供文件上传特性 191
5.2.1 确定文件上传使用场景 191
5.2.2 实现文件上传功能 194
5.3 与Servlet API解耦 214
5.3.1 为何需要与Servlet API解耦 214
5.3.2 与Servlet API解耦的实现过程 215
5.4 安全控制框架――Shiro 219
5.4.1 什么是Shiro 219
5.4.2 Hello Shiro 220
5.4.3 在Web开发中使用Shiro 224
5.5 提供安全控制特性 230
5.5.1 为什么需要安全控制 230
5.5.2 如何使用安全控制框架 231
5.5.3 如何实现安全控制框架 242
5.6 Web服务框架――CXF 261
5.6.1 什么是CXF 261
5.6.2 使用CXF开发SOAP服务 262
5.6.3 基于SOAP的安全控制 278
5.6.4 使用CXF开发REST服务 291
5.7 提供Web服务特性 308
5.8 总结 329
附录A Maven快速入门 330
附录B 将构件发布到Maven中央仓库 342
架构探险从零开始写javaweb框架前言/序言:
序其实一开始黄勇找我为他的处女作写序的时候,我是拒绝的。因为你不能让我写,我马上就写。我要先看一下书,因为我不愿意写完后发现书很烂,然后读者来骂我乱推荐。
黄勇一直是开源中国非常活跃的会员,非常积极地回答各种问题和分享自己所擅长的知识。本身也是Smart.Framework框架的作者,积分居然过千,要知道开源中国上超过1000积分的会员寥寥无几。我和黄勇并没有见过面,仅通过线上的信息大概觉得他是一个热情、虚怀若谷又非常接地气的技术牛人。
回归正题,2015年是Java的20周年。Java是一门让我们又爱又恨的编程语言,在编程语言界里算是一棵老树,关键是这棵老树还频频长出新枝。Java8的出现使其具备了各种流行的编程理念,而全新的Java9也已经奠定了Java发展的里程碑并将于2016年下半年发布正式版本。说起又爱又恨,在Java最火热的那几年里,满世界的SSH(Struts+Spring+Hibernate),所有人都在讨论SSH框架里的奇技淫巧,也出现了各种图书和培训教程。很多初学者认为Java=SSH,学Java就是学SSH,以至于很多人用SSH做了不少项目,但依然对Java、HTTP等基础知识一知半解、不甚了了。
在 Web 开发方面,Java 经历了这么几个阶段,从最开始使用大量 Servlet 来处理各种业务逻辑,然后出现了著名的 Struts 框架,大大简化了 Web 应用的开发以及配置,而后是 Hibernate 和 Spring 的出现,使这三者成为三驾马车,并一直流行到现在。
而如今,确切地说应该是最近几年,Java用户开始回归理性。由于SSH在不断发展的同时,体积也变得越来越庞大,很多人在使用的过程中被各种配置、注解弄得头昏脑涨。而前些年Ruby.on.Rails框架以其“惯例优于配置”的理念让我们猛然清醒——原来Web的开发就应该这么简单。于是越来越多的 Java 开发者开始考虑轻量级框架解决方案。而黄勇的 Smart Framework 就是这种轻量级解决方案之一。
Java的世界从来不缺乏各种优秀的开源软件,理念成熟后大量的轻量级Web框架如雨后春笋般出现在我们眼前。在开源中国网站上你会发现Java的Web框架有超过300款之多。那么多的框架对初学者来说简直是噩梦。于是三年前我写了一篇文章《初学JavaWeb开发,请远离各种框架,从Servlet开发》,今天一看,这篇文章居然超过了21万阅读量。这篇文章是针对Java初学者的,因为很多人为了学习各种框架而疲于奔命,但却从来没有思考为什么同样是做开发的,自己要比别人更累。最根本原因在于方法不对,事倍功半!
在招聘Java开发人员时我最爱问的一个问题是:请解释一下Session的工作原理,从而来判断应聘者对基础知识的掌握情况。那么什么才是初学者学习Web开发的好方法呢?其实我在前面提到的文章里包含了详细的步骤,简单地说就是先要熟悉Java.EE里关于Servlet.API中的常用类和方法。在这个基础上再去学习某个框架的使用,最后是阅读HTTP协议的内容。想成为高手必须对HTTP协议有着深入的了解。一旦掌握了这些基础的内容,你会发现使用框架甚至是开发一个适合自己业务的框架是多么的容易。
而黄勇的这本书,虽然我只是看到书的目录以及前面两三章的内容,但相信这是一本对初学者非常好的书,没有华丽的词藻,实实在在地讲述了整个开发流程。这本书不是在教你怎么用Smart.Framework,而是展示了作者开发这个框架的整个心血历程,包括设计一个框架所用到的各种技术,还涉及了很多底层的 Java 技术,如类加载器、依赖注入、线程本地、事务管理和安全控制,等等。
不管是学习还是在实际的开发中,少问怎么做,多问问为什么要这么做。或许,这就是黄勇想要告诉大家的吧。
红薯
开源中国(oschina.net)创始人
2015年6月12日
于北京到上海的 G123 列车上
免责声明:
架构探险从零开始写javaweb框架来源于网络,仅用于分享知识,学习和交流!请下载完在24小时内删除。架构探险从零开始写javaweb框架禁用于商业用途!如果您喜欢《架构探险从零开始写javaweb框架》,请购买正版,谢谢合作。
爱学习,请到3322软件站 / 查找资源自行下载!
使用说明:
方法一:1、下载并解压,得出pdf文件
2、如果打不开本文件,请务必在3322软件站选择一款阅读器/zt/430.html下载
3、安装后,在打开解压得出的pdf文件
4、双击进行阅读
方法二:
1、在手机里下载3322软件站中的阅读器和百度网盘
2、直接将pdf传输到百度网盘
3、用阅读器打开即可阅读
展开更多
架构探险从零开始写javaweb框架pdf扫描版下载地址
- 需先下载高速下载器:
- 专用下载:
- 其它下载: