毫无疑问,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. IdentityServer4 (3) 授权码模式(Authorization Code)

    写在前面 1.源码(.Net Core 2.2) git地址:https://github.com/yizhaoxian/CoreIdentityServer4Demo.git 2.相关章节 2.1. ...

  2. QComboBox设置下拉item大小

    1.首先给ComboBox设置view: ui->comboBox->setView(new QListView()); 注意:这一句需要放在在所在界面的构造函数里,否则不生效. 2.给c ...

  3. Linux查询版本、查询端口

    lsb_release -a 查看当前Linux系统版本 netstat 检查端口 netstat 是一个命令行工具,可以提供有关网络连接的信息.要列出正在侦听的所有 TCP 或 UDP 端口,包括使 ...

  4. 2020-04-20:对Java接口代理模式的实现原理的理解?

    静态代理Java中的静态代理要求代理类(ProxySubject)和委托类(RealSubject)都实现同一个接口(Subject).静态代理中代理类在编译期就已经确定,而动态代理则是JVM运行时动 ...

  5. JS实现call,apply,bind函数

    实现之前的预备知识 ...用作展开 ...用作剩余参数 Object.create()的作用 原型链与构造函数 这些有时间补上吧 call函数实现 Function.prototype.myCall ...

  6. Mybatis-03-日志

    日志 1 日志工厂 如果一个数据库操作,出现了异常,需要排错,此时需要日志. 曾经:sout debug 现在:日志工厂 logImpl SLF4J/log4j(掌握)/log4j2 设置中可以设定日 ...

  7. 聊聊MySQL主从复制的几种复制方式

    目录 异步复制 多线程复制 增强半同步复制 异步复制 MySQL的复制默认是异步的,主从复制至少需要两个MYSQL服务,这些MySQL服务可以分布在不同的服务器上,也可以在同一台服务器上. MySQL ...

  8. NOIP真题索引

    NOIP真题索引 NOIP2019 Day 1 格雷码 括号树 树上的数 Day 2 Emiya 家今天的饭 划分 树的重心 NOIP2018 Day 1 铺设道路 货币系统 赛道修建 Day 2 旅 ...

  9. 使用css设置边框背景图片

    使用css的特有属性,给不同的盒子添加边框图片. 为什么会有这一场景呢.因为,UI给我们前端的边框图片可能未必适合我们当前的内容. 这里我们主要使用到的属性有: border-image-source ...

  10. 关于Redis的工作模式

    1.哨兵模式 在redis3.0以前的版本要实现集群一般是借助哨兵sentinel工具来监控master节点的状态,如果master节点异常,则会做主从切换,将某一台slave作为master. 缺点 ...