毫无疑问,Java 是这些年来最流行的编程语言之一。它无处不在一计算机、 手机、网站以及各种嵌入式设备中都存在着大量的Java 应用程序,而其中应用最为广泛的应该就是Java EE Web应用程序(以及安卓应用程序,不过本书的主题是Java EE开发)。通过使用Java EE平台中的各种组件,我们可以轻松构建出稳定而功能丰富的企业级Web应用程序。

随着Spring的出现,Java 开发更是变得简洁和轻松。Spring 是一个一站式的开发框架,它通过自身实现和第三方集成两种方式提供了Java企业应用程序表现层、业务层、持久层等相关技术。而它的几个特性——依赖注入(D)、反转控制(IoC)和面向切面编程(AOP),相信大家更是应该耳熟能详了。

本书将对Spring框架的这些特性进行深入的讲解。另外,本书还将讲解如何使用Spring Security保护自己的应用程序。在开发过程中的另一个重要技术就是如何存储数据了,在这方面对象关系映射(O/RM)得到了充分的发展,涌现出了一大批优秀的框架(Hibernate、iBatis、 Toplink 等),而Hibernate更是其中的佼佼者。随后又出现了统-的规范JPA, 又再次促进了对象关系映射的发展。而对于开发者来说,这也简化了大家的学习曲线,我们只需要掌握JPA规范就可以轻松地在各种不同实现之间切换。

无论是Java EE开发,还是Spring和JPA,它们都拥有丰富的内容,任意一项其实都可以拿出来单独通过一本书来讲解,而在这里本书对这些内容进行了巧妙的组合,既对开发中经常使用的内容进行了详细的讲解,也保证了内容的清晰。每章除了自已独有的样例之外,本书还使用了一个贯穿全书的样例,通过不断对它进行改进来演示真实的开发过程。

由于篇幅限制小编,小编只在这里给大家展示目录及部分内容,有需要完整文档的程序猿(媛)可以关注文末公众号获取

第I部分:创建企业级应用程序

  • 第1章介绍Java EE平台
  • 第2章使用Web容器
  • 第3章创建第一个Servlet
  • 第4章使用JSP显示页面内容
  • 第5章使用会话维持状态
  • 第6章在JSP中使用表达式语言
  • 第7章使用Java标准标签库
  • 第8章编写自定义标签和函数库
  • 第9章使用过滤器改进应用程序
  • 第10章在应用程序中使用WebSocket进行交互
  • 第11章使用日志监控应用程序

本部分将对Servlet、过滤器、监听器和JavaServer Pages(JSP)进行讲解。本部分首先讲解Servlet如何响应HTTP请求,以及过滤器如何协助它完成对请求的处理。还将讲解如何使用JSP轻松创建出强大的用户界面,以及如何通过结合使用JSP标记和全新的ExpressionLanguage 3.0,创建出不含Java代码的视图,这些视图可以由不具有Java知识的UI开发者进行维护。本部分还将讲解HTTP会话,以及如何使用它们创建出丰富的用户体验(可以跨越应用程序中的多个页面)。另外还会对一门全新的技术WebSockets进行讲解,通过它我们可以创建出更加丰富、更具有交互性的用户界面,因为它将在应用程序和客户端(例如浏览器)之间提供全双工的双向通信。最后,本部分将讲解应用程序日志的最佳实践和技术,当你创建了一个包含大量代码的复杂应用程序时,日志的使用是非常重要的。

第II部分:添加Spring Framwork

  • 第12章介绍Spring Framework
  • 第13章使用控制器替代Servlet
  • 第14章使用服务和仓库支持控制器
  • 第15章使用Spring Framework i18n国际化应用程序
  • 第16章使用JSR 349、Spring Framework和Hibernate Validator执行Bean验证
  • 第17章创建RESTfulI和SOAP Web服务
  • 第18章使用消息传送和群集实现灵活性和可靠性

