《Java自学宝典》PDF下载

  • 购买积分:19 如何计算积分?
  • 作  者:黑马程序员编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2017
  • ISBN:9787302475415
  • 页数:679 页
图书介绍:本书讲解了整个Java学习体系中的五部分知识,其中包括Java基础,JavaWeb,MySQL,SSH,项目实战。从基础入手,通过通俗易懂的语言描述知识点,并对案例进入深入分析,然后逐渐进入到JavaWeb部分,SSH框架部分,最后通过一个学生信息管理系统对整个知识体系进行融会贯通,达到学用结合的目的。

第1章 Java开发入门 1

1.1 Java概述 1

1.2 JDK的使用 2

1.2.1 JDK的安装 2

1.2.2 JDK的目录介绍 2

1.3 环境变量 4

1.3.1 path环境变量 4

1.3.2 classpath环境变量 5

1.4 第一个Java程序 6

1.4.1 编写第一个Java程序 6

1.4.2 Java程序的运行机制 7

1.5 Eclipse的安装与使用 7

1.5.1 Eclipse的安装与启动 8

1.5.2 Eclipse进行程序开发 9

第2章 Java编程基础 14

2.1 Java的基本语法 14

2.1.1 Java代码的基本格式 14

2.1.2 Java中的注释 14

2.1.3 Java中的标识符 15

2.1.4 Java中的关键字 15

2.2 Java中的变量 16

2.2.1 变量的定义 16

2.2.2 变量的数据类型 16

2.2.3 变量的类型转换 17

2.2.4 变量的作用域 19

2.3 Java中的常量 19

2.4 Java中的运算符 20

2.4.1 算术运算符 20

2.4.2 赋值运算符 21

2.4.3 比较运算符 22

2.4.4 逻辑运算符 22

2.4.5 运算符的优先级 24

2.5 选择结构语句 24

2.5.1 if条件语句 24

2.5.2 switch条件语句 27

2.6 循环结构语句 29

2.6.1 while循环语句 29

2.6.2 do...while循环语句 30

2.6.3 for循环语句 31

2.6.4 循环嵌套 32

2.6.5 跳转语句 33

2.7 方法 34

2.7.1 方法的概念 34

2.7.2 方法的重载 35

2.8 数组 37

2.8.1 数组的定义 37

2.8.2 数组的常见操作 38

2.8.3 Arrays工具类 41

2.9 String类和StringBuffer类 42

2.9.1 String类 42

2.9.2 StringBuffer类 44

2.10 包装类 46

第3章 面向对象 47

3.1 面向对象的概念和特征 47

3.2 类与对象 47

3.2.1 类与对象的关系 47

3.2.2 类的定义 48

3.2.3 对象的创建 48

3.2.4 类的封装 49

3.3 构造方法 51

3.3.1 构造方法的定义 51

3.3.2 构造方法的重载 53

3.4 this关键字 54

3.5 static关键字 56

3.5.1 静态变量 56

3.5.2 静态方法 57

3.5.3 静态代码块 58

3.6 类的继承 59

3.6.1 继承的概念 59

3.6.2 重写父类方法 59

3.6.3 super关键字 61

3.7 抽象类和接口 63

3.7.1 抽象类 63

3.7.2 接口 65

3.8 多态 67

3.8.1 多态概述 67

3.8.2 对象的类型转换 69

3.8.3 匿名内部类 71

3.9 异常 72

3.9.1 异常的概念 72

3.9.2 常见的异常类 73

3.9.3 try...catch和finally 74

3.9.4 throws关键字 75

3.10 访问控制 77

第4章 集合类 78

4.1 初识集合 78

4.1.1 集合概述 78

4.1.2 Collection接口简介 79

4.2 List接口 79

4.2.1 List接口简介 79

4.2.2 ArrayList集合 80

4.2.3 Iterator接口 81

4.2.4 foreach循环 82

4.2.5 泛型 83

4.3 Set接口 84

4.3.1 Set接口简介 84

4.3.2 HashSet集合 84

4.4 Map接口 85

4.4.1 Map接口简介 85

4.4.2 HashMap集合 86

