大小:74.49M
更新时间:23-08-29
系统:Pc
版本:v
架构探险从零开始写javaweb框架是一本java web框架编写教材,由阿里巴巴公司系统架构师黄勇编著。本书从开发工具入手,让读者们熟练使用IDE,更让读者一步一步熟悉Servlet到搭建轻量级框架,精简易懂,由类加载器到实现请求转发,使读者更清楚理解Servlet生命周期及请求过程,夯实基础,提高学习能力,以及附录中提供的项目构建工具与IDE结合在一起,更能节约读者时间。架构探险从零开始写javaweb框架由表及里讲解精细,既适合于初级Java开发学习基础,又适合中级甚至高级Java攻城狮巩固基础,通过借鉴来提高自己,欢迎免费下载。
《架构探险从零开始写javaweb框架》首先从一个简单的 Web 应用开始,让读者学会如何使用 IDEA、Maven、Git 等开发工具搭建 Java Web 应用;接着通过一个简单的应用场景,为该 Web 应用添加若干业务功能,从需求分析与系统设计开始,带领读者动手完成该 Web 应用,完善相关细节,并对已有代码进行优化;然后基于传统 Servlet 框架搭建一款轻量级 Java Web 框架,一切都是从零开始,逐个实现类加载器、Bean 容器、IoC 框架、MVC 框架,所涉及的代码也是整个框架的核心基础。为了使框架具备 AOP 特性,从代理技术讲到 AOP 技术,从 ThreadLocal 技术讲到事务控制技术。最后对框架进行优化与扩展,通过对现有框架的优化,使其可以提供更加完备的功能,并以扩展 Web 服务插件与安全控制插件为例,教会读者如何设计一款可扩展的Web应用框架。非常适合具备 Java 基础知识,熟悉 Web 相关理论,并想成为架构师的程序员阅读。
第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中配置Tomcat12
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 加载Controller93
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 什么是AOP118
4.2.2 写死代码119
4.2.3 静态代理120
4.2.4 JDK动态代理121
4.2.5 CGLib动态代理122
4.2.6 Spring AOP124
4.2.7 Spring + AspectJ136
4.3 开发AOP框架142
4.3.1 定义切面注解142
4.3.2 搭建代理框架143
4.3.3 加载AOP框架150
4.4 ThreadLocal简介158
4.4.1 什么是ThreadLocal158
4.4.2 自己实现ThreadLocal161
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 安全控制框架――Shiro219
5.4.1 什么是Shiro219
5.4.2 Hello Shiro220
5.4.3 在Web开发中使用Shiro224
5.5 提供安全控制特性230
5.5.1 为什么需要安全控制230
5.5.2 如何使用安全控制框架231
5.5.3 如何实现安全控制框架242
5.6 Web服务框架――CXF261
5.6.1 什么是CXF261
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
1、下载并解压,得出pdf文件
2、如果打不开本文件,请务必下载PDF阅读器
3、安装后,在打开解压得出的pdf文件
4、双击进行阅读
应用信息
同类热门
热门标签
网友评论0人参与,0条评论
最新排行
单词风暴ULTRA旗舰版291.57Mv23.2.6258 单词风暴是一款简单实用,功能丰富的全新多语言快速记忆学习软件,它是使用全新记忆理念精心打造的一款多语言速记软件,在记忆中首次引入头脑风暴(BrainStorming),激发大脑潜能,并充分发挥电脑辅助记忆的优势,运用多种科学的统计分析模型以及艾宾浩
查看
离散数学及其应用(原书第6版)76.74M 离散数学及其应用(原书第6版)是一本经典的离散数学教材,由(美)罗森(Rosen,K.H)著;袁崇义,屈婉玲,张桂芸等译,机械工业出版社发行。全书全面而系统地介绍了离散数学的理论和方法,内容涉及数学推理、组合分析、离散结构、算法思维以及应用与建模。
查看
excel实战技巧精粹pdf版77.45M Excel实战技巧精粹PDF是一本主要讲述关于Excel经验的PDF文档,该书通过对Excel技术论坛上上百万提问的分析与提炼,汇集了用户在使用Excel过程中最常见的需求,通过几百万个示例的演示与讲解,将Excel高手的过人技巧手把手交给读者,并
查看
Android微博应用开发实践36.86M孙弋pdf扫描版 Android微博应用开发实践是一本Android应用开发书籍,由孙弋,李贵民,王树奇编著,全书详细地介绍了Android平台应用程序开发过程中所涉及的开发语言、开发流程及基础开发资源应用等内容,并以国内应用人数最多的新浪微博平台应用程序开发为例,
查看
opengl编程指南(原书第7版)22.65Mpdf高清版opengl是图形硬件的一种软件接口,这个接口包含的函数超过700个,这些函数可以用于指定物体和操作,创建交互式的三维应用程序。这里小编为广大网友带来了opengl编程指南第七版pdf下载,作者: [美] Dave Shreiner,译者: 李军/徐波
查看
php与mysql程序设计(第3版)134.16M吉尔摩pdf扫描版php与mysql程序设计(第3版)是一本PHP、MySQL程序设计指导手册,由美国前端工程师吉尔摩编著。全书主题的选取和组织从实用出发,在讲述知识之外还加入了作者多年积累的宝贵实战经验,并提供了500多个可以直接用于实际项目的代码示例,充分体现了作者深
查看
Android C++高级编程:使用NDK69.44M辛纳pdf扫描版 Android是一个完整的、开放的、免费的移动平台,该平台给移动应用开发者提供了无限的机会。但是如何才能更好的常握好呢?小编推荐大家阅读《android c++高级编程:使用NDK》,这是国内首本基于C++开发android应用书籍,由美国程序员辛
查看
Hadoop海量数据处理:技术详解与项目实战47.54M范东来pdf扫描版Hadoop海量数据处理:技术详解与项目实战是一本Hadoop数据处理技术指导手册,由范东来编著。本书主要介绍Hadoop技术的相关知识,不但详细介绍了Hadoop、MapReduce、HDFS、Hive和Sqoop,还深入探讨了Hadoop的运维和调优
查看