从第II部分开始,我们将开始使用Spring Framework和Spring MVC.该部分包含的内容有:依赖注入(DI)、反转控制(IoC)和面向切面编程(AOP)。我们将使用XML和基于注解的配置搭建高级Spring Framework 项目,还将使用Spring工具实现bean验证和国际化。我们将使用Spring MVC控制器和Spring Web Services创建出RESful 和SOAP Web服务,还将学习如何使用SpringFramework内建的消息传送系统。最终我们将学习高级消息队列协议(AMQP),并学习如何配置和使用RabbitMQ。

第III部分:使用JPA和Hibernate ORM持久化数据

  • 第19章介绍Java Persistence API和Hibernate ORM
  • 第20章使用JPA注解将实体映射到表
  • 第21章在Spring Framework仓库中使用JPA
  • 第22章使用Spring Data JPA消除
  • 公式化的仓库
  • 第23章使用JPA和Hibernate Search搜索数据
  • 第24章创建高级映射和自定义数据类型

第I部分将专注于数据持久化和使用不同的方式将对象存储在数据库中。在介绍了使用原生JDBC持久化实体的一- 些基本问题之后,该部分将开始讲解对象关系映射(O/RM)和Hibernate ORM及其API。接下来将讲解Java PersistenceAPI,该API抽象出了一些公共API,不管底层使用的是哪种O/RM实现,我们都可以编写相同的代码。然后讲解了Spring Data,以及它如何帮助在不用编写任何持久化代码的情况下,创建持久化应用程序。最后讲解了几种搜索持久化数据的不同方法,以及如何结合使用Hibernate Search和Apache Lucene作为潜在的全文搜索工具。

第IV部分:使用Spring Security保护应用程序

  • 第25章介绍Spring Security
  • 第26章使用Spring Security验证用户
  • 第27章使用授权标签和注解
  • 第28章使用OAuth保护RESTful Web服务

本书的最后一部分介绍了 认证和授权的概念,并展示了同时可用于这两种目的的几种技术。然后讲解了如何在Spring Framework应用程序中集成Spring Securityo 最后讲解了如何使用OAuth1.0a和OAuth2.0保护Web服务,以及如何创建自定义的访问令牌类型,对OAuth2.0实现进行增强。

由于篇幅限制小编,pdf文档的详解资料太全面,细节内容实在太多啦,所以只把部分知识点截图出来粗略的介绍,每个小节点里面都有更细化的内容!不会只有大纲和目录,有需要的程序猿(媛)可以关注下方公众号获取

腾讯大牛半年心血高级编程PDF,帮你轻松构建企业级Web应用的更多相关文章

  1. WebGL高级编程:开发Web3D图形 PDF(中文版带书签)

    WebGL高级编程:开发Web3D图形 目录 WebGL简介11.1 WebGL基础11.2 浏览器3D图形吸引人的原因21.3 设计一个图形API31.3.1 即时模式API31.3.2 保留模式A ...

  2. 什么才是Python的高级编程?大牛总结,绝对让你受益匪浅

    很多刚入门或者还在了解的小伙伴们都会遇到迷茫期吧,就是学完这些基础,函数,字典啥的,好像也做不了什么东西,其实你基础学的扎实的话,是能做很多的事的,学完基础也不要迷茫,因为每门语言都是博大精深的,不是 ...

  3. Qt高级编程 高清PDF+源|网盘下载地址附提取码|

    书籍作者:Mark Summerfield(马克 . 萨默菲尔德)(英)   书籍译者:闫锋欣内容简介:本书是一本阐述Qt高级编程技术的书籍.本书以工程实践为主旨,是对Qt现有的700多个类和上百万字 ...

  4. UNIX环境高级编程笔记之文件I/O

    一.总结 在写之前,先唠几句,<UNIX环境高级编程>,简称APUE,这本书简直是本神书,像我这种小白,基本上每看完一章都是“哇”这种很吃惊的表情.其实大概三年前,那会大三,我就买了这本书 ...

  5. python高级编程之选择好名称:完

    由于时间关系,python高级编程不在放在这边进行学习了,如果需要的朋友可以看下面的网盘进行下载 # # -*- coding: utf-8 -*- # # python:2.x # __author ...

  6. 趣学Python编程PDF高清完整版免费下载|百度网盘

    百度网盘:趣学Python编程PDF高清完整版免费下载 提取码:ts47 内容简介 python是一款解释型.面向对象.动态数据类型的高级程序设计语言.python语法简捷而清晰,具有丰富和强大的类库 ...

  7. 读《C#高级编程》第1章问题

    读<C#高级编程>第1章 .Net机构体系笔记 网红的话:爸爸说我将来会是一个牛逼的程序员,因为我有一个梦,虽然脑壳笨但是做事情很能坚持. 本章主要是了解.Net的结构,都是一些概念,并没 ...

  8. MVC高级编程+C#高级编程

    本人今年的目标是学习MVC高级编程和C#高级编程,把自己的基础打的扎实,本文中值是一个开到,定期会在上面记录学习的技术点和心得就,加油吧!!!!!

  9. 《C#高级编程》读书笔记

    <C#高级编程>读书笔记 C#类型的取值范围 名称 CTS类型 说明 范围 sbyte System.SByte 8位有符号的整数 -128~127(−27−27~27−127−1) sh ...

