架构探险――从零开始写Java Web框架

出版日期:2015-8-1
ISBN:9787121268299
作者:黄勇
页数:364页

内容概要

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

书籍目录

第1章 从一个简单的Web应用 1
正所谓“工欲善其事,必先利其器”,在正式开始设计并开发我们的轻量级Java Web框架之前,有必要首先掌握以下技能:
使用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
我们需要这样的框架,它足够轻量级、足够灵巧,不妨给它取一个优雅的名字——Smart Framework,本章我们就一起来实现这个框架。
您将通过本章的学习,掌握如下技能:
如何快速搭建开发框架;
如何加载并读取配置文件;
如何实现一个简单的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

作者简介

本书首先从一个简单的 Web 应用开始,让读者学会如何使用 IDEA、Maven、Git 等开发工具搭建 Java Web 应用;接着通过一个简单的应用场景,为该 Web 应用添加若干业务功能,从需求分析与系统设计开始,带领读者动手完成该 Web 应用,完善相关细节,并对已有代码进行优化;然后基于传统 Servlet 框架搭建一款轻量级 Java Web 框架,一切都是从零开始,逐个实现类加载器、Bean 容器、IoC 框架、MVC 框架,所涉及的代码也是整个框架的核心基础。为了使框架具备 AOP 特性,从代理技术讲到 AOP 技术,从 ThreadLocal 技术讲到事务控制技术。最后对框架进行优化与扩展,通过对现有框架的优化,使其可以提供更加完备的功能,并以扩展 Web 服务插件与安全控制插件为例,教会读者如何设计一款可扩展的Web应用框架。


 架构探险――从零开始写Java Web框架下载 精选章节试读 更多精彩书评



发布书评

 
 


精彩书评 (总计2条)

  •     贴的代码多也就算了,注释就不能弄成一行么,7行代码就要凑一页,也是醉了。其他也没什么干货了,就五章的内容,第一章和第二章在打酱油,只要看剩下的最后三章就可以。因为代码多内容少,快的就一天就能看个大概。书名是从零开始,适合新入行的同志学习,还是有点收获的。79大洋,太贵了。定位新手的书,订了个太高的价钱。
  •     书里面代码很多。每页几乎都是大量代码。作者应该是把代码直接复制上去的。看过作者的博客,水平很高。可是书里面全贴代码,这。。。。。除去代码 ,书应该不到100页。。。。。。。。。。。。。。。。

精彩短评 (总计23条)

  •     没买的还是表花钱买了,没有价值的入门书。关键定价还79,就只能给一个星了。
  •     中间两章对理解 Spring 有很大的帮助,价值千金,适合想要进阶的初级开发者。其它部分太水了。
  •     代码太多了,讲解感觉不深入。
  •     代码贴得太多,一样的代码还贴2遍,凑字数么?
  •     我只想说,居然没有用SpringMVC。。。SpringMVC可以简单好多。帮我理解CXF和SpringMVC。建议直接第三章开整。
  •     前两章讲非常基础的东西,中间两章讲框架实现,最后一章开始借用第三方包来封装去扩充自己的框架。全书狂贴代码有点充字数的嫌疑,还不如省去废话把中间两章讲的再细致一点。最后想说的是你连个demo都不给,自己在开源中国上的demo基于的smart是更加齐全的。你让我怎么玩?
  •     第一眼看也是觉得代码太多,前面两章基本没看,直接从第三章开始看,看完还是有收获的,讲明一些设计的原因。价格确实是坑了点,不过刚好是活动买的。买贵了的话,就用知识无价安慰下自己吧。
  •     挺好的,看完之后对spring框架有了更深的理解。浅显易懂,后面对AOP的讲解有点难。
  •     写得比较简单,看起来不累。
  •     写书最起码的态度就不行,全书贴代码,参考文献也不列。后两章更是不知所云。这大概是国内技术书籍作者的通病了。
  •     相当不错的一本书
  •     一本java自定义架构设计的入门书籍,有利于提高对java常用基本架构原理的理解,适合稍微有些java基础,但是有不太熟悉j2ee开发的同学。总体而言,还比较有趣。
  •     请不要玷污“架构”这两个词
  •     一本blog整理收录的书籍,没有多深入,也不成体系,想起什么就写什么,jsonp、cxf、文件上传、shiro验证。。。但是看完之后,觉得很有所得。 这本书最大的意义在于,帮助我理解了Spring。 多少次看Spring源码都感觉无从下手,很多基础和概念,也不知道是如何实现的。这本书的框架,感觉是在“模仿”spring框架,正好让我理解了spring的原理和实现方法。Beanfactory、标签扫描,看完这本书,我觉得可以去看spring源码了。 书中的一些想法和实现方式,确实值得去借鉴。有写框架的冲动。 而且书中的操作步骤很详细,应该是整理blog的原因,连操作IDE的具体步骤都有,不知是不是在凑字数,不过正是我喜欢的风格。虽然有部分错误,和编排顺序的问题,不过还是值得一看的。
  •     适合有有一定javaweb开发基础的人阅读。将web框架常用知识和框架脉络梳理了一遍。有收获有提升。遗憾在于对原理和技术细节的讲解不够深入详细。
  •     对于理解Java web框架的原理确实有很大的帮助,缺点也很明显,基本全书就是贴代码,而且远远值不起79块,下个电子版看看是个不错的选择。
  •     Java Web框架涉及相关原理解析,容易上手和落地的架构入门书籍
  •     不是一般的垃圾
  •     对准备研究框架的人来说,算是有不错的启发吧
  •     毫无诚意的书,就是贴代码,基本的讲解都没有
  •     适合有一定好javaweb基础的人,作为框架入门书籍,涉及spring框架中各种实现的技术,能很好的拓展知识
  •     一直很好奇spring是怎么实现的,也很想自己写一个框架出来,才选择读的这本书.就像大多数人评价的那样.确实,代码太多.300多页的书,卖79块,确实是太贵了.一般技术书100页10块左右订价还算合理.贵就贵呗,确实,技术含量不高.我书了前3章,已经发现了,挺多的错误.写书这么不认真,真不知道,说啥好.
  •     水的一逼
 

外国儿童文学,篆刻,百科,生物科学,科普,初中通用,育儿亲子,美容护肤PDF图书下载,。 零度图书网 

零度图书网 @ 2024