图书前言

前言

在移动互联时代,企业级应用的形式已从传统的Web应用转成了Web+App或小程序的形式。其中,Web端负责复杂业务逻辑的实现和操作,而App或小程序端则提供这些复杂逻辑的简化访问接口。可见,Web在企业级应用生态中依然占据着非常重要的位置。在众多Web开发技术中,Java Web技术以其稳定性、安全性、灵活性和强大的生态系统,成为构建高效、可靠和安全的企业级应用的首选,在大型企业级应用开发中更是有着不可替代的重要地位,而企业应用才是商业市场中价值最大的部分。虽然近几年声名鹊起的Python也能进行Web开发,但它的语言特点决定了它更适合做诸如数据分析和挖掘类的小精尖的工作,而并不适用于以复杂业务流程控制为主且要求稳定可靠的企业级应用工作。因此,Java Web技术依然是最值得学习的Web开发技术。本书从Java Web系统开发概述入手,以一个包含增加、修改、删除、查询和登录功能的具有MVC架构的新闻系统开发为主线,详细讲解了包含HTML、CSS、JavaScript、JavaBean、Servlet和JSP等在内的Java Web开发技术主要知识点的基本用法。

本书以新闻系统开发为主线,梳理了开发一个典型的MVC架构的信息系统所需要具备的基础知识,按知识点形成了写作框架。其中每一章的知识点均包含基本语法、基础应用以及综合案例三个部分。主要章的综合案例循序渐进地展示了新闻系统的页面设计、数据模型、请求响应及数据显示实现的全部过程。通过学习本书,读者可以掌握具有MVC架构的Java Web系统的开发过程。此外,本书还提供了Ajax、主流的Web开发框架、团队协同开发和AI助手应用等提升项目开发实战性的内容。本书既可以作为计算机相关专业各层次学生的教材,也可以作为Java Web应用开发者的参考教程。

全书共分为16章。第1章介绍了Java Web系统的起源、运行原理、开发流程和工具。第2~5章为静态网页开发篇,主要讲解了静态网页技术的知识及应用方法。其中,第2章讲解了应用Dreamweaver搭建静态Web页面开发环境的方法。第3章讲解了HTML的基本要素、常用标签、布局和表单。第4章讲述了CSS的基本语法、常见属性、应用形式以及Dreamweaver对CSS的支持。第5章讲解了JavaScript的基本语法、内置对象、文档对象模型和事件处理机制,并通过4个综合例子展示了JavaScript的开发过程。第6~11章为动态网页开发篇,主要讲解了以JavaBean、Servlet和JSP为代表的Java MVC框架的搭建及应用过程。其中,第6章讲解了在IntelliJ IDEA中应用JDK、Tomcat搭建Java Web系统开发环境的主要过程。第7章讲解了Java Web系统数据库编程环境的搭建过程,内容包含MySQL的下载、安装、基本使用,以及MySQL JDBC数据库驱动的安装和连接池的配置,同时也详细讲解了数据库编程的增加(Create)、查询(Retrieval)、更新(Update)和删除(Delete)4个核心操作的基本原理和实现过程。第8章讲解了使用JavaBean实现MVC框架中模型层的具体方法,包含数据访问类和操作类的创建和应用方法。第9章讲解了应用Servlet实现用户请求与响应的主要过程,内容涵盖如何使用Servlet进行数据的接收、传输和转发的过程,同时还讲解了Servlet过滤器的应用方法。第10章讲解了应用JSP显示数据的主要方法,内容涵盖如何在JSP中分别通过代码脚本和JSTL标签,接收从Servlet传输过来的数据并将其显示在页面中的方法。第11章讲解了在IDEA中对Web系统进行调试和部署的主要方法。第12~15章为Web开发高级应用篇,主要介绍一些主流或者先进的系统开发技术或者方法。其中,第12章讲解了利用Ajax实现页面数据局部刷新的功能,并通过两个综合实例详细展示了Ajax的应用方法。第13章讲解了如何使用Vue+Spring Boot+MyBatis的第三方框架组合来重构新闻发布系统。第14章讲解了如何使用Git来实现项目的团队协同开发。第15章则以通义灵码为例,讲解了AI代码助手在进行Java Web开发中的作用。第16章为全书总结。

本书具有以下特色。

(1) 遵照教育指导委员会最新信息管理与信息系统及相关专业的培养目标和培养方案,合理安排Java Web开发技术的知识体系,结合Java开发技术方向的先行课程和后续课程,组织相关知识点与内容。

(2) 与一般的Java Web开发教材相比较,本书知识点详细地涵盖了静态和动态开发的全过程,融会贯通了原生MVC框架下Java Web开发的主流技术,其中Web开发高级应用篇专门为提升开发实战性而设。理解并掌握本书的所有内容,并勤加练习,读者完全可以胜任Java Web系统的开发工作。

(3) 本书所有实例的代码均提供了详细的实现步骤,即使读者基础很弱,只要认真仔细地阅读,并按部就班地进行操作,也一定能成功运行所有代码。

(4) 本书是目前市面上少有的、系统性地使用新版本IntelliJ IDEA(版本号: 2023.03)作为Java Web开发工具的教材。2023.03版本IDEA与之前版本在操作上有较大的区别。目前网上的教程多为老版本的。因此,通过书中实例,可为IDEA爱好者提供一份新版本的使用教程。

(5) 本书内容融合了作者的部分科研成果,在内容中插入了作者对系统和信息技术应用的自我理解,不仅是简单的技术教程。

(6) 本书提供配套的教学大纲、教学课件、程序源码,并配套教材综合实例的500分钟的微课视频。读者可在清华大学出版社官方网站下载,或通过扫描封底刮刮卡注册后扫描书中二维码学习。

本书由唐明伟、朱翼、姚兴山和谭祥贵共同编写。其中,唐明伟编写了第1~12章和第16章,并对全文进行了校稿,朱翼编写了第13和15章的理论部分,姚兴山编写了第14章的理论部分,谭祥贵编写了第13~15章的所有源码。在编写过程中,参阅了万维网联盟、CSDN、甲骨文(Oracle)公司、阿里巴巴淘天集团、南京国睿信维软件有限公司等的教学科研成果,也吸取了国内外教材的精髓,对这些作者的贡献表示由衷的感谢。本书在出版过程中,得到了南京大学信息管理学院邓三鸿教授,蒋勋教授,阿里巴巴淘天集团高级专家骨来,南京国睿信维软件有限公司研发中心副总经理张东等专家的支持和帮助;还得到了清华大学出版社的大力支持,在此表示诚挚的感谢。

由于作者水平有限,书中难免有不妥和疏漏之处,恳请各位专家、同仁和读者不吝赐教和批评指正,并通过邮箱kyo622@gmail.com与作者讨论。

2024年8月于南京仙林