毫无疑问,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. python2.1 if-else条件语句:

    #案例:存款大于100万,买宝马:小于20万自行车! cunkuan=10#if判断条件,else:不满足if执行其他命令if cunkuan>100: print("可以买宝马,好开 ...

  2. 网站favicon.ico 图标

    favicon.ico一般用于作为缩略的网站图标,它显示在浏览器的地址栏或者标签上.目前主要的浏览器都支持favicon.ico图标. 一.制作favicon图标 1.把图标切成png图片. 2.把p ...

  3. Pytorch_第八篇_深度学习 (DeepLearning) 基础 [4]---欠拟合、过拟合与正则化

    深度学习 (DeepLearning) 基础 [4]---欠拟合.过拟合与正则化 Introduce 在上一篇"深度学习 (DeepLearning) 基础 [3]---梯度下降法" ...

  4. Vue 父子组件之间的互相调用方法

    第一种方法 直接在子组件中通过this.$parent.event来调用父组件的方法 父组件 <template> <div> <child></child& ...

  5. CentOS7安装MinIO教程,并在C#客户端WPF中实现监控上传进度

    MinIO的详细介绍可以参考官网(https://min.io/product/overview). 简单来说它是一个实现了AWS S3标准的100%开源的,可商用的( Apache V2 licen ...

  6. C#LeetCode刷题之#190-颠倒二进制位(Reverse Bits)

    问题 该文章的最新版本已迁移至个人博客[比特飞],单击链接 https://www.byteflying.com/archives/4050 访问. 颠倒给定的 32 位无符号整数的二进制位. 输入: ...

  7. C#算法设计排序篇之03-直接插入排序(附带动画演示程序)

    直接插入排序(Straight Insertion Sort) 该文章的最新版本已迁移至个人博客[比特飞],单击链接 https://www.byteflying.com/archives/679 访 ...

  8. # c++运算符重载之 前置++, 后置++, 负号运算符, 类型转换函数, 以及输入输出运算符

    c++运算符重载之 前置++, 后置++, 负号运算符, 类型转换函数, 以及输入输出运算符 标签(空格分隔): c++ 前言 我在c++学习的过程中, 对这几个不太常见的运算符重载不太会写.出现了很 ...

  9. externaltrafficpolicy的有关问题说明

    环境描述 生产环境通过gitlab-running实现自动化发布业务,现需要收集客户端的真实ip,需要将externaltrafficpolicy改为lacal模式(原来是cluster模式),前天开 ...

  10. CSS动画基础知识

    CSS动画就是通过CSS (Cascading Style Sheet,层叠样式表)代码搭建的网页动画.它允许设计师和开发人员通过编辑网站的CSS代码来添加页面动画,从而轻松取代传统动画图片或flas ...