本书从入门学习者的角度出发,通过通俗易懂的语言、丰富典型的实例,循序渐进地使读者在实践中学习Java编程知识,并提升自己的实际开发能力。全书共有17章,具体内容包括初识Java、Java语言基础、运算符与流程控制、面向对象基础、继承与多态、接口、异常处理、常用类、JSP基本语法、JSP内置对象、Servlet技术、过滤器和监听器、Struts2框架、Hibernate技术、Spring框架、Spring与Struts2、Hibernate框架的整合和Spring与SpringMVC、MyBatis框架的整合。书中的大部分知识都结合具体实例进行介绍,涉及的程序代码也大多给出了详细的注释,可以使读者轻松领会Java程序开发的精髓,快速提高开发技能。
在市面上,Java、Java Web 和框架这3 个方面的知识通常由3 本书分别进行讲解。而本书涵盖了这3
个方面的知识,虽然无法像单独成册的书籍那样把知识介绍得非常详尽,但是能够把关键的、核心的内容直观地展现出来,并且能够把在日常开发中经常需要用到的编程思维和编程方法传递给读者,使读者打破知识点的局限性,知晓如何去思考,如何去编程。也就是说,本书传递给读者的是一种编程思维,而非Java
领域内的 “条条框框”。有了编程思维,就等于有了编写代码的方向;有了编写代码的方向,在编写代码过程中遇到的 “磕磕绊绊” 就能被一一化解。
本书内容
本书涵盖Java、Java Web 和框架这3 个方面的知识。全书共包含17 章内容,大体结构如下。
本书特点
●由浅入深,循序渐进。本书以初、中级程序员为对象,从Java 基础讲起,然后初步涉及Java Web,最后讲解框架等知识。本书在讲解过程中步骤详尽,使读者在阅读时一目了然,从而快速掌握书中传递的思维。
●语音视频,讲解详尽。本书基础知识部分提供了配套教学视频,使读者可以根据这些视频快速地学习,感受编程的快乐和成就感,增强进一步学习的信心,从而迅速成为编程高手。
●实例典型,轻松易学。通过实例学习是最好的学习方式。本书在讲解知识时,通过多个实例,透彻、详尽地讲述了实际开发中所需要的各类知识。另外,为了便于读者阅读程序代码,快速学习编程技能,本书的大部分代码都提供了注释。
●精彩栏目,贴心提醒。本书根据需要在各章安排了很多学习笔记的小栏目,使读者可以在学习过程中轻松理解相关知识点及概念,快速掌握相应技术的应用技巧。
明日科技是一家管理规范、研发能力强的互联网公司,同时从事图书开发。人员规模50人明日的优势:·明日科技很注重员工经验交流和开发经验整理、共享,内部积累文档已经整理得非常完善,代码讲解非常细致,目前已经出版图书300多个品种,占据主流语言图书销售排行的前列。·案例完全来自本企业的项目,紧跟时代脚步,内容质量上无可挑剔。·明日科技配套资源丰富,提供从视频讲解到快学快用的整体配套资源,同时技术服务做的也比较完善。
封面
前折页
内容简介
版权信息
前言
第一篇 Java基础
第1章 初识Java
1.1 Java 简介
1.2 Java 的版本
1.3 Java API 文档
第2章 Java语言基础
2.1 标识符和关键字
2.1.1 Unicode 字符集
2.1.2 关键字
2.1.3 标识符
2.2 常量与变量
2.2.1 常量的概念及使用要点
2.2.2 变量的概念及使用要点
2.3 数据类型
2.3.1 基本数据类型
2.3.2 引用数据类型
2.3.3 基本类型与引用类型的区别
2.3.4 数据类型之间的相互转换
2.4 数组
2.4.1 声明数组
2.4.2 创建数组
2.4.3 初始化数组
2.4.4 数组长度
2.4.5 使用数组元素
第3章 运算符与流程控制
3.1 运算符
3.1.1 赋值运算符
3.1.2 算术运算符
3.1.3 关系运算符
3.1.4 逻辑运算符
3.1.5 位运算符
3.1.6 对象运算符
3.1.7 其他运算符
3.1.8 运算符的优先级及结合性
3.2 if 语句
3.2.1 简单的if 条件语句
3.2.2 if…else 条件语句
3.2.3 if…else if 多分支语句
3.2.4 if 语句的嵌套
3.3 switch 多分支语句
3.4 if 语句和switch 语句的区别
3.5 循环语句
3.5.1 for 循环语句
3.5.2 while 循环语句
3.5.3 do…while 循环语句
3.5.4 循环的嵌套
3.6 跳转语句
3.6.1 break 跳转语句
3.6.2 continue 跳转语句
3.6.3 return 跳转语句
第4章 面向对象基础
4.1 面向对象程序设计
4.1.1 面向对象程序设计概述
4.1.2 面向对象程序设计的特点
4.2 类
4.2.1 定义类
4.2.2 成员变量和局部变量
4.2.3 成员方法
4.2.4 注意事项
4.2.5 类的UML 图
4.3 构造方法与对象
4.3.1 构造方法的概念及用途
4.3.2 对象的概述
4.3.3 对象的创建
4.3.4 对象的使用
4.3.5 对象的销毁
4.4 类与程序的基本结构
4.5 参数传值
4.5.1 传值机制
4.5.2 基本数据类型的参数传值
4.5.3 引用类型参数的传值
4.6 对象的组合
4.6.1 组合与复用
4.6.2 类的关联关系和依赖关系的UML 图
4.7 实例方法与类方法
4.7.1 实例方法与类方法的定义
4.7.2 实例方法与类方法的区别
4.8 关键字this
4.9 包
4.9.1 包的概念
4.9.2 创建包
4.9.3 使用包中的类
4.10 访问权限
第5章 继承与多态
5.1 继承简介
5.1.1 继承的概念
5.1.2 子类对象的创建
5.1.3 继承的使用原则
5.1.4 关键字super
5.2 子类的继承
5.3 多态
5.3.1 方法的重载
5.3.2 避免重载出现的歧义
5.3.3 方法的覆盖
5.3.4 向上转型
5.4 抽象类
5.4.1 抽象类和抽象方法
5.4.2 抽象类和抽象方法的规则
5.4.3 抽象类的作用
5.5 关键字final
5.5.1 final 变量
5.5.2 final 类
5.5.3 final 方法
5.6 内部类
第6章 接口
6.1 接口简介
6.2 接口的定义
6.3 接口的继承
6.4 接口的实现
6.5 接口与抽象类
6.6 接口的UML 图
6.7 接口回调
6.8 接口与多态
6.9 接口参数
6.10 面向接口编程
第7章 异常处理
7.1 异常概述
7.2 异常的分类
7.2.1 系统错误——Error
7.2.2 异常——Exception
7.3 捕捉并处理异常
7.3.1 try…catch 代码块
7.3.2 finally 代码块
7.4 在方法中抛出异常
7.4.1 使用关键字throws 抛出异常
7.4.2 使用关键字throw 抛出异常
7.5 自定义异常
7.6 异常处理的使用原则
第8章 常用类
8.1 String 类
8.1.1 创建字符串对象
8.1.2 连接字符串
8.1.3 字符串操作
8.1.4 格式化字符串
8.1.5 对象的字符串表示
8.2 StringBuffer 类
8.2.1 StringBuffer 对象的创建
8.2.2 StringBuffer 类的常用方法
8.3 日期的格式化
8.3.1 Date 类
8.3.2 格式化日期和时间
8.4 Math 类和Random 类
8.5 包装类
8.5.1 Integer 类
8.5.2 Boolean 类
8.5.3 Byte 类
8.5.4 Character 类
8.5.5 Double 类
8.5.6 Number 类
第二篇 Java Web
第9章 JSP基本语法
9.1 了解JSP 页面
9.2 指令标识
9.2.1 page 指令
9.2.2 include 指令
9.2.3 taglib 指令
9.3 脚本标识
9.3.1 JSP 表达式(Expression)
9.3.2 声明标识(Declaration)
9.3.3 代码片段
9.4 注释
9.4.1 HTML 中的注释
9.4.2 带有JSP 表达式的注释
9.4.3 隐藏注释
9.4.4 动态注释
9.5 动作标识
9.5.1 包含文件标识<jsp:include>
9.5.2 请求转发标识<jsp:forward>
9.5.3 传递参数标识<jsp:param>
第10章 JSP内置对象
10.1 JSP 内置对象的概述
10.2 request 对象
10.2.1 访问请求参数
10.2.2 在作用域中管理属性
10.2.3 获取cookie
10.2.4 解决中文乱码
10.2.5 获取客户端信息
10.2.6 显示国际化信息
10.3 response 对象
10.3.1 重定向网页
10.3.2 处理HTTP 文件头
10.3.3 设置输出缓冲
10.4 session 对象
10.4.1 创建及获取客户的会话
10.4.2 从会话中移动指定的绑定对象
10.4.3 销毁session 对象
10.4.4 会话超时的管理
10.4.5 session 对象的应用
10.5 application 对象
10.5.1 访问应用程序初始化参数
10.5.2 管理应用程序环境属性
10.6 out 对象
10.6.1 向客户端浏览器输出信息
10.6.2 管理响应缓冲
10.7 其他内置对象
10.7.1 获取页面上下文的pageContext 对象
10.7.2 读取web.xml 文件配置信息的config 对象
10.7.3 应答或请求的page 对象
10.7.4 获取异常信息的exception 对象
第11章 Servlet技术
11.1 Servlet 基础
11.1.1 Servlet 结构体系
11.1.2 Servlet 技术特点
11.1.3 Servlet 与JSP 的区别
11.1.4 Servlet 代码结构
11.2 Servlet API 编程常用接口和类
11.2.1 Servlet 接口
11.2.2 ServletConfig 接口
11.2.3 HttpServletRequest 接口
11.2.4 HttpServletResponse 接口
11.2.5 GenericServlet 类
11.2.6 HttpServlet 类
11.3 Servlet 开发
11.3.1 Servlet 创建
11.3.2 Servlet 2.0 配置方式
第12章 过滤器和监听器
12.1 Servlet 过滤器
12.1.1 什么是过滤器
12.1.2 过滤器对象
12.1.3 过滤器对象的创建与配置
12.1.4 字符编码过滤器
12.2 Servlet 监听器
12.2.1 Servlet 监听器简介
12.2.2 Servlet 监听器的原理
12.2.3 Servlet 上下文监听
12.2.4 HTTP 会话监听
12.2.5 Servlet 请求监听
12.2.6 Servlet 监听器统计在线人数
第三篇 框架
第13章 Struts2框架
13.1 MVC 设计模式
13.2 Struts2 概述
13.2.1 Struts2 的产生
13.2.2 Struts2 的结构体系
13.3 Struts2 入门
13.3.1 获取与配置Struts2
13.3.2 创建第一个Struts2 程序
13.4 Action 对象
13.4.1 认识Action 对象
13.4.2 请求参数的注入原理
13.4.3 Struts2 的基本流程
13.4.4 动态Action
13.4.5 应用动态Action
13.5 Struts2 的配置文件
13.5.1 Struts2 的配置文件类型
13.5.2 配置Struts2 包
13.5.3 配置名称空间
13.5.4 Action 对象的相关配置
13.5.5 使用通配符简化配置
13.5.6 配置返回视图
13.6 Struts2 的标签库
13.6.1 数据标签
13.6.2 控制标签
13.6.3 表单标签
13.7 Struts2 的开发模式
13.7.1 实现与Servlet API 的交互
13.7.2 域模型DomainModel
13.7.3 驱动模型ModelDriven
13.8 Struts2 的拦截器
13.8.1 拦截器概述
13.8.2 拦截器API
13.8.3 使用拦截器
13.9 数据验证机制
13.9.1 手动验证
13.9.2 验证文件的命名规则
13.9.3 验证文件的编写风格
第14章 Hibernate技术
14.1 初识Hibernate
14.1.1 理解ORM 原理
14.1.2 Hibernate 简介
14.2 Hibernate 入门
14.2.1 获取Hibernate
14.2.2 Hibernate 配置文件
14.2.3 了解并编写接久化类
14.2.4 Hibernate 映射
14.2.5 Hibernate 主键策略
14.3 Hibernate 数据持久化
14.3.1 Hibernate 实例状态
14.3.2 Hibernate 初始化类
14.3.3 保存数据
14.3.4 查询数据
14.3.5 删除数据
14.3.6 修改数据
14.3.7 延迟加载
14.4 HQL 检索方式
14.4.1 了解HQL 查询语言
14.4.2 实体对象查询
14.4.3 条件查询
14.4.4 HQL 参数绑定机制
14.4.5 排序查询
14.4.6 聚合函数的应用
14.4.7 分组方法
14.4.8 联合查询
14.4.9 子查询
第15章 Spring框架
15.1 Spring 概述
15.1.1 Spring 组成
15.1.2 下载Spring
15.1.3 配置Spring
15.1.4 使用BeanFactory 类
15.1.5 使用ApplicationContext 容器
15.2 Spring IoC
15.2.1 控制反转与依赖注入
15.2.2 配置Bean
15.2.3 Setter 注入
15.2.4 构造器注入
15.2.5 引用其他Bean
15.2.6 创建匿名内部类JavaBean
15.3 AOP 概述
15.3.1 AOP 术语
15.3.2 AOP 的简单实现
15.4 Spring 的切入点
15.4.1 静态与动态切入点
15.4.2 深入静态切入点
15.4.3 深入切入点底层
15.4.4 Spring 中的其他切入点
15.5 Aspect 对AOP 的支持
15.5.1 Aspect 概述
15.5.2 Spring 中的Aspect
15.5.3 DefaultPointcutAdvisor 切入点配置器
15.5.4 NameMatchMethodPointcutAdvisor 切入点配置器
15.6 Spring 持久化
15.6.1 DAO 模式
15.6.2 Spring 的DAO 理念
15.6.3 事务管理
15.6.4 使用JdbcTemplate 类操作数据库
15.6.5 与Hibernate 整合
15.6.6 整合Spring 与Hibernate 在tb_user 表中添加信息
第16章 Spring与Struts2、Hibernate框架的整合
16.1 框架整合的优势
16.2 SSH2 框架结构分析
16.3 构建SSH2 框架
16.3.1 配置web.xml 文件
16.3.2 配置Spring
16.3.3 配置Struts2
16.3.4 配置Hibernate
16.4 实现MVC 编码
16.4.1 JSP 完成视图层
16.4.2 Struts2 完成控制层
16.4.3 Hibernate 完成数据封装
16.5 SSH2 实例程序部署
第17章 Spring与SpringMVC、MyBatis框架的整合
17.1 什么是SSM 框架
17.1.1 MyBatis 简介
17.1.2 SpringMVC 简介
17.2 为什么使用SSM 框架
17.3 如何使用SSM 框架
17.3.1 搭建框架环境
17.3.2 创建实体类
17.3.3 编写接久层
17.3.4 编写业务层
17.3.5 创建控制层
17.3.6 配置SpringMVC
17.3.7 实现控制层
17.3.8 JSP 页面展示
17.4 一个完整的SSM 应用
封底
Java 是一种高级的、面向对象的程序设计语言。使用Java 编写的程序可以在各种不同的系统中运行,从普通的个人计算机到智能手机、网络服务器等都有使用Java 开发的程序。这让Java成为当今编程领域中最受欢迎的开发语言之一。
Java
是于1995 年由Sun 公司推出的一种极富创造力的、面向对象的程序设计语言,它是由有Java 之父之称的Sun
研究院院士詹姆斯·戈士林博士亲手设计而成的,并且 詹姆斯·戈士林博士还完成了Java 技术的原始编译器和虚拟机的设计。Java
最初的名字是OAK,在1995 年被重命名为Java,并正式发布。
Java 是一种通过解释方式来执行的语言,其语法规则和C++
类似。同时,Java 是一种跨平台的程序设计语言。使用Java 编写的程序,可以运行在任何平台和设备上,如个人计算机、MAC
苹果计算机、各种微处理器硬件平台,以及Windows、UNIX、OS/2、macOS 等系统平台,真正实现了 “一次编写,到处运行”。Java
非常适用于企业网络和Internet 环境,并且已经成为Internet 中最具有影响力、最受欢迎的编程语言之一。