Java特种兵无pdf下载pdf下载

Java特种兵无百度网盘pdf下载

作者:
简介:本篇主要提供Java特种兵无pdf下载
出版社:领秀天丽图书专营店
出版时间:2014-09
pdf下载价格:0.00¥

免费下载


书籍下载


内容介绍

   图书基本信息
图书名称 Java 特种兵
作者
定价 79.00元
出版社 电子工业出版社
ISBN 9787121239359
出版日期 2014-09-01
字数 786.00千字
页码 475
版次 1
装帧 平装
开本 16开
商品重量 0.4Kg

   内容简介
本书分上、下册,上册强调个人修为的提升,也是本书主旨所在,希望能帮助各位读者朋友提升“功力”;下册将基于上册的内容融入设计、实现的细节。
本书上册共10章,主要内容包括:从简单的角度来验证功底,通过一些简单的例子来说明我们应当如何去掌握Java的基础;关于计算机的工作原理和Java虚拟机的基础知识;Java通信;Java并发;数据库知识;源码基础,说明Java常见的框架基础知识,比如反射、AOP、ORM、Annotation和配置文件的原理;BC、Spring的源码讲解,通过几种不同类型的框架源码,希望读者能体会源码之中的思维方式、设计、架构,以及了解到不同源码的区别所在;很后是知识总结。

   作者简介
谢宇
淘宝网资历Java工程师,CSDN超人气博主,人称“哥”。
作者在进入大学前是一个不折不扣的计算机白痴,曾经被人笑话过不懂鼠标是什么,经过自己的不断努力与坚持,走到现在,自认为还算是一个不错的“泥水匠”。作者把在这一过程中所经历过的许多问题和技术细节,以及自己的学习经历和心理,记录在博客上,引发众多网友的共鸣。
作者发现和自己有类似经历的人很多,在许多网友的支持下,决定写下这本书分享给大家,希望这本书对徘徊在Java门外的初学者有的引导作用,能够提升Java入门者的单兵作战能力,独当一面!

   目录
篇Java功底篇