4.4.3 Properties集合 87

第5章 输入/输出 89

5.1 I/O流概述 89

5.2 字节流 89

5.2.1 字节流的概念 89

5.2.2 字节流的读/写操作 91

5.2.3 文件的复制 93

5.2.4 字节流的缓冲区 94

5.2.5 字节缓冲流 95

5.3 字符流 96

5.3.1 字符流的概念 96

5.3.2 字符流的读/写操作 97

5.3.3 字符缓冲流 98

5.3.4 转换流 99

5.4 File类 100

5.4.1 File类的常用方法 100

5.4.2 遍历目录下的文件 101

5.4.3 删除文件及目录 102

第6章 多线程 103

6.1 线程概述 103

6.2 线程的创建 103

6.2.1 继承Thread类 103

6.2.2 实现Runnable接口 105

6.2.3 Thread类和Runnable接口对比分析 106

6.3 线程的状态和转换 109

6.4 多线程同步 110

6.4.1 线程安全 110

6.4.2 同步代码块 112

6.4.3 同步方法 113

第7章 网页开发基础 115

7.1 HTML技术 115

7.1.1 HTML简介 115

7.1.2 单标记和双标记 117

7.1.3 文本控制与文本样式标记 117

7.1.4 图像标记 118

7.1.5 表格标记 119

7.1.6 表单标记 121

7.1.7 列表标记和超链接标记 124

7.1.8 <div>标记 126

7.2 CSS技术 127

7.2.1 CSS简介 127

7.2.2 CSS样式的引用方式 127

7.2.3 CSS选择器和常用属性 130

7.3 JavaScript基础 133

7.3.1 DOM相关知识 133

7.3.2 JavaScript概述 134

7.3.3 JavaScript的使用 139

第8章 Java Web概述 142

8.1 Web开发的相关知识 142

8.1.1 C/S与B/S体系结构 142

8.1.2 Web资源 143

8.2 XML基础 144

8.2.1 XML概述 144

8.2.2 XML语法 145

8.2.3 DTD约束 146

8.2.4 Schema约束 149

8.3 HTTP 152

8.3.1 HTTP概述 152

8.3.2 HTTP请求消息 153

8.3.3 HTTP响应消息 156

8.4 Tomcat 158

8.4.1 Tomcat简介 158

8.4.2 Tomcat的安装和启动 158

8.4.3 Tomcat中的Web应用 159

8.4.4 在Eclipse中配置Tomcat 161

第9章 Servlet基础 165

9.1 Servlet概述 165

9.2 Servlet开发入门 166

9.2.1 Servlet接口及其实现类 166

9.2.2 实现第一个Servlet程序 167

9.2.3 Servlet的生命周期 172

9.3 Servlet虚拟路径映射的配置 173

9.3.1 Servlet的多重映射 173

9.3.2 Servlet映射路径中使用通配符 174

9.3.3 默认Servlet 175

9.4 ServletConfig和ServletContext 176

9.4.1 ServletConfig接口 176

9.4.2 ServletContext接口 178

第10章 请求和响应 182

10.1 请求和响应概述 182

10.2 HttpServletRequest对象 183

10.2.1 获取请求行信息的相关方法 183

10.2.2 获取请求消息头的相关方法 185

10.3 HttpServletRequest应用 186

10.3.1 获取请求参数 186

10.3.2 通过Request对象传递数据 189

10.3.3 解决请求参数的中文乱码问题 190

10.4 RequestDispatcher对象的应用 191

10.4.1 RequestDispatcher接口 191

10.4.2 请求转发 191

10.5 HttpServletResponse对象 193

10.5.1 发送状态码相关的方法 193

10.5.2 发送响应消息头相关的方法 194

10.5.3 发送响应消息体相关的方法 195

10.6 HttpServletResponse应用 195

10.6.1 解决中文输出乱码问题 195

10.6.2 实现请求重定向 197

第11章 JSP技术 201

11.1 JSP概述 201

11.1.1 JSP 201

11.1.2 第一个JSP文件的创建 201

11.1.3 JSP运行原理 203

11.2 JSP的脚本元素和注释 204

11.2.1 JSP脚本元素 204

