腾讯大牛半年心血高级编程PDF,帮你轻松构建企业级Web应用
毫无疑问,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应用的更多相关文章
- WebGL高级编程:开发Web3D图形 PDF(中文版带书签)
WebGL高级编程:开发Web3D图形 目录 WebGL简介11.1 WebGL基础11.2 浏览器3D图形吸引人的原因21.3 设计一个图形API31.3.1 即时模式API31.3.2 保留模式A ...
- 什么才是Python的高级编程?大牛总结,绝对让你受益匪浅
很多刚入门或者还在了解的小伙伴们都会遇到迷茫期吧,就是学完这些基础,函数,字典啥的,好像也做不了什么东西,其实你基础学的扎实的话,是能做很多的事的,学完基础也不要迷茫,因为每门语言都是博大精深的,不是 ...
- Qt高级编程 高清PDF+源|网盘下载地址附提取码|
书籍作者:Mark Summerfield(马克 . 萨默菲尔德)(英) 书籍译者:闫锋欣内容简介:本书是一本阐述Qt高级编程技术的书籍.本书以工程实践为主旨,是对Qt现有的700多个类和上百万字 ...
- UNIX环境高级编程笔记之文件I/O
一.总结 在写之前,先唠几句,<UNIX环境高级编程>,简称APUE,这本书简直是本神书,像我这种小白,基本上每看完一章都是“哇”这种很吃惊的表情.其实大概三年前,那会大三,我就买了这本书 ...
- python高级编程之选择好名称:完
由于时间关系,python高级编程不在放在这边进行学习了,如果需要的朋友可以看下面的网盘进行下载 # # -*- coding: utf-8 -*- # # python:2.x # __author ...
- 趣学Python编程PDF高清完整版免费下载|百度网盘
百度网盘:趣学Python编程PDF高清完整版免费下载 提取码:ts47 内容简介 python是一款解释型.面向对象.动态数据类型的高级程序设计语言.python语法简捷而清晰,具有丰富和强大的类库 ...
- 读《C#高级编程》第1章问题
读<C#高级编程>第1章 .Net机构体系笔记 网红的话:爸爸说我将来会是一个牛逼的程序员,因为我有一个梦,虽然脑壳笨但是做事情很能坚持. 本章主要是了解.Net的结构,都是一些概念,并没 ...
- MVC高级编程+C#高级编程
本人今年的目标是学习MVC高级编程和C#高级编程,把自己的基础打的扎实,本文中值是一个开到,定期会在上面记录学习的技术点和心得就,加油吧!!!!!
- 《C#高级编程》读书笔记
<C#高级编程>读书笔记 C#类型的取值范围 名称 CTS类型 说明 范围 sbyte System.SByte 8位有符号的整数 -128~127(−27−27~27−127−1) sh ...
随机推荐
- Maven知识记录(一)初识Maven私服
Maven知识记录(一)初识Maven私服 什么是maven私服 私服即私有的仓库.maven把存放文件的地方叫做仓库,我们可以理解成我门家中的储物间.而maven把存放文件的具体位置叫做坐标.我们项 ...
- day3. 六大标准数据类型的类型转换
一.强制类型转换Number 1.int 强制转换成整型 var1 = 13 var2 = 13.789 var3 = True var4 = 5-7j var5 = "" va ...
- PHP+Redis实现高并发下商品超卖问题
对于一些有一定用户量的电商网站,如果只是单纯的使用关系型数据库(如MySQL.Oracle)来做抢购,对数据库的压力是非常大的,而且如果不使用好数据库的锁机制,还会导致商品.优惠券超卖的问题.我所在的 ...
- 曲线生成与求交—Bezier曲线
Bezier曲线生成 法国工程师Pierre Bezier在雷诺公司使用该方法来设计汽车.一条Bezier曲线可以拟合任何数目的控制点. 公式 设\(n+1\)个控制点\(P_0,P_1--P_n\) ...
- [leetcode/lintcode 题解] 前序遍历和中序遍历树构造二叉树
[题目描述] 根据前序遍历和中序遍历树构造二叉树. 在线评测地址: https://www.jiuzhang.com/solution/construct-binary-tree-from-preor ...
- leetcode刷题笔记-1. 两数之和(java实现)
题目描述 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标. 你可以假设每种输入只会对应一个答案.但是,数组中同一个元素不能使 ...
- 2020-04-13:怎么在日志里排查错误,该用哪些Linux命令
能通过less命令打开文件,通过Shift+G到达文件底部,再通过?+关键字的方式来根据关键来搜索信息. 能通过grep的方式查关键字,具体用法是, grep 关键字 文件名,如果要两次在结果里查找的 ...
- JavaScript 手写 setTimeout 及 同步调用和异步调用
demo let timeout = (sec, num) => { const now = new Date().getTime() // 获取进入方法时的时间 let flag = true ...
- Flutter 容器(7) - DecoratedBox
DecoratedBox: 装饰容器,在其子widget绘制前(或后)绘制一个装饰Decoration(如背景.边框.渐变等) import 'package:flutter/material.dar ...
- Linux下安装pgadmin,并外部访问
环境: Centos 7 .已经安装的postgresql11,具体安装可以查看https://www.cnblogs.com/whitebai/p/12122240.html 1.下载阿里的 rep ...