本书从有一定Web开发基础的编程人员的角度出发,深刻且通俗地讲解Java Web开发的核心技术。全书共12章,详细讲解了从 JDBC基础到DBUtils工具,从Filter到Servlet事件监听器,以及文件上传下载、EL表达式、JSTL标签、国际化等Java Web开发的各个方面的知识和技巧。本书加入了真实的电商项目,让编程人员切身感受真正的项目开发流程!本书使用深入浅出、通俗易懂的语言阐述教材中涉及的概念,并通过结合典型详实的Web应用案例、分析案例代码、解决常见问题等方式,可以帮助编程人员真正明白Web应用程序开发的全过程。
本书附有配套视频、源代码、习题、教学课件等资源,而且为了帮助编程人员更好地学习本书讲解的内容,还提供了在线答疑,希望得到更多读者的关注。
本书适合作为高等院校计算机相关专业程序设计或者Web项目开发的教材,是一本适合广大计算机编程爱好者的读物。
特色一:加入真实电商项目
本书加入了真实的电商项目,让学生切身感受真正的企业级项目开发流程!
特色二:经典案例细说知识点
我们花了很多时间和精力来专门设计符合实际开发的案例,每个案例都有详细的注释。案例做到了正好能将知识点讲解清楚,不增加任何多余的功能。
特色三:知识点对应企业需求
传智播客集合技术人员和讲师打造写书团队,深入研究当今企业对Java从业人员的实际需求,对应市场需求设计本书知识点。
特色四:由浅入深活学活用
语句描述简单精练。针对每个小节中的每个知识点都有需求分析,即为什么要讲解该知识点。知识点主要是通过案例来进行学习,每个案例后都配有详细的案例分析。让学生通过教材的学习,能做到对知识点的熟练掌握。
第1章 JDBC入门 1.1 JDBC概述 1.1.1 什么是JDBC 1.1.2 JDBC常用API 1.1.3 实现第一个JDBC程序 1.1.4 PreparedStatement 对象 1.1.5 CallableStatement对象 1.1.6 ResultSet对象 1.2案例—JDBC的基本操作 1.3 JDBC批处理 1.3.1Statement批处理 1.3.2PreparedStatement 批处理 1.4大数据处理 1.4.1处理CLOB数据 1.4.2处理BLOB数据 1.5本章小结 第2章 JDBC处理事务与数据库连接池 2.1 JDBC处理事务 2.2 数据库连接池 2.2.1 什么是数据库连接池 2.2.2 DataSource接口 2.2.3 DBCP数据源 2.2.4 C3P0数据源 2.3 本章小结 第3章 DBUtils工具 3.1 API介绍 3.1.1 DBUtils类 3.1.2 QueryRunner类 3.1.3 ResultSetHandler接口 3.2 ResultSetHandler实现类 3.2.1 ArrayHandler和ArrayListHandler 3.2.2 BeanHandler、BeanListHandler和BeanMapHandler 3.2.3 MapHandler和MapListHandler 3.2.4 ColumnListHandler 3.2.5 ScalarHandler 3.2.6 KeyedHandler 3.3 DBUtils实现增删改查 3.4 DBUtils处理事务 3.5 本章小结 第4章 Filter(过滤器) 4.1 Filter入门 4.1.1 什么是Filter 4.1.2 实现第一个Filter 程序 4.1.3 Filter映射 4.1.4 Filter链 4.1.5 FilterConfig接口 4.2 应用案例—Filter实现用户自动登录 4.3 Filter高级应用 4.3.1 装饰设计模式 4.3.2 Filter实现统一全站编码 4.3.3 Filter实现页面静态化 4.4 本章小结 第5章Servlet事件监听器 5.1 Servlet事件监听器概述 5.2 监听域对象的生命周期 5.2.1 ServletContextListener接口 5.2.2 HttpSessionListener接口 5.2.3 ServletRequestListener接口 5.2.4 阶段案例——监听域对象的生命周期 5.3 监听域对象中的属性变更 5.3.1 监听域对象属性变更的接口 5.3.2 阶段案例——监听域对象的属性变更 5.4 感知被HttpSession绑定的事件监听器 5.4.1 HttpSessionBindingListener接口 5.4.2 HttpSessionActivationListener接口 5.5 本章小结 第6章 文件上传与下载 6.1 如何实现文件上传 6.2 文件上传的相关API 6.2.1 FileItem接口 6.2.2 DiskFileItemFactory类 6.2.3 ServletFileUpload类 6.3 应用案例—文件上传 6.4 文件下载 6.4.1 文件下载原理 6.4.2 文件下载编码实现 6.5 本章小结 第7章 EL表达式 7.1 初识EL 7.2 EL语法 7.2.1 EL中的标识符 7.2.2 EL中的保留字 7.2.3 EL中的变量 7.2.4 EL中的常量 7.2.5 EL中的运算符 7.3 EL隐式对象 7.3.1 pageContext对象 7.3.2 Web域相关对象 7.3.3 param和paramValues对象 7.3.4 header和headerValues对象 7.3.5 Cookie对象 7.3.6 initParam对象 7.4 自定义EL函数 7.4.1 HTML注入 7.4.2 案例—自定义EL函数防止HTML注入 7.5 本章小结 第8章 JSTL(JSP标准标签库) 8.1 JSTL入门 8.1.1 什么是JSTL 8.1.2 安装和测试JSTL 8.2 JSTL中的Core标签库 8.2.1 <c:out>标签 8.2.2 <c:set>标签 8.2.3 <c:remove>标签 8.2.4 <c:catch>标签 8.2.5 <c:if>标签 8.2.6 <c:choose>标签 8.2.7 <c:forEach>标签 8.2.8 <c:forTokens>标签 8.2.9 <c:param>标签 8.2.10 <c:url>标签 8.2.11 <c:redirect>标签 8.3 JSTL中的Functions标签库 8.3.1 fn:toLowerCase函数与fn:toUpperCase函数 8.3.2 fn:trim函数 8.3.3 fn:escapeXml函数 8.3.4 fn:length函数 8.3.5 fn:split函数 8.3.6 fn:join函数 8.3.7 fn:indexOf函数 8.3.8 fn:contains函数 8.3.9 fn:containsIgnoreCase函数 8.3.10 fn:startsWith函数与fn:endsWith函数 8.3.11 fn:replace函数 8.3.12 fn:substring、fn:substringAfter与fn:substringBefore函数 8.4 本章小结 第9章 自定义标签 9.1 自定义标签入门 9.1.1 什么是自定义标签 9.1.2 自定义标签的开发步骤 9.2 传统标签 9.2.1 Tag接口 9.2.2 IterationTag接口 9.2.3 BodyTag接口 9.2.4 案例—实现一个传统自定义标签 9.3 简单标签 9.3.1 简单标签API 9.3.2 案例—实现一个自定义简单标签 9.3.3 控制是否执行标签体内容 9.3.4 控制是否执行JSP页面的内容 9.3.5 简单标签的属性 9.4 本章小结 第10章 国际化 10.1 什么是国际化 10.2 实现国际化的API 10.2.1 Locale 类 10.2.2 ResourceBundle类 10.2.3 DateFormat类 10.2.4 NumberFormat类 10.2.5 MessageFormat类 10.3 开发国际化的Web应用 10.3.1 获取Web应用中的本地信息 10.3.2 案例—开发国际化的Web应用 10.4 国际化标签库 10.4.1 设置全局信息的标签 10.4.2 信息显示标签 10.4.3 数字及日期格式化标签 10.5 本章小结 第11章 综合项目—网上书城(上) 11.1 项目概述 11.1.1 需求分析 11.1.2 功能结构 11.1.3 项目预览 11.2 数据库设计 11.2.1 E-R图设计 11.2.2 创建数据库和数据表 11.3 项目前期准备 11.4 用户注册和登录模块 11.4.1 用户注册 11.4.2 用户登录 11.5 购物车模块 11.5.1 模块概述 11.5.2 实现购物车的基本功能 11.5.3 实现订单的相关功能 11.6 图书信息查询模块 11.6.1 商品分类导航栏 11.6.2 搜索功能 11.6.3 公告板和本周热卖 11.7 本章小结 第12章 综合项目—网上书城(下) 12.1 后台管理系统概述 12.2 商品管理模块 12.2.1 商品管理模块简介 12.2.2 实现查询商品列表功能 12.2.3 实现添加商品信息功能 12.2.4 实现编辑商品信息功能 12.2.5 实现删除商品信息功能 12.3 销售榜单模块 12.4 订单管理模块 12.4.1 订单管理模块简介 12.4.2 实现查询订单列表功能 12.4.3 实现查看订单详情功能 12.4.4 实现删除订单功能 12.5 本章小结