11.2.2 JSP注释 206

11.3 JSP指令 207

11.3.1 page指令 207

11.3.2 include指令 208

11.4 JSP隐式对象 209

11.4.1 隐式对象的概述 209

11.4.2 out对象 210

11.4.3 pageContext对象 211

11.4.4 exception对象 213

11.5 JSP动作元素 215

11.5.1 <jsp:include>动作元素 215

11.5.2 <jsp:forward>动作元素 215

11.6 JSP开发模型 217

11.6.1 JavaBean 217

11.6.2 JSP设计模式 218

第12章 Cookie和Session 221

12.1 Cookie对象 221

12.1.1 Cookie 221

12.1.2 Cookie API 222

12.1.3 显示用户上次访问的时间 223

12.2 Session对象 225

12.2.1 Session 225

12.2.2 HttpSession API 226

12.2.3 Session超时管理 227

12.2.4 实现用户登录 228

第13章 EL表达式和JSTL 238

13.1 EL表达式 238

13.1.1 EL概述 238

13.1.2 EL中的标识符 238

13.1.3 EL中的保留字 239

13.1.4 EL中的变量 239

13.1.5 EL中的常量 239

13.1.6 EL中的运算符 240

13.1.7 EL隐式对象 243

13.2 JSTL 248

13.2.1 JSTL 248

13.2.2 JSTL的配置和测试 249

13.2.3 JSTL中的Core标签库 250

第14章 Servlet高级 257

14.1 Filter 257

14.1.1 Filter概述 257

14.1.2 实现第一个Filter程序 258

14.1.3 Filter映射 261

14.1.4 Filter链 264

14.1.5 FilterConfig接口 267

14.1.6 统一全站编码 269

14.2 Listener 273

14.2.1 Servlet事件监听器概述 273

14.2.2 统计当前在线人数 274

第15章 jQuery框架 278

15.1 jQuery概述 278

15.1.1 jQuery 278

15.1.2 jQuery的下载与使用 278

15.2 jQuery选择器 280

15.2.1 基本选择器 280

15.2.2 层次选择器 282

15.2.3 过滤选择器 284

15.2.4 表单选择器 293

15.3 jQuery的事件处理 296

15.3.1 常用事件 296

15.3.2 页面加载事件 296

15.3.3 事件绑定与切换 297

15.4 jQuery的Ajax操作 299

15.4.1 Ajax概述 299

15.4.2 jQuery的Ajax操作 300

第16章 MySQL和JDBC 306

16.1 数据库基础知识 306

16.1.1 数据库概述 306

16.1.2 MySQL的安装与配置 306

16.1.3 MySQL的图形化工具 307

16.2 MySQL的基本使用 309

16.2.1 数据库的基本操作 309

16.2.2 表的基本操作 310

16.2.3 数据的基本操作 313

16.2.4 单表查询 314

16.3 MySQL的多表操作 320

16.3.1 外键约束 320

16.3.2 内连接 322

16.3.3 外连接 323

16.3.4 子查询 324

16.4 JDBC技术简介 326

16.5 JDBC常用API 327

16.5.1 Driver接口 327

16.5.2 DriverManager类 327

16.5.3 Connection接口 327

16.5.4 Statement接口 327

16.5.5 PreparedStatement接口 328

16.5.6 ResultSet接口 329

16.6 实现第一个JDBC程序 329

16.7 数据库连接池 334

16.7.1 数据库连接池 334

16.7.2 DataSource接口 334

16.7.3 C3P0数据源 335

第17章 Struts2框架入门 338

17.1 Struts2简介 338

17.1.1 Struts2概述 338

17.1.2 Struts2的下载 339

17.1.3 Struts2的使用 339

17.2 Struts2入门 340

17.2.1 第一个Struts2程序 340

17.2.2 Struts2的执行流程分析 345

第18章 Struts2的核心配置 348

18.1 struts.xml文件的配置 348

18.1.1 struts.xml文件 348

18.1.2 常量配置 349

18.1.3 包配置 350

18.1.4 包含配置 350

18.2 Action的配置 351

18.2.1 实现Action控制类 351

