本书基于最新的Java EE 7规范对Java EE的基础知识和应用开发技术进行系统讲解。书中主要内容分为五篇:入门篇对Java EE基本的介绍。第一篇介绍了Java EE的概念和Java语言基础以及实际开发中涉及的各种基础技术,包括SQL语言与MySQL、XML、HTML、CSS、JavaScript、Servlet、JSP等,可使读者全面认识Java EE以及各种基础技术。第二篇以Java EE企业应用的表现层、数据持久化层和业务逻辑层的开发为主线,重点讲解实际开发中涉及的各种框架技术,包括Struts 2、Hibernate、Spring等,使读者掌握开发完整Java EE企业应用所用到的框架技能。第三篇讲解了快速开发平台的概念,并以TDFY快速开发平台为例,讲解了该平台的功能、设计思想、技术选型、安装部署以及使用步骤,同时还讲解了该平台中常用组件的使用以及手机端的基础接口知识,使读者掌握TDFY平台开发技巧,从而能够快速开发出企业级应用。第四篇以一个基于TDFY快速开发平台的公共资源交易系统为例,讲解了该项目从需求分析、系统设计、功能设计、详细设计到最后代码编程的整个过程,并以其中一个场地安排模块为例,详细讲解了TDFY快速开发平台在实际项目中的使用。本书配套资源有:PPT、源代码、习题解答等。
1. 本书基于最新的Java EE 7规范,面向卓越软件工程师培养,讲解系统、内容饱满、由浅入深;2. 本书层次分明,结构清晰,共分为5篇,从基础到应用,再到开发、实战;3.本书中提供了较有价值的实际商业案例,有助于读者积累项目经验,提高开发能力;4.本书配套资源有:PPT、源代码、习题解答等。
张军朝,太原理工大学 教师。1995年10月--1999年5月,在山西天元电子科技有限公司工作,历任程序员、项目经理、产品经营部经理;1999年6月--2008年8月,在山西太原天地方圆电子科技有限公司工作,历任软件开发部经理、工控监控事业部经理、公司技术副经理、公司经营副经理、公司总经理;2013年3月进入太原理工大学计算机科学与技术学院工作。从事方向:嵌入式系统、物联网应用、工程应用软件。
目 录第0篇 入 门 篇 第0章 概述10.1 Java EE是什么10.2 Java EE发展史10.3 Java EE到底要解决什么问题20.4 Java EE组件、容器、服务器20.4.1 组件(Component)20.4.2 容器(Container)20.4.3 服务器(Server)30.4.4 组件、容器、服务器三者的功能30.4.5 组件体系结构30.5 Java EE主要技术40.5.1 JSP,Servlet40.5.2 EJB(Enterprise JavaBean)50.5.3 Container(容器)50.5.4 RMI60.5.5 JMS60.5.6 JTA70.5.7 JAAS70.5.8 Connector7 第1篇 基 础 篇 第1章 CoreJava81.1 Java简介与使用81.1.1 JDK81.1.2 设置Java开发环境91.1.3 为什么发明Java91.1.4 Java虚拟机的特征91.1.5 垃圾回收集的概念101.1.6 Java平台代码安全实现策略111.1.7 定义类、包、applets和应用程序111.2 标识、关键字、类型131.2.1 注释131.2.2 分号、块和空格141.2.3 标识符141.2.4 关键字141.2.5 基本类型和引用类型151.2.6 boolean类型151.2.7 文本数据类型161.2.8 整数类型171.2.9 浮点类型181.2.10 变量的声明和赋值191.2.11 推荐命名规则191.2.12 创建类191.2.13 创建实例211.3 表达式和程序控制211.3.1 局部变量211.3.2 实例变量221.3.3 操作符241.3.4 类型转换271.3.5 条件语句281.3.6 循环语句291.3.7 循环语句中流程跳转301.4 数组311.4.1 数组变量的声明311.4.2 初始化321.4.3 多维数组331.4.4 数组的边界331.4.5 数组的复制341.5 高级语言特性341.5.1 OOP中的基本概念341.5.2 类和对象351.5.3 定义方法的形式及参数传递351.5.4 封装361.5.5 方法重载371.5.6 创建和初始化对象371.5.7 构造方法371.5.8 继承391.5.9 方法覆盖391.5.10 this和super关键字401.5.11 多态及对象类型转换431.5.12 static修饰符441.5.13 final修饰符451.5.14 接口471.5.15 访问控制481.6 集合531.6.1 Collection和Iterator接口531.6.2 Set、List、Map集合541.6.3 反射机制591.7 异常611.7.1 异常的基本概念611.7.2 try...catch语句621.7.3 finally语句621.7.4 异常调用栈641.7.5 异常层级关系641.7.6 异常声明和处理651.7.7 断言671.8 线程681.8.1 线程概念681.8.2 线程的组成部分681.8.3 线程的创建和启动681.8.4 线程状态701.8.5 线程调度711.8.6 线程的同步721.8.7 线程的通信731.8.8 线程死锁、线程让步751.8.9 调整线程优先级761.9 IO流和文件流761.9.1 流的概念761.9.2 字节输入流和输出流771.9.3 输入流和输出流层级结构781.9.4 字符输入/输出流791.9.5 文件流801.9.6 对象的序列化和反序列化821.10 网络编程841.10.1 网络相关概念841.10.2 基于TCP的Socket编程步骤851.10.3 基于UDP的Socket编程步骤87习题89第2章 Java新特性932.1 Jdk1.5新特性932.1.1 自动装箱/拆箱932.1.2 增强for循环962.1.3 类型安全枚举962.1.4 可变长参数992.1.5 静态导入1002.1.6 格式化输出1002.1.7 泛型1012.1.8 Annotation1032.2 JDK1.6新特性1062.3 JDK7新特性1082.4 JDK8新特性1102.4.1 接口的默认方法1102.4.2 Lambda 表达式1112.4.3 函数式接口1122.4.4 方法与构造函数引用1122.4.5 访问局部变量1132.4.6 访问对象字段与静态变量1132.4.7 访问接口的默认方法1142.4.8 Date API1162.4.9 多重Annotation 注解118习题119第3章 SQL+MySQL1203.1 SQL概述1203.2 MySQL122习题137第4章 XML1384.1 标记语言1384.2 XML语法规则1394.3 DTD/Schema1434.3.1 DTD/Schema的由来1434.3.2 DTD中的定义规则1434.3.3 文档类型定义1464.3.4 Schema1474.4 JAXP解析XML148习题155第5章 HTML/CSS+Bootstrap1565.1 HTML1565.1.1 HTML基础1565.1.2 几个重要的标记1585.2 CSS1685.2.1 CSS定义1685.2.2 CSS选择器1685.2.3 样式的继承1725.2.4 样式的优先级1725.2.5 关键属性1735.2.6 块标记和行内标记1745.2.7 常见的属性1745.3 Bootstrap179习题184第6章 JavaScript+AJAX1856.1 JavaScript1856.1.1 JavaScript相关概念1856.1.2 JavaScript的基本语法1876.1.3 JavaScript中常见内置对象1926.1.4 DOM1986.1.5 BOM2036.2 AJAX2086.2.1 AJAX定义2086.2.2 AJAX编程2096.2.3 XmlHttpRequest对象的重要 属性2116.2.4 缓存问题2116.2.5 用户注册案例2116.2.6 AJAX的优点和编码问题2166.2.7 级联下拉列表案例2176.3 JSON2176.4 jQuery2186.4.1 jQuery的定义2186.4.2 jQuery使用2186.4.3 jQuery DOM操作2196.4.4 jQuery事件处理2206.4.5 jQuery操作数组的方法2206.4.6 jQuery对AJAX的支持221习题222第7章 Servlet2237.1 Servlet原理2237.1.1 Servlet相关概念2237.1.2 Servlet开发流程2247.1.3 Servlet Web应用的流程2247.1.4 Servlet通信2267.2 Servlet的生命周期2307.3 服务器内部和外部跳转2327.3.1 服务器内部跳转2327.3.2 服务器外部跳转2327.4 Session、Cookie、URL重写2337.4.1 Session2337.4.2 Cookie2357.4.3 URL重写2367.5 ServletConfig与ServletContext2397.6 Filter(Servlet过滤器)2427.7 Listener(Servlet监听器)244习题249第8章 JSP2508.1 JSP相关概念2508.2 JSP的使用2528.2.1 第一个JSP2528.2.2 JSP脚本元素2538.2.3 JSP中的注释2548.2.4 动作元素2568.2.5 JSP中默认的内置对象2578.2.6 JSP模型2588.2.7 JavaBean2598.2.8 EL表达式2618.2.9 JSTL264习题267 第2篇 框 架 篇 第9章 Struts22699.1 Struts2概述2699.2 Struts2工作原理2709.3 构件基于Struts2的应用2739.4 第一个Struts2应用程序276习题278第10章 持久层框架技术27910.1 JDBC27910.1.1