随机推荐

  1. 【FZYZOJ】数论课堂 题解(约数个数定理)

    前言:想了两个小时orz,最后才想到要用约数个数定理…… ------------- 题目大意: 给定$n,q,A[1],A[2],A[3]$ 现有$A[i]=(A[i-1]+A[i-2]+A[i-3 ...

  2. C++STL算法

    1.不变序列算法 不会修改算法所作用的容器或对象 适用于顺序容器和关联容器,时间复杂度为O(n). 2.变值算法 会修改源区间或目标区间元素的值,值被修改的那个区间,不可属于关联容器. 3.删除算法 ...

  3. 一个Python爬虫工程师学习养成记

    大数据的时代,网络爬虫已经成为了获取数据的一个重要手段. 但要学习好爬虫并没有那么简单.首先知识点和方向实在是太多了,它关系到了计算机网络.编程基础.前端开发.后端开发.App 开发与逆向.网络安全. ...

  4. JS 模仿京东键盘输入内容

    css代码 .search { width: 300px; height: 80px; margin: 0 auto; position: relative; } .con { display: no ...

  5. 【av68676164(p54)】段式和段页式虚拟存储

    段式存储管理 进程分段 把进程按逻辑意义划分为多个段,每段有段名,长度不定,进程由多段组成 例:一个具有代码段.数据段和堆栈段的进程 段式内存管理系统的内存分配 以段为的单位装入,每段分配连续的内存 ...

  6. Docker 启动 Nginx

    Docker 启动 Nginx 拉取镜像 docker pull nginx:1.17.9 启动步骤 # 创建 nginx 目录 mkdir -p /usr/local/nginx && ...

  7. JS学习第四天

    循环语句 while(){ }: while :先判断再执行,如果while的条件结果为false,那么执行语句块中代码一句都不走 do(){ }while; do   while:先执行代码块中的语 ...

  8. C#LeetCode刷题之#414-第三大的数(Third Maximum Number)

    问题 该文章的最新版本已迁移至个人博客[比特飞],单击链接 https://www.byteflying.com/archives/3710 访问. 给定一个非空数组,返回此数组中第三大的数.如果不存 ...

  9. 使用 VMware Workstation Pro让 PC 提供云桌面服务——学习笔记(三)

    目标 当在前面两篇博客后,我们已经创建了一个能当服务器的虚拟机,这时我们需要通过复制虚拟机来让创建更多虚拟机 操作步骤 1.创建克隆 这里主要是VMware软件的操作 虚拟机->管理->克 ...

  10. golang 整型

    目录 前言 整型 1.分类 2.类型 3.类型补充 4.补充: 跳转 前言 不做文字的搬运工,多做灵感性记录 这是平时学习总结的地方,用做知识库 平时看到其他文章的相关知识,也会增加到这里 随着学习深 ...