18.2.2 配置Action 352

18.2.3 使用通配符 353

18.3 Action访问Servlet API 354

18.3.1 通过ActionContext访问 354

18.3.2 通过ServletActionContext访问 358

18.4 Action处理请求参数 360

18.4.1 属性驱动 360

18.4.2 模型驱动 364

18.5 Result结果类型 365

18.5.1 配置Result 365

18.5.2 预定义的结果类型 366

18.5.3 dispatcher结果类型 367

18.5.4 redirect结果类型 368

第19章 Struts2的拦截器 370

19.1 拦截器简介 370

19.1.1 拦截器概述 370

19.1.2 拦截器的配置 371

19.2 Struts2的内建拦截器 373

19.2.1 内建拦截器的介绍 373

19.2.2 内建拦截器的配置 375

19.3 自定义拦截器 376

19.3.1 实现自定义拦截器 376

19.3.2 使用拦截器实现权限控制 377

第20章 Struts2的标签库 385

20.1 Struts2标签库概述 385

20.1.1 Struts2标签库的分类 385

20.1.2 Struts2标签的使用 386

20.2 Struts2的控制标签 386

20.2.1 <s:if>、<s:elseif>、<s:else>标签 386

20.2.2 <s:iterator>标签 386

20.3 Struts2的数据标签 389

20.3.1 <s:property>标签 389

20.3.2 <s:a>标签 390

20.3.3 <s:debug>标签 390

20.3.4 <s:include>标签 390

20.3.5 <s:param> 392

20.4 Struts2的模板和主题 392

20.5 Struts2的表单标签 393

20.5.1 表单标签的公共属性 393

20.5.2 <s:form>标签 394

20.5.3 <s:textfield>和<s:textarea>标签 394

20.5.4 <s:password>标签 394

20.5.5 <s:radio>标签 395

20.5.6 <s:reset>标签 395

20.5.7 <s:submit>标签 396

20.5.8 <s:checkboxlist>标签 397

20.5.9 <s:select>标签 398

20.5.10 <s:optgroup>标签 399

20.5.11 <s:file>标签 400

20.5.12 <s:hidden>标签 400

20.6 Struts2的非表单标签 401

第21章 Struts2的OGNL和值栈 403

21.1 OGNL 403

21.1.1 OGNL概述 403

21.1.2 OGNL表达式 404

21.1.3 使用OGNL访问对象方法和静态方法 408

21.2 值栈 412

21.2.1 值栈的意义 412

21.2.2 值栈的内部结构 413

21.2.3 值栈在开发中的应用 415

21.2.4 通过EL访问值栈的数据 420

第22章 Struts2的文件上传和下载 421

22.1 文件上传 421

22.1.1 文件上传的概述 421

22.1.2 单个文件上传 423

22.1.3 限制文件的大小和类型 426

22.2 文件下载 428

22.2.1 文件下载的概述 428

22.2.2 文件下载 429

22.2.3 中文文件的下载 431

第23章 Hibernate框架入门 435

23.1 Hibernate概述 435

23.2 Hibernate下载和目录介绍 435

23.3 第一个Hibernate程序 437

23.3.1 编写Hibernate程序 437

23.3.2 测试Hibernate程序 441

23.4 Hibernate的运行机制 447

23.5 Hibernate的核心文件 448

23.5.1 *.hbm.xml映射文件 448

23.5.2 hibernate.cfg.xml配置文件 452

23.6 Hibernate的核心API 454

23.6.1 Configuration 454

23.6.2 SessionFactory 454

23.6.3 Session 455

23.6.4 Transaction 456

23.6.5 Query 457

23.6.6 Criteria 459

第24章 Hibernate的持久化对象状态和一级缓存 462

24.1 Hibernate持久化对象的状态 462

24.1.1 持久化对象的状态及状态转换 462

24.1.2 演示持久化对象的状态转换 463

24.2 Hibernate的一级缓存 467

24.2.1 一级缓存 467

24.2.2 Hibernate的快照技术 469

24.2.3 一级缓存常用操作 470

第25章 Hibernate的关联关系映射 474

25.1 关联关系映射 474