章扎马:看看功底如何2
1.1String的例子,见证下我们的功底2
1.1.1关于“==”3
1.1.2关于“equals”3
1.1.3编译时优化方案6
1.1.4补充一个例子6
1.1.5跟String较上劲了8
1.1.6intern/equals9
1.1.7StringBuilder.append与String“+”的PK11
1.2一些简单算法,你会如何理解15
1.2.1从一堆数据中找max和min16
1.2.2从100万个数字中找大的10个数字17
1.2.3关于排序,实际场景很重要17
1.2.4数据库是怎么找数据的18
1.2.5Hash算法的形象概念18
1.3简单数字游戏玩一玩20
1.3.1变量A、B交换有几种方式20
1.3.2将无序数据Hash到指定的板块20
1.3.3大量判定“是|否”的操作21
1.3.4简单的数据转换22
1.3.5数字太大,long都存放不下23
1.4功底概述25
1.4.1什么是功底25
1.4.2功底有何用途25
1.4.3如何磨练功底26
1.5功底补充27
1.5.1原生态类型27
1.5.2集合类30
1.6常见的目录与工具包32
1.7面对技术,我们纠结的那些事儿34
1.7.1为什么我这里好用,哪里不好用34
1.7.2你的程序不好用,你会不会用,环境有问题35
1.7.3经验是否能当饭吃36
1.8老A是在逆境中迎难而上者37
第2章Java程序员要知道计算机工作原理41
2.1Java程序员需要知道计算机工作原理41
2.2CPU的那些事儿42
2.2.1从CPU联系到Java42
2.2.2多核46
2.2.3Cacheline47
2.2.4缓存一致性协议49
2.2.5上下文切换50
2.2.6并发与征用51
2.3内存54
2.4磁盘57
2.5缓存60
2.5.1缓存的相对性60
2.5.2缓存的用途和场景62
2.6关于网络与数据库63
2.6.1Java基本I/O63
2.6.2Java的网络基本原则64
2.6.3Java与数据库的交互71
2.7总结72
第3章JVM,Java程序员的OS73
3.1学习Java虚拟机对我们有什么好处73
3.2跨平台与字节码基本原理74
3.2.1javap命令工具74
3.2.2Java字节码结构85
3.2.3Class字节码的加载93
3.2.4字节码增强98
3.3从虚拟机的板块开始108
3.3.1HotspotVM板块划分108
3.3.2“对象存放位置”小总结114
3.3.3关于代115
3.4常见的虚拟机回收算法116
3.4.1串行GC117
3.4.2ParallelGC与ParallelOldGC118
3.4.3CMSGC与未来的G1121
3.4.4简单总结124
3.4.5小小补充125
3.5浅析Java对象的内存结构126
3.5.1原始类型与对象的自动拆装箱126
3.5.2对象内存结构127
3.5.3对象嵌套130
3.5.4常见类型&集合类的内存结构131
3.5.5程序中内存拷贝和垃圾134
3.5.6如何计算对象大小134
3.5.7轻松玩一玩intPKint135
3.6常见的OOM现象136
3.6.1HeapSizeOOM136
3.6.2PermGenOOM139
3.6.3DirectBufferOOM142
3.6.4StackOverflowError144
3.6.5其他的一些内存溢出现象146
3.7常见的Java工具146
3.7.1jps147
3.7.2jstat147
3.7.3jmap148
3.7.4jstack148
3.7.5jinfo149
3.7.6JConsole150
3.7.7VisualVM154
3.7.8MAT(MemoryAnalyzerTool)156
3.7.9BTrace160
3.7.10HSDB165
3.7.11工具总结166
3.8总结167
3.8.1写代码167
3.8.2心理上战胜虚拟机带来的恐惧170
第4章Java通信,交互就需要通信171
4.1通信概述171
4.1.1Java通信的基本过程171
4.1.2Java通信的协议包装173
4.1.3编写自定义通信协议173
4.1.4Java的I/O流是不是很难学186
4.2JavaI/O与内存的那些事191
4.2.1常规I/O操作的运作过程191
4.2.2DirectBuffer的使用191
4.2.3关于Buffer195
4.2.4FileChannel的加锁197
4.3通信调度方式197
4.3.1同步与异步197
4.3.2阻塞与非阻塞198
4.3.3LinuxOS调度IO模型199
4.3.4Java中的BIO、NIO199
4.3.5JavaAIO210
4.4Tomcat中对I/O的请求处理214
4.4.1Tomcat的配置&一个请求的响应214
4.4.2Request、Response对象生成221
4.4.3拉与推226
第5章Java并发,你会遇到228
5.1基础介绍228
5.1.1线程基础228
5.1.2多线程231
5.1.3线程状态231
5.1.4反面教材suspend、resume、stop236
5.1.5调度优先级238
5.1.6线程合并(Join)239
5.1.7线程补充小知识241
5.2线程安全243
5.2.1并发内存模型概述243
5.2.2一些并发问题描述246
5.2.3volatile248
5.2.4final251
5.2.5栈封闭254
5.2.6ThreadLocal255
5.3原子性与锁261
5.3.ynchronized261
5.3.2什么是乐观锁262
5.3.3并发与锁263
5.3.4Atomic264
5.3.5Lock272
5.3.6并发编程核心AQS原理273
5.3.7锁的自身优化方法281
5.4K1.6并发编程的一些集合类282
5.5常见的并发编程工具284
5.5.1CountDownLatch284
5.5.2CyclicBarrier286
5.5.3Semaphor288
5.5.4其他工具简介290
5.6线程池&调度池293
5.6.1阻塞队列模型293
5.6.2ThreadPoolExecutor294
5.6.3调度器ScheduleThreadPoolExecutor306
5.7总结:编写并发程序要注意些什么317
5.7.1锁粒度317
5.7.2死锁321
5.7.3“坑”很多323
5.7.4并发效率高329
5.8其他的并发编程知识330
5.8.1ShutdownHook(钩子线程)330
5.8.2Future332
5.8.3异步并不等价于多线程333
第6章好的程序员应当知道数据库基本原理335
6.1开发人员为什么要知道数据库原理335
6.2从开发人员角度看数据库原理337
6.2.1实例与存储338
6.2.2数据库基本原理339
6.2.3索引基本原理348
6.2.4数据库主从基本原理354
6.2.5我们经常相信的那些经验354
6.3从程序员角度看数据库优化方法355
6.3.1不同领域的SQL区别355
6.3.2执行计划356
6.3.3SQL逻辑的例子365
6.3.4模型结构设计的优化366
6.3.5临时表367
6.3.6分页知识补充368
6.3.7计算count值369
6.3.8分布式事务探讨369
6.3.9其他371
6.4学会基本的性能诊断372
6.4.1进入云数据库时代372
6.4.2从程序员角度关注的数据库诊断信息373
6.5数风流存储,还看今朝373

第2篇源码篇

第7章源码基础380
7.1为何会出现框架380
7.2阅读框架前的技术储备384
7.2.1反射基础知识384
7.2.2AOP基础390
7.2.3ORM基础395
7.2.4Annotation与配置文件398
第8章部分BC源码讲解403
8.1BC通用接口规范403
8.2BCDriver注册404
8.3创建Connection411
8.4SQL执行及处理417
8.4.1创建Statement417
8.4.2Batch设置批处理419
8.4.3fetchSize与maxRows424
8.4.4setQueryTimeout与cancel429
第9章部分Spring源码讲解433
9.1SpringMVC433
9.1.1Spring加载433
9.1.2SpringMVC处理一个简单请求443
9.2Spring事务管理器447
9.2.1BC事务的基本思想447
9.2.2Spring事务管理器的基本架构448
9.2.3Spring如何保存Connection449
9.2.4Spring如何保证程序中多次获取到的连接是同一个451
9.3思考:自己做框架有眉目了454
0章看源码的一些总结457
10.1高手看API的能力457
10.2通过源码能否量化性能与稳定性461
10.3思考相似方案和技术的优缺点463
10.4明确场景和业务,不做技术控464
10.4.1谈谈技术控的那些事464
10.4.2明确业务背景的例子466
10.5哥对框架的浅析468
10.5.1框架由来的一个补充468
10.5.2开源框架与扩展469
10.5.3框架与解决问题473
10.6学海无涯,心境无限474

   编辑推荐

   文摘

   序言