网站首页 软件下载 游戏下载 翻译软件 电子书下载 电影下载 电视剧下载 教程攻略
书名 | Java Web应用开发技术(Java EE8+Tomcat9第2版微课视频版新形态教材)/科学与技术丛书 |
分类 | |
作者 | |
出版社 | 清华大学出版社 |
下载 | ![]() |
简介 | 内容推荐 《Java Web应用开发技术(Java EE 8 +Tomcat 9)》(第2版?微课视频版)》基于Java EE 8规范,结合Tomcat 9 Web服务器,全面系统地讲解了Java Web开发技术。本书作者具有多年教学经验和项目开发经验,因此书中着重强调实用性技术,对于不常用技术只进行简单介绍。书中采用了大量的项目案例讲解相关复杂理论,并用企业级项目进行了项目实战演示,浅显易懂。 《Java Web应用开发技术(Java EE 8 +Tomcat 9)》(第2版?微课视频版)》共16章,第1章是Java EE技术背景介绍,第2~5章是Java EE的核心技术,第6~9章是Java EE的高级应用,第10、11章是客户端异步和Web服务器异步技术,第12章是Java Web企业项目实战,第13、14章是Java EE 8的特性介绍,第15章是比较冷门的JSF技术入门,第16章是JDBC访问数据库技术。 本书可作为高等院校相关专业的Java教材,也可作为培训机构教材,还可作为各种层次的Java学习者和工作者的参考书。 目录 第1章Java EE入门(视频讲解: 26分钟,3集) 1.1Java EE 8与Tomcat 9 1.1.1Java EE 8规范下载 1.1.2Java EE 8核心架构 1.1.3Tomcat 9下载与配置 1.2Eclipse集成Tomcat 1.3C/S与B/S 1.3.1C/S模式 1.3.2B/S模式 1.3.3HTTP协议 1.3.4HTML与JSP 1.4MVC架构与AJAX架构 1.4.1JSP与Servlet的定位 1.4.2MVC架构 1.4.3AJAX架构 1.5本章习题 第2章Servlet控制器(视频讲解: 200分钟,13集) 2.1Java Web项目 2.1.1Hello项目示例 2.1.2Java Web项目结构 2.1.3URL格式 2.2Servlet接口 2.2.1接口方法 2.2.2Servlet生命期 2.3Servlet配置 2.3.1@WebServlet 2.3.2URL模式 2.3.3Servlet加载 2.3.4初始化参数 2.3.5异步配置 2.4HttpServlet类 2.4.1GenericServlet总览 2.4.2案例: 初始化参数配置与读取 2.4.3HttpServlet分发请求 2.4.4案例: 用户登录 2.5ServletRequest接口 2.5.1接收请求参数 2.5.2属性值传递 2.6ServletResponse与RequestDispatcher接口 2.6.1转发与重定向 2.6.2回应字符流 2.6.3回应字节流 2.6.4动态输出文件 2.7Servlet异常管理 2.7.1ServletException 2.7.2IOException 2.7.3Exception处理 2.7.4错误页配置 2.8路径使用 2.8.1HttpServletRequest读取路径 2.8.2Web站点实际路径 2.8.3转发路径 2.8.4重定向路径 2.8.5静态资源路径 2.8.6表单提交路径 2.8.7脚本提交路径 2.8.8嵌入资源路径 2.8.9反射读取路径 2.9本章习题 第3章JSP视图(视频讲解: 109分钟,7集) 3.1JSP与Servlet关系 3.2JSP指令 3.2.1Page指令 3.2.2taglib指令 3.2.3include指令 3.3JSP中的Java元素 3.3.1Java脚本与表达式 3.3.2Java声明 3.3.3JSP中使用注释 3.4JSP的9个内置对象 3.4.1request与response对象 3.4.2pageContext对象 3.4.3session与application对象 3.5jsp:标准动作 3.5.1jsp:useBean 3.5.2jsp:setProperty与jsp:getProperty 3.5.3jsp:include 3.5.4jsp:forward 3.6本章习题 第4章EL表达式(视频讲解: 45分钟,3集) 4.1读取Bean对象属性 4.2隐式对象 4.3属性范围查找 4.4调用Bean的方法 4.5本章习题 第5章JSTL标签库(视频讲解: 69分钟,5集) 5.1自定义标签库 5.2核心标签库 5.2.1一般用途标签 5.2.2条件判断标签 5.2.3迭代标签c:forEach 5.2.4URL相关标签 5.3格式化标签库 5.3.1格式化数字、货币、百分比 5.3.2格式化日期和时间 5.4本章习题 第6章HTTP状态管理(视频讲解: 42分钟,3集) 6.1session 6.1.1客户端识别 6.1.2session的生命期 6.1.3session的数据存储 6.1.4URL重写 6.1.5session常见问题 6.2application与ServletContext 6.2.1读取全局配置参数 6.2.2全局变量 6.3cookie 6.3.1创建cookie 6.3.2cookie的生命期 6.3.3cookie使用限制 6.4本章习题 第7章过滤器(视频讲解: 50分钟,3集) 7.1Filter接口 7.2过滤器声明 7.3案例: 编码转换 7.4案例: 权限校验 7.5本章习题 第8章监听器(视频讲解: 51分钟,4集) 8.1监听器声明 8.2ServletContextListener 8.3HttpSessionListener 8.3.1在线用户数统计 8.3.2网络聊天室管理 8.4ServletRequestListener 8.5本章习题 第9章文件上传(视频讲解: 15分钟,1集) 9.1文件上传页面 9.2SmartUpload方案 9.3Commons方案 9.4Part方案 9.5本章习题 第10章AJAX与Applet(视频讲解: 102分钟,7集) 10.1XMLHttpRequest 10.2jQuery 10.3JSON 10.3.1JSON与XML 10.3.2each函数 10.3.3案例: 省市区三级联动 10.4案例: 旅游景点 10.4.1表设计 10.4.2页面设计 10.4.3脚本设计 10.4.4控制层设计 10.4.5服务层设计 10.4.6实体层设计 10.4.7持久层设计 10.4.8运行环境 10.5Applet 10.6本章习题 第11章服务器异步(视频讲解: 75分钟,6集) 11.1AsyncContext 11.2异步监听器 11.3案例: 12306抢票 11.4非阻塞IO 11.4.1NIO读数据 11.4.2NIO写数据 11.5本章习题 第12章网上书城项目实战(视频讲解: 172分钟,11集) 12.1项目结构与权限 12.2开发环境说明 12.3书城项目表结构设计 12.4项目需要哪些jar包 12.5配置web.xml 12.6log4j日志 12.7配置数据库连接 12.8权限设置 12.8.1注册用户鉴权 12.8.2管理员鉴权 12.8.3JSP访问权限 12.9共性代码抽取 12.9.1持久层提取 12.9.2视图层提取 12.10主页图书列表实现 12.11图书封面 12.12图书明细页实现 12.13用户管理 12.13.1用户登录 12.13.2用户退出 12.13.3用户注册 12.14购物车实现 12.14.1购物车设计 12.14.2显示购物车 12.14.3加入商品到购物车 12.14.4移除购物车中的商品 12.15用户付款 12.15.1结算 12.15.2付款 12.15.3付款异常处理 12.16新书上架 12.17查询用户购买记录 12.18中文乱码问题 12.19数据库连接池 第13章服务器推送(视频讲解: 33分钟,3集) 13.1Web Socket 13.1.1WebSocket对象 13.1.2Java E 序言 前言 本书自2020年出版以来,得到了广大读者的喜爱, 同时根据大家的建议,特进行改版,即新增了部分章节 ,同时修订了部分原有内容。 Java Web开发技术是整个Java平台最核心的技术 之一,也是开发Java企业级大型项目的必备知识技能。 学习本书前,需要掌握Java SE、HTML、JavaScript、 关系数据库等基础知识。掌握Java Web开发技术后,即 可在此基础上学习SSM框架等高级知识。 经常有人问: 到底是学习Python还是学习Java? 哪个更有前途?过几年,Java平台会不会被其他开发平 台代替? 要回答这些问题,就需要了解软件的应用市场和这 些开发语言的应用方向,应该可以非常明确地说: “ 软件最大的应用市场是企业应用,就是大中型企业买软 件,不论是国内还是国外,企业应用永远是第一大市场 。接下来的第二大市场可能是电子商务、政府或个人移 动应用,也可能是物联网嵌入式应用。” Python的主要应用是AI(Artificial Intelligence,人工智能)领域,C语言的定位是系统 级开发,Java的明确目标就是企业应用。这三个开发平 台定位不同,不是竞争者。应该说Java多年来在软件应 用开发中独占鳌头,和它的平台定位是密不可分的,而 且至少目前,没有看到Java的“挑战者”。在企业级开 发市场,Java一枝独秀,这种局面至少10年内看不出变 化趋势。因此可以肯定地说,学习Java EE技术,既不 落伍,也不会被淘汰,从事Java领域工作的每年就业人 数远远高于其他开发语言。 关于学习方法,我推荐采用图书与视频结合的学习 模式。因为图书与视频的表现力完全不同,各有优点。 另外,一定要多动手练习、多思考。掌握Java EE架构 思想,远比简单掌握基本应用更有意义! 配套资源 程序代码、教学课件(PPT)、教学大纲、电子 教案、习题答案等,扫描下方二维码或者到清华大学出 版社官方网站本书页面下载。 配套资源 微课视频(1100分钟,76集),扫描正文中各章 节相应位置的二维码观看。 限于编著者的水平和经验,加之时间比较仓促,书 中疏漏之处在所难免,敬请读者批评指正,联系邮箱见 配套资源。 肖海鹏2022年11月于北京 导语 《Java Web应用开发技术(Java EE 8 +Tomcat 9)》(第2版?微课视频版)》作者为51CTO金牌讲师,在Java方面多有多年的项目开发经验和教学经验,使得本书具有很强的实用性,书中会着重讲述实用性的技术,不常用技术只进行简单介绍。 书中采用了大量的项目案例来讲解相关复杂理论,并用企业级项目进行了项目实战演示,浅显易懂,有利于读者进行实际的项目开发。 本书提供程序代码和教学课件,同时,作者也录制了配套的教学视频发布在网络上,便于读者自学。 精彩页 第3章 CHAPTER 3 JSP视图 JSP与静态网页HTML对应,表示Java服务器页面。需要注意的是,它不是指运行在Web服务器的页面,而是在服务器端定义页面的样式,然后由Servlet容器解析成HTML后,回应给客户端浏览器显示。 Java EE 8中包含的JSP版本是2.3。 参见hello.jsp的代码,看一下JSP的页面组成,其基本组成就是Java代码+HTML+JS。 <%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%> <% String msg = (String)request.getAttribute("msg"); %> <%=msg%> 视频讲解 3.1JSP与Servlet关系 所有JSP页面的默认父类是org.apache.jasper.runtime.HttpJspBase,而HttpJspBase又继承了HttpServlet,因此说所有JSP页面的本质就是Servlet。它与自定义Servlet一样,由Servlet容器统一管理。 public abstract class HttpJspBase extends HttpServlet implements HttpJspPage {…} JSP容器就是Servlet容器,它提供了JSP的生命期管理、JSP运行期支持和Servlet组件管理。HTTP请求通过JSP容器发送给JSP页面,JSP容器管理JSP页面生命期,二次访问JSP分为如下几个阶段(见图31和图32)。 图31第一次访问JSP 图32第二次访问JSP (1) 翻译阶段: JSP容器校验JSP页面、标签文件、Java脚本等语法拼写,然后把JSP页面自动翻译成Java代码,如hello.jsp就会翻译成hello_jsp.java。翻译后的文件保存在Tomcat的work文件夹下(\work\Catalina\localhost\Hello\org\apache\jsp\main\hello_jsp.java),翻译后的代码如下: public final class hello_jsp extends org.apache.jasper.runtime.HttpJspBase implements org.apache.jasper.runtime.JspSourceDependent, org.apache.jasper.runtime.JspSourceImports {…} (2) 编译阶段: JSP容器把翻译好的Java文件,自动编译成class文件,如hello_jsp.java编译成hello_jsp.class。JSP页面的翻译与编译处理,在第一次访问JSP页面时进行。如果项目运行期间JSP页面没有变化,则第二次访问JSP页面无须再次翻译和编译。 (3) 执行阶段: JSP容器调用编译好的JSP组件,完成创建、初始化、服务、释放等操作,JSP组件的生命期管理与前面讲的Servlet生命期管理一致。JSP的运行结果为HTML,即返回给客户端浏览器的是HTML文本信息(见图33)。 图33JSP输出HTML 3.2JSP指令 3.2.1Page指令 每个JSP页面的头部必须使用Page指令声明当前页面特性。 Page指令定义了一系列依赖于JSP容器交互的属性信息(见表31)。 视频讲解 表31Page指令属性 属性描述 language指定当前页面使用的服务器脚本语言 <%@ page language="java" %> contentType设置HTTP的 ContentType 响应头,指明将发送到客户程序的文档的 MIME 类型 <%@ page contentType="text/html" %> pageEncoding设置当前JSP页面的编码格式 <%@ page pageEncoding="utf-8" %> import指明服务器脚本中使用的类所在包,与业务类中的import含义相同,如 <%@ page import="java.util.*, com.icss.biz.*" %> 默认情况下,servlet 导入 java.lang.*、javax.servlet.*、javax.servlet.jsp.*、javax.servlet.http.* 等包 buffer设置 out 变量(类型为JspWriter )使用的缓冲区大小 <%@ page buffer="none" %> <%@ pagebuffer="16Kb" %> autoFlush用来控制当缓冲区充满之后,是应该自动清空输出缓冲区(默认),还是在缓冲区溢出后抛出一个异常 <%@ pageautoFlush ="false" %> ${myUser.score+3} |
输出结果: 88.0。 霍普软件下载网电子书栏目提供海量电子书在线免费阅读及下载。
JavaBean有如下特点:
不能是非静态内部类。
必须拥有一个无参的构造器或者@Inject注解的构造器。
【示例314】
修改示例313的代码,首先在Java脚本中创建User对象,然后存储于request域对象中。
<%
User user = new User("tom");
user.setScore(85);
request.setAttribute("myUser", user);
%>
${myUser.score+3}
输出结果: 88.0。
如果没有设置scope="request",从page中找不到myUser,输出结果为3.0。
视频讲解
随便看
更新时间:2025/2/22 5:37:37