25.1.1 三种关联关系 474

25.1.2 一对多关联关系映射 475

25.1.3 多对多关联关系映射 481

25.2 关联关系中的反转与级联 485

25.2.1 反转操作 485

25.2.2 级联操作 487

第26章 Hibernate的检索方式 493

26.1 Hibernate检索方式的概述 493

26.1.1 导航对象图检索方式 493

26.1.2 OID检索方式 493

26.1.3 HQL检索方式 493

26.1.4 QBC检索方式 494

26.1.5 本地SQL检索方式 495

26.2 HQL检索 495

26.2.1 指定别名 495

26.2.2 投影查询 496

26.2.3 动态实例查询 497

26.2.4 条件查询 498

26.2.5 分页查询 501

26.3 QBC检索 502

26.3.1 组合查询 502

26.3.2 分页查询 504

第27章 Hibernate的事务处理和二级缓存 506

27.1 事务 506

27.1.1 事务的特性 506

27.1.2 事务的隔离级别 506

27.2 Hibernate的事务处理 507

27.2.1 事务的配置 507

27.2.2 悲观锁 508

27.2.3 乐观锁 514

27.3 Hibernate的二级缓存 516

27.3.1 二级缓存的原理和分类 516

27.3.2 二级缓存的并发访问策略 517

27.3.3 二级缓存的常用插件 518

27.3.4 二级缓存的配置和使用 518

第28章 Spring框架入门 522

28.1 Spring基本知识 522

28.1.1 Spring框架概述 522

28.1.2 Spring的体系结构 523

28.1.3 Spring的下载及目录结构 524

28.2 Spring的IoC容器 526

28.2.1 BeanFactory 526

28.2.2 ApplicationContext 526

28.3 编写第一个Spring程序 527

28.4 依赖注入 530

第29章 Spring中的Bean 533

29.1 Bean的配置 533

29.2 Bean的实例化 534

29.2.1 构造器实例化 534

29.2.2 静态工厂方式实例化 536

29.2.3 实例工厂方式实例化 538

29.3 Bean的作用域 540

29.3.1 作用域的种类 540

29.3.2 singleton作用域 540

29.3.3 prototype作用域 541

29.4 Bean的生命周期 542

29.5 Bean的装配方式 543

29.5.1 基于XML的装配 543

29.5.2 基于Annotation的装配 546

29.5.3 自动装配 550

第30章 面向切面编程(Spring AOP) 552

30.1 Spring AOP概述 552

30.2 手动代理 552

30.2.1 JDK动态代理 553

30.2.2 CGLIB代理 556

30.3 声明式工厂Bean 559

30.3.1 Spring通知类型 559

30.3.2 声明式Spring AOP 559

30.4 AspectJ 562

30.4.1 基于XML的声明式 562

30.4.2 基于Annotation的声明式 566

第31章 Spring事务管理 571

31.1 Spring JDBCTemplate 571

31.2 Spring事务管理的三个核心接口 573

31.3 Spring声明式事务管理 574

31.3.1 基于XML方式 574

31.3.2 基于Annotation方式 580

第32章 SSH框架整合 584

32.1 准备整合环境 584

32.1.1 数据库环境 584

32.1.2 配置Struts2环境 584

32.1.3 配置Spring环境 586

32.1.4 配置Hibernate环境 588

32.2 Spring与Hibernate整合 590

32.3 Spring与Struts2整合 594

32.4 测试框架分层的整合 597

32.5 验证事务是否生效 600

32.5.1 测试事务只读方法 600

32.5.2 测试事务回滚 602

第33章 学生信息管理系统 603

33.1 系统概述 603

33.1.1 系统的功能模块 603

33.1.2 系统架构设计 604

33.2 数据库设计 605

33.3 系统环境搭建 611

33.4 员工登录模块 618

33.4.1 系统登录 618

33.4.2 实现登录拦截 628

33.4.3 注销用户 630

33.5 人力资源部模块 630

33.5.1 部门管理 631

33.5.2 职务管理 639

33.5.3 员工管理 649

33.6 教学部模块 656

33.6.1 课程类别 656

33.6.2 班级管理 664