内容简介
本书主要介绍Java语言及其Web开发。全书共14章,前12章讲述了Java基础知识及部分常用的知识。第13章详细讲解了当前主流的数据库访问框架MyBatis。第14章讲述了Spring Boot开发框架,并且通过完整的示例程序讲述了如何应用Spring Boot开发Web应用。 本书可作为高等学校计算机、软件及相关专业本科高年级学生的教材或研究生的参考书,也可供从事计算机相关工作的工程技术人员参考。
目录
第1章 Java发展史与项目构建 1.1 Java版本发展 1.1.1 Java版本 1.1.2 EJB 1.1.3 K与JRE 1.1.4 JVM 1.1.5 JavaScfipt 1.2 集成开发环境 1.2.1 IDE的优势 1.2.2 STS安装 1.2.3 HelloWorld 1.2.4 Eclipse常用r/> 1.3 Java程序编译与运行 1.3.1 1.3.2 Java程序的发布形式 1.3.3 Java的main方法 1.3.4 Java程序的运行 1.3.5 运行参数 1.3.6 JVM内存回收机制 1.3.7 Java程序分析调测工具 1.4 Maven 1.4.1 Maven的配置文件 1.4.2 pom.xml 1.4.3 Maven执行 1.5 持续集成第2章 Java基本程序结构 2.1 数据类型 2.1.1 基本数据类型 2.1.2 String 2.1.3 运算符 2.1.4 数组 2.1.5 常量 2.2 控制流程 2.2.1 块作用域 2.2.2 条件语句 2.2.3 循环语句 2.2.4 switch 2.2.5 中断语句 2.2.6 try块第3章 类 3.1 类的定义 3.2 控制可见范围的修饰符 3.3 构造器 3.4 thir/> 3.5 final 3.6 static 3.7 参数传递 3.8 参数数量可变的参数传递第4章 继承与接口 4.1 继承 4.1.1 多态 4.1.2 抽象类 4.1.3 Object 4.2 接口 4.2.1 定义 4.2.2 接口增强 4.2.3 clone第5章 内部类与枚举 5.1 内部类 5.1.1 普通内部类 5.1.2 静态内部类 5.1.3 局部内部类 5.1.4 匿名内部类 5.1.5 内部类的特 5.2 lambda表达式 5.2.1 lambda表达式的作用域 5.2.2 函数式接口 5.2.3 forEach和方法引用 5.3 枚举 5.3.1 简单枚举的定义 5.3.2 带有构造器的枚举 5.3.3 绑定方法的枚举 5.3.4 枚举的values和toString第6章 泛型第7章 集合第8章 异常处理与多线程第9章 本地IO与远程通信第10章 数据库与数据流r/>第11章 注解第12章 反射与代理第13章 MyBatir/>第14章 Spring Boot参考文献
摘要与插图
;
第pan style="font-family:宋体">章。Java发展史与项目构建
pan style="font-family:宋体">.1; Java版本发展
Java的版本众多,生态圈相当繁杂。对于初学.1ava的人,如果不太了解生态圈中的主要脉络,则学往往会一头雾水。因此,要系统地学span>Java,有必要了解Java的轨迹以及与,Java相关的一些术语或工具。
pan style="font-family:宋体">.pan style="font-family:宋体">.1; JaVla版本
1996年pan style="font-family:宋体">月,Sun公司发布了Java的个开发工K.pan style="font-family:宋体">.0,这是,Java发展历程中的重要里程碑,标志着Java成为一种独立的开发工具。
1998年pan style="font-family:宋体">月到1999年6月,Sun公司发布了代Java(Java 2)的3个版本:.12ME(Java 2 Micro Edition,Java 2pan style="font-family:宋体">,应用于移动、无线及有限资源的环境;.J2SE(Java 2 Standard Edition,.1ava 2),应用于桌面环境:J2EE(Java 2 EnterpriseEdition,.Java 2),应用于基于.Java的应用服务器。:lava 2Java发展过程中重要的一个里程碑,标志着.Java的应用开始普及。
2004.年9月,J2SE pan style="font-family:宋体">.5发布,并成为Java语言发展的又一里程碑。为了表示该版本的重要,.12SE pan style="font-family:宋体">.5更名为Java SE 5.0(内部版本号为pan style="font-family:宋体">..5.0)。
2005年6月,在.JavaOne大会上,Sun公司发布了Java SE 6,对:lava的各种版行了更名,取消了其中的数字2,如J2EE更名为.Java EE,.12SE更名为.Java SE,.J2ME更名为.JavaME。
2006年pan style="font-family:宋体">月,.Java SE 6发布。
20pan style="font-family:宋体">年7月,.Java SE 7发布。
20pan style="font-family:宋体">年3月,Java SE 8发布。
20pan style="font-family:宋体">年7月,Java SE 9发布。
20pan style="font-family:宋体">年3月,Java SE pan style="font-family:宋体">发布。
20pan style="font-family:宋体">年9月,:lava SE pan style="font-family:宋体">发布。
通过以上Java版本的发布轨迹可以看出,.Java各版本经历了一段时间的混乱。时今日,通常的软件开发人员还会称Java 8为pan style="font-family:宋体">.8,这是因为开发人员K的版本来称呼,而.Java 8的K版本是pan style="font-family:宋体">.8。
另外也可EJ,N..,qj,从20pan style="font-family:宋体">年开始,.1ava版本发布很快,这是因为Oracle(2009年收购了Sun公司pan style="font-family:宋体">每隔半年将会发布一个本。但根据调查,Java 8还是当前的主流应用版本,有60~/6以上用户在使用这个版本,而Java 9及以上版本的用户可能还不到pan style="font-family:宋体">%。因此,本书将以.Java 8为基准介绍Java的相关内容。
pan style="font-family:宋体">.pan style="font-family:宋体">.2; E,JB
在.1ava的发展过程中,一由B(Enterl击"ise?Java氐a曲的重要不得不提。EJB是Java EE的核心规范,EJB是开发和配置基于组件的分布式商务应用程序的一种组件架构,用EJB开发的应用程序是可伸缩的、事务的、多用户的。这些应用程序只需要编写一次,可以在EJB规范的任何服务器上部署。简单地说,借助于Java的台优势,遵循EJB规范的应用能够应用EJB部署在任台上’。
在.1ava 2版本中,正式发布了重量级的应用规范EJB 2.0,并且围绕着EJB提供了许多组件标准规范。在2004年发布的Java 5.0中,EJB发布了3.0,这个版本也成为了EJB的终版本。
尽管EJB 2.0提出了许多且的理念,并且也得到了较为广泛的应用,但EJB 2.0还是备受诟病,主要的原因是其过于复杂,学也比较陡。伴随着Spr-ing框架结构的出现,EJB逐渐走向衰落。尽管EJB 3.0吸收了Spring框架的一些特点,比如基于注解的声明、分离出JPA等,但为时己晚,再加上Sun公司被收购的影响,EJB未能再走向辉煌。在当前主流的企业以及互联网开发框架中,已经很少采用EJB。
pan style="font-family:宋体">。pan style="font-family:宋体">.3; K与JRE
K(Java Development Kit,.1ava开发环境)是Java开发工具。K是整个Java的核心括JRE(Java Runtime‘Environment,Java运行环境)、Java工具和Java核心类库(Java API)。
括JavaAPI类库中的一部分和Java虚拟机,是支持Java程序运行的标准环境。.IDK是开发环境,眦是运行环境,因此写Java程序的时候需要K,运行Java程序的时候需要JRE。由于K里面已含了舭,因此只要安装了K,可以编写Java程序,也可以正常运行Java程序。但由于KJava程序无须安装K,只需要安装JRE即可。
pan style="font-family:宋体">.pan style="font-family:宋体">.4; JVM
JVM(.Java Virtual Machine,Java虚拟机)是一种用于计算设备的规范,它是一个虚拟出来的计算机,是通过在实际的计算机上仿真模拟各种计算能来实现的。
Java语言编写的程序之所以能台,是因为JVM隔离了计算机硬件以及操作系统的差别,使得Java代码一次编译可以在不同硬台、操作系统上无差别运行。
计算机语言通常划分为编译型语言和解释型语言。编译型语言通过编译直接生成目标机器的执行码,可以直接在目标机器上执行;解释型语言通常不需要编译,在目标机器上执行时通过该语言的翻译工具将代码翻译为机器码执行。通常来讲,解释型语言的运行效率要低于编译型语言。编译型语言的代表是C语言,解释型语言的代表是Basic以及当前流行的Python等脚本语言。但Java语言是一个特例,很难将其归类为纯粹的编译型或解释型语言,它兼具这二者的特点:首先,Java代码需要编译成为JVM执行........


